iOS Core Graphics介绍


Core Graphics是iOS中绘制图形的核心框架.


Core Graphics属于媒体层,它负责所有在iOS屏幕上进行的绘图操作。
创建任何界面元素时,iOS都是用Core Graphics来将这些元素绘制到窗口中去的。
通过实现和重载Core Graphics的方法,可以创建自定义的界面元素.

最常见的用法是继承一个UIView的子类,重载其drawRect。
视图刷新或者重绘drawRect都会被调用。
调用频率很高,所以应该极为轻量级。

从不直接调用drawRect,需要重绘使用setNeedDisplay(作用是让iOS根据它的安排调用drawRect)。
图形上下文的属性是状态相关的,改变属性会影响所有后续操作。


要用到的图形上下文属性:

路径(path)
阴影(shadow)
笔画(stroke)
剪裁路径(clip path)
线条粗细(line width)
混合模式(blend mode)
填充色(fill color)
当前形变矩阵(current transform matrix)
线条图案(line dash)


图形上下文栈
一个图形上下文好比是画布上的一副扁平的图画 执行绘画动作,这些动作是在同一个图层上完成的。 图形上下文不允许将内容分不到多个图层中,如果有需求在不同图层上画,可以考虑使用视图层次结构,创建多个UIView,并将他们作为父视图的子视图
图形上下文栈可以把图形上下文的当前状态保存下来,并在执行一些动作后再次恢复回来
CGContextSaveGState(); 
CGContextStoreGState(); 

Core Graphics中还提供了很多预先设置好的路径(矩形、圆形等等)。
不妨在drawRect方法中输入“CGContextAdd”试试看。
展现出来的这些方法由Core Graphics提供,
可以用来绘制圆形、椭圆、矩形、二次曲线等路径。

创建完路径后还要记得调用CGContextAddPath方法将路径添加到上下文中。
路径只是我们画的一条线而已,不把他画到上,他就没有什么卵用。


添加好路径后,就要开始画图了。
画图的时候需要考虑画不画边框、画不画边框内部的区域,
边框的粗细、颜色、内部区域颜色等问题。
Core Graphics提供了另一个方法集合”CGContextSet”来进行这些设置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值