Core-Graphics Shadow Range? - PullRequest
       0

Core-Graphics Shadow Range?

2 голосов
/ 02 августа 2011

В Фотошопе мой дизайнер использовал настройку «Диапазон», чтобы внешний свет немного «заполнил».Вот снимок настроек, которые он использовал:

enter image description here

С диапазоном в Photoshop, установленным на 100%, вот вид:

enter image description here

Это похоже на мой рендеринг на iPhone с использованием этого кода (предположим, что градиентная заливка и обводка по кругу работают нормально, мы фокусируемся только на свечах):

CGContextAddPath(context, spectralImagePath);
CGContextSaveGState(context);
CGContextSetShadowWithColor(context, CGSizeMake(0.0, 0.0), 21.0, [[UIColor colorWithRed:65.0/255.0 green:79.0/255.0 blue:246.0/255.0 alpha:1.0] CGColor]);
CGContextSetBlendMode(context, kCGBlendModeScreen);
CGContextFillPath(context);
CGContextRestoreGState(context);

Но он должен выглядеть примерно так (с диапазоном, установленным в 50% в фотошопе):

enter image description here

Обратите внимание, что тень немного более плотная по краям круга.Есть идеи, если Core Graphics содержит свойство типа range?

1 Ответ

1 голос
/ 02 августа 2011

Я не знаю ни одного. В качестве альтернативы вы можете попробовать просто нарисовать один и тот же затененный путь несколько раз с помощью повторных вызовов CGContextFillPath.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...