2013-01-21 39 views
0

我有以下代码:不调用CGContextFillPath(context)添加阴影;

CGContextSetShadowWithColor(context, CGSizeMake(0, 1.5), 
         2.0, [UIColor blackColor].CGColor); 

,并应用基于我的理解我不得不打电话CGContextFillPath阴影。有没有其他的方式来做到这一点,而无需调用填充路径

+2

将阴影应用于什么?如果没有什么可以绘制的话,它应该如何确定阴影的形状? – omz

回答

3

不需要。您必须使用笔划或路径方法在图形上下文中绘制某些内容以生成阴影。这里是来自Apple的文档。

如何阴影工作

阴影在石英是图形状态的一部分。您可以调用函数CGContextSetShadow的 ,传递图形上下文,偏移量 值和模糊值。在设置了阴影后,您绘制的任何对象的阴影都会以设备RGB颜色空间中具有1/3 alpha值的黑色绘制。换句话说,使用 将RGBA值设置为{0,0,0,1.0/3.0}来绘制阴影。

通过调用函数 CGContextSetShadowWithColor,传递图形上下文,偏移量 值,模糊值和CGColor对象,可以绘制彩色阴影。该数值为 提供的颜色取决于你想画的色彩空间。

如果保存图形状态调用CGContextSetShadow或 CGContextSetShadowWithColor之前,你也可以关闭恢复 图形状态阴影。您还可以通过将阴影颜色 设置为NULL来禁用阴影。