在不调用CGContextFillPath(context)的情况下添加阴影;

时间:2013-01-21 22:06:09

标签: iphone ios objective-c ipad

我有以下代码:

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

并根据我的理解应用阴影我必须调用CGContextFillPath。如果没有调用填充路径,还有其他方法吗?

1 个答案:

答案 0 :(得分:3)

没有。您必须使用笔划或路径方法在图形上下文中绘制一些内容以生成阴影。这是Apple的文档。

  

阴影如何工作

     

Quartz中的阴影是图形状态的一部分。你打电话给   函数CGContextSetShadow,传递图形上下文,偏移量   值和模糊值。设置阴影后,绘制任何对象   有一个用黑色绘制的阴影,其中包含1/3的alpha值   设备RGB颜色空间。换句话说,使用绘制阴影   RGBA值设置为{0,0,0,1.0 / 3.0}。

     

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

     

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