博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CGContextSaveGState与CGContextRestoreGState的作用
阅读量:6575 次
发布时间:2019-06-24

本文共 852 字,大约阅读时间需要 2 分钟。

CGContextSaveGState与CGContextRestoreGState的作用

 

使用Quartz时涉及到一个图形上下文,其中图形上下文中包含一个保存过的图形状态堆栈。在Quartz创建图形上下文时,该堆栈是空的。函数的作用是将当前图形状态推入堆栈。之后,您对图形状态所做的修改会影响随后的描画操作,但不影响存储在堆栈中的拷贝。在修改完成后,您可以通过函数把堆栈顶部的状态弹出,返回到之前的图形状态。这种推入和弹出的方式是回到之前图形状态的快速方法,避免逐个撤消所有的状态修改;这也是将某些状态(比如裁剪路径)恢复到原有设置的唯一方式。

 
   UIGraphicsBeginImageContextWithOptions(targetRect.size, YES, 0.0);    CGContextRef context = UIGraphicsGetCurrentContext();       float myFillColor[] = {
1,0,0,1}; //red; CGContextSaveGState(context); CGContextSetRGBFillColor(context, 0,1,1,1); CGContextFillRect(context, targetRect); CGContextSetFillColor(context, myFillColor); CGContextFillEllipseInRect(context, targetRect); CGContextFillPath(context); CGContextRestoreGState(context); UIImage *uiImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext();

 

转载地址:http://ydgjo.baihongyu.com/

你可能感兴趣的文章
[解题报告]10041 - Vito's Family
查看>>
设计模式:桥接模式(Bridge Pattern)
查看>>
vue cli 解决跨域 线上 nginx 反向代理配置
查看>>
本地域名访问
查看>>
第九天作业
查看>>
CSS-文本垂直居中
查看>>
软件工程学习有感
查看>>
Java设计模式-享元模式
查看>>
第一篇 Windows 8 开发Windows Metro style app环境配置
查看>>
ORACLE REGEXP应用实例
查看>>
Windows 下的坐标系
查看>>
IHttpModule与IHttpHandler的区别整理
查看>>
4.2
查看>>
本地windows下新建kafka生产消费数据
查看>>
mysql待整理
查看>>
Amazon S3 API
查看>>
Autofac
查看>>
滑动侧边栏
查看>>
UIView layer 的对应关系
查看>>
新浪研发中心: Berkeley DB 使用经验总结
查看>>