北京传智播客教育www.itcast.cn—高级软件人才实作培训专家!北京传智播客教育www.itcast.cn—高级软件人才实作培训专家!Quartz2D讲师:李南江北京传智播客教育www.itcast.cn—高级软件人才实作培训专家!掌握•drawRect:方法的使用•常见图形的绘制:线条、多边形、圆•绘图状态的设置:文字颜色、线宽等•图形上下文状态的保存与恢复•图形上下文栈北京传智播客教育www.itcast.cn—高级软件人才实作培训专家!什么是Quartz2D•Quartz2D是一个二维绘图引擎,同时支持iOS和Mac系统•Quartz2D能完成的工作绘制图形:线条\三角形\矩形\圆\弧等绘制文字绘制\生成图片(图像)读取\生成PDF截图\裁剪图片自定义UI控件……北京传智播客教育www.itcast.cn—高级软件人才实作培训专家!Quartz2D实例•Quartz2D能做很多强大的事情,例如裁剪图片圆形裁剪北京传智播客教育www.itcast.cn—高级软件人才实作培训专家!Quartz2D实例涂鸦\画板北京传智播客教育www.itcast.cn—高级软件人才实作培训专家!Quartz2D实例手势解锁北京传智播客教育www.itcast.cn—高级软件人才实作培训专家!Quartz2D在iOS开发中的价值•为了便于搭建美观的UI界面,iOS提供了UIKit框架,里面有各种各样的UI控件UILabel:显示文字UIImageView:显示图片UIButton:同时显示图片和文字(能点击)……•利用UIKit框架提供的控件,拼拼凑凑,能搭建和现实一些简单、常见的UI界面•但是,有些UI界面极其复杂、而且比较个性化,用普通的UI控件无法实现,这时可以利用Quartz2D技术将控件内部的结构画出来,自定义控件的样子•其实,iOS中大部分控件的内容都是通过Quartz2D画出来的•因此,Quartz2D在iOS开发中很重要的一个价值是:自定义view(自定义UI控件)北京传智播客教育www.itcast.cn—高级软件人才实作培训专家!图形上下文•图形上下文(GraphicsContext):是一个CGContextRef类型的数据•图形上下文的作用保存绘图信息、绘图状态决定绘制的输出目标(绘制到什么地方去?)(输出目标可以是PDF文件、Bitmap或者显示器的窗口上)•相同的一套绘图序列,指定不同的GraphicsContext,就可将相同的图像绘制到不同的目标上绘制好的图形图形上下文保存输出目标显示北京传智播客教育www.itcast.cn—高级软件人才实作培训专家!图形上下文•Quartz2D提供了以下几种类型的GraphicsContext:BitmapGraphicsContextPDFGraphicsContextWindowGraphicsContextLayerGrap...