iOS开发应用中关于图形和绘制案例讲解--51CTO
iOS开发应用中关于图形和绘制案例讲解是本文要介绍的内容,主要是来学习IOS开发中关于绘图的一些要注意的细节,否则实现不了效果。具体内容来看详细内容。
1、iOS支持OpenGL ES和Quartz/UIKit/CoreAnimation绘制接口。UIKit绘制必须在主线程中完成。
2、Quartz支持基于路径的绘制,反走样,填充,图像,上色,坐标变换,pdf绘制显示解析等功能。
3、UIKit支持线条绘制、图像和颜色操作。
4、Core Animation支持动画绘制。
5、View的使用DrawRect绘制,以下行为会触发:
(1)View的移动和遮挡。
(2)View的隐藏和显示。
(3)拖动View。
(4)显示调用setNeedDisplay和setNeedDispalyRect
6、UIKit左上角为原点,右下角为终点。CoreAnimation坐下角为原点,右上角为终点。使用CGContextRotateCTM、CGContextScaleCTM、CGContextTranslateCTM来变换矩阵,或者直接使用CGAffineTransform设置变换矩阵。
7、CGContext绘制上下文,对于Bitmap和PDF,可以创建不同的context类型。
(1)变换矩阵
(2)裁剪范围
(3)线条绘制属性
(4)曲线精度
(5)反走样
(6)填充属性,描边属性
(7)半透明属性
(8)颜色空间
(9)文字
(10)颜色混合模式
8、使用UIGraphicsGetCurrentContext来获取当前的CGContext。
9、
- UIGraphicsBeginImageContextWithOptions和UIGraphicsEndImageContext
用来包含图像绘制的代码。
- UIGraphicsBeginPDFContextToFile(ToData)和UIGraphicsEndPDFContext
用来包含PDF绘制的代码。
10、Path绘制,即向量绘制。推荐使用UIBezierPath,其次是CGPath。
11、翻转屏幕变换:
- CGContextTranslateCTM(graphicsContext, 0.0, drawingRect.size.height);
- CGContextScaleCTM(graphicsContext, 1.0, -1.0);
12、Point通常等于Pixel,但是可以指定一个Point对应多个Pixel。
13、使用UIColor坐颜色空间变换。
14、绘制性能:
(1)最小化绘制调用
(2)尽量使用不透明的View
(3)在卷屏时重用View和表格
(4)在卷屏时可以不清空上次绘制结果
(5)减少绘制状态切换。
小结:iOS开发应用中关于图形和绘制案例讲解的内容介绍完了,希望通过本文的学习能对你有所帮助!