一、Graphics Context
Graphics Context是一个数据类型(CGContextRef),用于封装Quartz绘制图像到输出设备的信息。设备可以是PDF文件、bitmap或者显示器的窗口上。Graphics Context中的信息包括在Page中的图像的图形绘制参数和设备相关的表现形式。
Quartz中所有的对象都是绘制到一个Graphics Context中。
我们可以简单地给Quartz绘图序列指定不同的Graphics Context,就可将相同的图像绘制到不同的设备上.
二、图形状态
Quartz通过修改当前图形状态(current graphics state)来修改绘制操作的结果。图形状态包含用于绘制程序的参数。绘制程序根据这些绘图状态来决定如何渲染结果。例如,当你调用设置填充颜色的函数时,你将改变存储在当前绘图状态中的颜色值。
可使用函数CGContextSaveGState来保存图形状态,CGContextRestoreGState来还原图形状态。注意:并不是当前绘制环境的所有方面都是图形状态的元素。如,图形状态不包含当前路径(current path)。
三、裁剪
CGContextClip 一般裁剪
使用Quartz中的Path创建操作去绘制一个菱形边框,最后使用CGContextClip函数把当前Path内部作为保留区域,path外部裁减掉。
CGContextEOClip(context); 对于上下文的path用奇偶规则裁剪:就是被偶数条线包围的区域会被填充。
四、画图
CGContextStrokePath(context); 在context上画path。
网友评论