0
他们说,有一个堆栈可以保存图形状态。那么,我不确定这个词是什么意思。 CGContextSaveGState是保存我制作的当前图形还是保存当前具有的图形设置,如颜色,线宽,字体大小等?当苹果谈到“图形状态”时,他们的意思是我创建的graphik还是它们的意思是我使用的设置?
他们说,有一个堆栈可以保存图形状态。那么,我不确定这个词是什么意思。 CGContextSaveGState是保存我制作的当前图形还是保存当前具有的图形设置,如颜色,线宽,字体大小等?当苹果谈到“图形状态”时,他们的意思是我创建的graphik还是它们的意思是我使用的设置?
CGContextSaveGState
documentation明确指出在状态下保存的内容。
每个图形上下文都维护着一堆图形状态。请注意,并非当前绘图环境的所有方面都是图形状态的元素。例如,当前路径不被视为图形状态的一部分,因此在调用CGContextSaveGState函数时不会保存。所保存的图形状态参数是:
- CTM(当前变换矩阵)
- 剪辑区域
- 图像插值质量
- 线宽
- 线加入
- 转角限制
- line cap
- line dash
- 平坦
- 应该抗混叠
- 再现意图
- 填充颜色空间
- 笔划颜色空间
- 填充颜色
- 笔划颜色
- α值
- 字体
- 字体尺寸
- 字符间距
- 文本绘制模式
- 阴影参数
- 图案相位
- 字体平滑参数
- 混合模式
所以,不,你已经完成了绘制不保存(尽管它也没有被清除)。相反,许多图形状态参数被保存。然后您可以通过拨打CGContextRestoreGState
来恢复到您保存的状态。