1

情况

我通过CGContextAddLineToPoint和画了一条细线CGContextStrokePath。我通过添加了一个红色阴影CGContextSetShadowWithColor

期望的行为

无论我为模糊设置什么值,红色阴影都太弱了。我希望红色阴影更强。

笔记

带有红色阴影的白线放置在图像的顶部,而不是平面颜色,所以我不能使用平面颜色来伪造它。

此外,白线可以弯曲(我使用CGContextAddQuadCurveToPoint)。

我尝试了什么

玩弄CGContextSetLineWidth,我发现增加宽度会使红色阴影更加明显。然而,当时的白线太粗了。

然后,我尝试使用较大的线宽将绘图分成两部分,并带有阴影。当我尝试用 仅绘制阴影时[[UIColor clearColor] setStroke],根本没有绘制阴影。

然后我尝试只绘制阴影,[[UIColor colorWithRed:1 green:0 blue:0 alpha:0.1] setStroke]但在笔划上有一个 alpha 也会影响阴影的 alpha,所以阴影仍然太弱。

我尝试遵循iOS Core Graphics: Draw ONLY shadows of a CGPath但我得到了一个奇怪的效果,我的阴影不仅没有显示,而且线条从红色逐渐变为黑色。我不确定发生了什么。

帮助将不胜感激。

4

1 回答 1

0

I ended up following CGContextDrawRadialGradient For Non-Circular Glow. Essentially I redrew the line on top of itself multiple times until the glow looked strong enough. I also rasterized it in the hopes that the performance hit won't be too harsh.

于 2013-09-22T06:05:06.813 回答