博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Quart2D图形上下文
阅读量:6836 次
发布时间:2019-06-26

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

学习了下绘制文本图形后,下面学习图形上下文栈。

在Quart 2D绘制简单图形http://www.cnblogs.com/cuiyw/p/4401857.html时,如果绘制不一样属性的内容时,在渲染之前都会重新设置边框颜色、填充颜色等这些,有时可能会先绘制一个红色的线,再绘制蓝色的线,然后再绘制和第一条属性一样的线,如果按之前的方法可能每次绘制渲染都要重新设置,那样就会变的特别麻烦,要解决这个问题可以用图形上下文栈。

在获取图形上下文之后,通过 CGContextSaveGState(ctx);方法,把当前获取的上下文拷贝一份,保存一份最纯洁的图形上下文。

在画第二条线之前,使用CGContextRestoreGState(ctx);方法,还原开始的时候保存的那份最纯洁的图形上下文。
CGContextRef context=UIGraphicsGetCurrentContext();     CGContextMoveToPoint(context, 20, 100);     CGContextAddLineToPoint(context, 30, 200);     CGContextSetRGBStrokeColor(context, 1.0, 0, 1.0, 1.0);    //保存当前画布1的样式属性     CGContextSaveGState(context);     CGContextStrokePath(context);         CGContextMoveToPoint(context, 30, 100);     CGContextAddLineToPoint(context, 40, 200);     CGContextSetRGBStrokeColor(context, 1.0, 1.0, 1.0, 1.0);    //保存当前画布2的样式属性     CGContextSaveGState(context);     CGContextStrokePath(context);        // 恢复画布2属性到以前保存样式 若无则按最近一次设置的样式     CGContextRestoreGState(context);     CGContextMoveToPoint(context, 40, 100);     CGContextAddLineToPoint(context, 50, 200);     CGContextStrokePath(context);         // 恢复画布1属性到以前保存样式 若无则按最近一次设置的样式     CGContextRestoreGState(context);     CGContextMoveToPoint(context, 50, 100);     CGContextAddLineToPoint(context, 60, 200);     CGContextStrokePath(context);

运行结果:

 
你可能感兴趣的文章
Mac 配置环境变量
查看>>
为什么在Spring的配置里,最好不要配置xsd文件的版本号
查看>>
Mongoose vs mongodb native driver – what to prefer?
查看>>
在普通Java类里使用spring里注入的service、dao等
查看>>
appendChild append insertBefore prepend
查看>>
PHP7 学习笔记(八)JetBrains PhpStorm 2017.1 x64 MySQL数据库管理工具的使用
查看>>
Tomcat下HTTPS双向认证配置以及客户端调用案例
查看>>
[LeetCode] Max Stack 最大栈
查看>>
Linux 防火墙命令的操作命令CentOS
查看>>
Android5.1修改以太网MAC地址(SElinux)【转】
查看>>
学习Key与Value的集合hashtable
查看>>
曾国潘智慧语录
查看>>
mysql中find_in_set()函数的使用
查看>>
DNS 隐蔽通道工具资料汇总
查看>>
with(nolock)的用法
查看>>
【转载】一行代码加载网络图片到ImageView——Android Picasso
查看>>
Android友盟增量更新
查看>>
MDL--元数据锁的锁请求与锁等待+元数据锁类对象
查看>>
nightwatchjs --Expect element to not include text
查看>>
迷你版AOP框架
查看>>