Вы можете сделать часть текста с градиентной заливкой, используя код, который я предоставляю в этот ответ . Сначала проверьте пространство координат, потому что я описал это для iPhone, который имеет инвертированную ось Y по сравнению с обычными кварцевыми координатами Mac.
Текст сначала используется для создания обтравочного контура, а градиент рисуется в пределах этого пути.
Что касается внутренней тени, вы можете нарисовать ее после прорисовки градиента, используя CGContextSetShadowWithColor()
с соответствующим смещением вниз и черным цветом, а затем снова рисуя текст, используя только обводку текста. У Дина Уомбурна есть пример кода для аналогичной задачи в его ответе здесь .