[Xcode10 实际操作]六、媒体与动画-(7)遍历系统提供的所有滤镜

本文将演示系统到底提供了多少滤镜供开发者使用,并了解每个滤镜都有哪些参数需要配置。

在项目导航区,打开视图控制器的代码文件【ViewController.swift】

 1 import UIKit
 2 //首先导入要使用的框架,该框架提供了强大和高效的图像处理功能,
 3 //用来对基于像素的图像进行分析、操作和特效处理
 4 import CoreImage
 5
 6 class ViewController: UIViewController {
 7
 8     override func viewDidLoad() {
 9         super.viewDidLoad()
10         // Do any additional setup after loading the view, typically from a nib.
11
12         //获得系统内置滤镜名称,并将滤镜名称放置在数组里
13         let buildInFilters = CIFilter.filterNames(inCategory: kCICategoryBuiltIn)
14
15         //对滤镜名称的数组进行遍历
16         for filter in buildInFilters
17         {
18             //根据滤镜名称,获得对应的滤镜
19             let filter = CIFilter(name: filter as String)
20             //获得滤镜所有的属性
21             let attributes = filter!.attributes
22             //在控制台打印输出滤镜信息
23             print("[\(String(describing: filter))]\n")
24             //在控制台打印输出滤镜的所有属性
25             print(attributes)
26              //在控制台打印输出滤镜之间的分隔符
27             print("\n --------------------------------- \n")
28         }
29     }
30
31     override func didReceiveMemoryWarning() {
32         super.didReceiveMemoryWarning()
33         // Dispose of any resources that can be recreated.
34     }
35 }

原文地址:https://www.cnblogs.com/strengthen/p/10034411.html

时间: 2024-10-10 15:50:39

[Xcode10 实际操作]六、媒体与动画-(7)遍历系统提供的所有滤镜的相关文章

[Xcode10 实际操作]六、媒体与动画-(16)使用MediaPlayer框架播放视频

本文将演示视频的播放功能. 在项目名称上点击鼠标右键,弹出右键菜单, 选择[Add Files to "DemoApp"],往项目中导入文件命令. 点击选择一个影片素材->[Add] 在项目导航区,打开视图控制器的代码文件[ViewController.swift] 1 import UIKit 2 //AVFoundation框架用来处理基于时间的媒体数据. 3 //可以用来检查.创建.编辑或是重新编码媒体文件. 4 //也可以从设备中获取输入流 5 //在视频实时播放时操作和

[Xcode10 实际操作]六、媒体与动画-(8)使用CATransaction Reveal制作渐显动画

本文将演示如何制作渐显动画. 图片的不透明度逐渐发生了变化,从而产生作渐显动画的效果. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] 1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // Do any additional setup after loading the v

[Xcode10 实际操作]六、媒体与动画-(9)使用CATransaction Push制作入场动画

本文将演示如何制作入场动画. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] 1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // Do any additional setup after loading the view, typically from a nib. 8

[Xcode10 实际操作]六、媒体与动画-(5)使用CoreImage框架给图片添加马赛克效果

本文将演示如何使用CoreImage图像处理框架,给图片添加像素化的滤镜效果. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] 1 import UIKit 2 //首先导入要使用的框架,该框架提供了强大和高效的图像处理功能, 3 //用来对基于像素的图像进行分析.操作和特效处理 4 import CoreImage 5 6 class ViewController: UIViewController { 7 8 override func viewDidLo

[Xcode10 实际操作]六、媒体与动画-(6)使用UIBlurEffect给图片添加模糊效果

本文将演示如何给图像添加模糊效果. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] 1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // Do any additional setup after loading the view, typically from a nib.

GIS基础软件及操作(六)

原文 GIS基础软件及操作(六) 练习六.空间分析的应用 1.加深对缓冲区分析基本原理.方法的认识:2.熟练掌握距离制图创建缓冲区技术方法.3.掌握利用缓冲区分析方法解决地学空间分析问题的能力. 1. 距离制图-创建缓冲区 数据准备:图层文件point.shp,lline.shp,polygon.shp 1.1 点要素图层的缓冲区分析 1) 在ArcMap中新建地图文档,加载图层:StudyArea,point 2) 打开Arctoolbox,执行命令<Spatial Analyst工具>-&

[Xcode10 实际操作]九、实用进阶-(25)使用Storyboard(故事版)的约束功能,使项目快速适配各种分辨率的设备

本文将演示使用故事版的约束功能,使项目快速适配各种分辨率的设备. 在项目导航区打开并编辑主故事版[Main.storyboard]. 在当前故事版中,已经存在一个适配4寸屏幕的界面, 点击设备名称,更改设备类型.在弹出的模拟器列表中,选择一款拥有4.7寸屏幕的模拟器. 然后通过系统提供的约束功能,对各尺寸屏幕进行适配. 在故事版文档框架区中的[View Controller],点击显示[MainView]视图下的所有子元素. 该视图是添加的自定义视图,尺寸与根视图相同,并且包含了页面中的所有元素

六星经典CSAPP-笔记(10)系统IO

六星经典CSAPP-笔记(10)系统I/O 1.Unix I/O 所有语言的运行时系统都提供了高抽象层次的I/O操作函数.例如,ANSI C在标准I/O库中提供了诸如printf和scanf等I/O缓冲功能的函数:C++中则重载了<<和>>用来支持读写.在Unix系统中,这些高层次的函数基于Unix的系统I/O函数来实现,多数时候我们都无需直接使用底层的Unix I/O.但学习Unix系统I/O能更好地理解一些系统概念,而且当高层次的函数不适用时我们也能轻松地实现想要的功能,例如访

WPF技术触屏上的应用系列(六): 视觉冲击、超炫系统主界面、系统入口效果实现

原文:WPF技术触屏上的应用系列(六): 视觉冲击.超炫系统主界面.系统入口效果实现 去年某客户单位要做个大屏触屏应用,要对档案资源进行展示之用.客户端是Window7操作系统,54寸大屏电脑电视一体机.要求有很炫的展示效果,要有一定的视觉冲击力,可触控操作.当然满足客户的要求也可以有其它途径.但鉴于咱是搞 .NET技术的,首先其冲想到的微软WPF方面,之前对WPF的了解与学习也只是停留在比较浅的层面,没有进一步深入学习与应用.所以在项目接来以后,也就赶鸭子上架了,经过努力奋斗最终还是搞定了.当