iOS 之滤镜 详解

来源:互联网 发布:潘小涛 知乎 编辑:程序博客网 时间:2024/04/29 12:29

滤镜给图像 添加效果,可以使图像更加的美观,像美图秀秀一样类似的软件就是对图片进行修饰。

滤镜 用到的框架CoreImage   使用的时候不用再导入了,系统已经封装好了。

首先CoreImage是一个图像框架它基于OpenGL 顶层的创建  底层则是利用着色器来处理的图像。

他利用了GPU基于硬件来加速处理图像 CoreImage 有很多滤镜  它能够给与一张图像或者视频帧多种视频效果,

滤镜链是把滤镜效果叠加起来的处理图像。

使用滤镜用到的类CIImage 保存图像数据的类, CGImageRef-->图像中的数据

CIIFilter:滤镜类  图片属性经行细节处理的类,他对素有的像素 进行操作 用键值编码来进行设置(KVC )模式。

CIContext 是对图像进行处理的具体对象 滤镜对象输出的图像不是合成之后的图像 需要使用图像处理 的上下文 合并输出图像 

查找滤镜的效果的类 可以通过[CIFilter filterNamesInCategory:效果类] 查询详细的效果类,

[CIFilter filterWithName:@"CIGlassLozenge"].attributes;查询可以设置的参数。详细代码请看下面实例:

以上代码是详细的介绍,在实际使用的过程中不可能单一的用到一种效果,可能用到多种效果,这时候就用到滤镜链了,滤镜链使用很简单,在原来的基础上进行再一次的添加滤镜效果,进行合成即可,依次类推。相信大家这么详细的介绍,一定能够学会这个知识点。



1 0