При поиске в Интернете около 4 часов не получил ответа, поэтому:
Как нарисовать тень на пути, имеющем прозрачность?
- (void)drawRect:(CGRect)rect
{
CGContextRef c = UIGraphicsGetCurrentContext();
CGContextSetLineWidth(c, 2);
CGContextSetStrokeColorWithColor(c, [[UIColor whiteColor] CGColor]);
CGContextSetShadowWithColor(c, CGSizeMake(0, 5), 5.0, [[UIColor blackColor]CGColor]);
CGContextSetFillColorWithColor(c, [[UIColor colorWithWhite:1.0 alpha:0.8] CGColor]);
// Sample Path
CGContextMoveToPoint(c, 20.0, 10.0);
CGContextAddLineToPoint(c, 100.0, 40.0);
CGContextAddLineToPoint(c, 40.0, 70.0);
CGContextClosePath(c);
CGContextDrawPath(c, kCGPathFillStroke);
}
Первое, что я замечаю, тень находится только вокруг штриха. Но пока проблема не в этом. Тень за контуром / прямоугольником все еще видна, что означает: цвет тени влияет на цвет заливки моего контура. Цвет заливки должен быть белым, а не серым. Как решить эту проблему?