因为Quartz2D在开发中的用途非常的大,要想穷尽这些功能也不是太现实。所以下面我们介绍常用的几个利用Quartz2D实现的几个功能。
1.实现图片水印的效果。
图片水印的作用是防止他人盗取图片,给图片加一些logo,生成一张新的图片。代码如下
这里有几个注意点:
1.图片水印是对图片进行操作的,需要生成一张标记的图片,所以用的是位图上下文。而且必须手动创建,手动关闭,否则会引起内存泄露。
2.不需要拿到系统创建的图层上下文,没必要在drawRect方法里写。
2.实现图片头像的裁剪
实现裁剪思路:
①先设置裁剪区域,把图片画上去,超出裁剪区域的自动裁剪掉。
②加载旧图片,根据旧图片,获取上下文尺寸。通常我们的就图片尺寸和上下文尺寸相同。目的是避免压缩或放大图片。
③设置裁剪区域:正切于图片的圆
④绘制旧图片
⑤获取新图片
⑥关闭上下文
3.屏幕截取
屏幕截取时,view的图层只能渲染,渲染在新的图片