您的位置:首页 > 移动开发 > IOS开发

iOS Quartz2D简单的使用

2015-12-25 15:21 323 查看
Quartz 2D是一个二维绘图引擎,同时支持iOS和MacQuartz 2D可以完成的工作1.绘制图形2.绘制文字3.绘制/生成图片4.读取/生成PDF5.截图/裁剪图片6.自定义UI控件7.......相关术语:图形上下文:图形上下文是一个CGContextRef类型数据作用:保存绘图信息,绘图状态决定绘图的输目标(绘制到什么 地方,输出目标可以是PDF,Bitmap或者直接显示到窗口上)相同的绘图序列,制定不同的图形上下文,就可以会知道不同的目标上
Quartz2D提供了以下几种类型的Graphics Context:
Bitmap Graphics Context
PDF Graphics Context
Window Graphics Context
Layer Graphics Context
Printer Graphics Context
绘图步骤:
获得图形上下文CGContextRef ctx = UIGraphicsGetCurrentContext();拼接路径(下面代码是搞一条线段)CGContextMoveToPoint(ctx, 10, 10);CGContextAddLineToPoint(ctx, 100, 100);绘制路径CGContextStrokePath(ctx); // CGContextFillPath(ctx);
常用的路径拼接函数:
//新建一个起点void CGContextMoveToPoint(CGContextRef c, CGFloat x, CGFloat y)//添加新的线段到某个点void CGContextAddLineToPoint(CGContextRef c, CGFloat x, CGFloat y)//添加一个矩形void CGContextAddRect(CGContextRef c, CGRect rect)//添加一个椭圆void CGContextAddEllipseInRect(CGContextRef context, CGRect rect)//添加一个圆弧void CGContextAddArc(CGContextRef c, CGFloat x, CGFloat y,CGFloat radius, CGFloat startAngle, CGFloat endAngle, int clockwise
常用的绘制路径的函数:
//Mode参数决定绘制的模式void CGContextDrawPath(CGContextRef c, CGPathDrawingMode mode)//绘制空心路径void CGContextStrokePath(CGContextRef c)//绘制实心路径void CGContextFillPath(CGContextRef c)//提示:一般以CGContextDraw、CGContextStroke、CGContextFill开头的函数,都是用来绘制路径的
图像上下文栈的操作
将当前的上下文copy一份,保存到栈顶(那个栈叫做”图形上下文栈”)void CGContextSaveGState(CGContextRef c)将栈顶的上下文出栈,替换掉当前的上下文void CGContextRestoreGState(CGContextRef c)
//未完待续

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: