CoreImage 图片处理
CoreImage 是苹果 iOS5新增的一个 OC 框架,提供了强大的图像处理功能, 用于对基于像素的图像进行操作与分析, 提供了很多滤镜(Filter),形成强大的自定义效果
CIImage 类
用于保存图像数据, 初始化方法:
1.imageWithCGImage:
2.imageWithContentsOfURL:
3.imageWithCVImageBuffer:
4.imageWithData:
CFFilter 滤镜类
实例化滤镜对象,通过键-值KVC来设置输入值,及效果的改变.
1. 通常 CIFilter 对象需要一个或多个图像作为输入,-> 2.通过 KVC 设置一些参数 -> 3.并产生 CIImage 类型的实体作为输出
CIFilter * filter = [CIFilter filterWithName:@"CIGaussianBlur"];
下面是查询需要的滤镜种类的方法:
1.查询 效果分类中 包含什么效果:filterNamesInCategory:
(1)按住command 点击CIFilter 进入接口文件 找到第128行-148行全部都是 效果分类
(2)选择其中某一个分类 NSLog -> [CIFilter filterNamesInCategory:刚才拷贝的分类]; -> 打印出来的 是这个分类包含的所有 效果 -> 拷贝选择其中的某一个效果.
2.查询 使用的效果中 可以设置什么属性(KVC) attributes
NSLog -> [CIFilter filterWithName:刚才拷贝选择其中的某一个效果].attributes ->得到这个滤镜所有可以设置的属性
调用[CIFilter attributes]会返回filter详细信息,
CIContext 上下文
CIContext 又称上下文用来渲染 CIImage, 将作用在 CIImage 上的滤镜链 应用到原始的图片数据
得到处理后的图片:
使用步骤:
1.创建 CIImage对象
2.创建 CIFilter 滤镜对象
3.利用 KVC 设置滤镜对象的属性
4.通过滤镜对象获取处理后图片
5.创建 CIContext对象, 将得到的图片渲染到视图上
// // ViewController.m // CoreImageOfDong // // Created by Dong on 15/6/30. // Copyright (c) 201 ... 列表的单元格中包含有图片在开发中很常见.通常我们可以直接在tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIn ... 一.美工出图 二.第三方框架 -- DRNRealTimeBlur,框架继承自UIView.使用方法:创建UIView直接继承自框架的View,就有了毛玻璃效果 三.CoreImage -- 图片加高 ... 原文:http://noark9.github.io/2013/12/28/cocoa-drawing-guide-study-part-1/ 简介 cocoa drawing由AppKit提供并且也 ... 这里直接引用官方描述: The GPUImage framework is a BSD-licensed iOS library that lets you apply GPU-accelerated ... 目录(?)[-] Part one 关于GPUImage Part two 有关GPUImage的研究成果 Part Three 有关GPUImage的导入方式 Part Four 相关参考资料 ... 目录:[Swift]Xcode实际操作 本文将演示如何使用CoreImage图像处理框架,给图片添加像素化的滤镜效果. 在项目导航区,打开视图控制器的代码文件[ViewController.swift ... 目录:[Swift]Xcode实际操作 本文将演示如何使用CoreImage框架,调整图片的色相. 通过调整图像的色相,使图像产生暖色效果. 在项目导航区,打开视图控制器的代码文件[ViewContr ... 目录:[Swift]Xcode实际操作 本文将演示如何使用图片框架,将图片转换成单色样式. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit ... //在javascript中null表示“什么都没有” ,是一个特殊的类型,表示一个空对象引用: var person = null; //值为null(空),但类型为对象 console.log(p ... Redis登录: Redis目录: redis-cli.exe -h 127.0.0.1 -p 6739 login: auth “password” flushall #四.光标的使用 #声明光标 语法:DECLARE 光标名字 CURSOR FOR sql语句 #打开光标 OPEN 光标名称 #使用光标 FETCH 光标名称 into ... #关闭光标 CLOS ... 20169205实验二 Java面向对象程序设计 实验内容及步骤 (一)单元测试 1.三种代码 伪代码:以简洁的自然语言表明设计步骤: 产品代码:用以实现特定功能的程序或机器语言: 测试代码:用以对产 ... 虚拟机把类加载阶段中“通过一个类的全限定名来获取描述此类的二进制字节流”这个动作放到虚拟机外部去实现,以便让程序自己决定如何去获取所需要的类.实现这个动作的代码模块称为“类加载器”. 类与类加载器 任 ... 1. 如何创建嵌套的过滤器 //允许你减少集合中的匹配元素的过滤器, //只剩下那些与给定的选择器匹配的部分.在这种情况下, //查询删除了任何没(:not)有(:has) //包含class为“se ... 参考文章 :微信JS-SDK 权限签名算法 C#版 这篇文章讲解的的比较详细,而且算法准确,但是这篇文章有几个错误的地方需要注意; url必须动态生成 url不能写死,否则就算结果和官方检测的一致,也 ... st官网 正版ST-link/V2引脚定义和注意事项 分为ST-LINK/V2和ST-LINK/V2-ISOL两种型号 是STM8和STM32微控制器(MCU)系列的在线调试器和编程器(还是下载器.仿 ... 1 Appearance EmbeddedNavigator 嵌入导航器 (DataBindings) 数据绑定 (Advanced) 高级设置 Tag Text AccessibleDes ... RabbitMQ常用命令 RabbitMQ常用命令 rabbitmqctl命令http://www.rabbitmq.com/man/rabbitmqctl.1.man.html# 1). 服务器启动 ...CoreImage 图片处理的更多相关文章
随机推荐