【发布时间】:2012-09-22 18:18:09
【问题描述】:
在 Interface Builder 中,我可以创建一堆内容过滤器。
如果我有 n 个过滤器,则结果计算为:fno fn-1o..o f1。现在我想创建几个堆栈并将它们组合成一个过滤器。
我该怎么做?
【问题讨论】:
标签: macos core-animation core-image
在 Interface Builder 中,我可以创建一堆内容过滤器。
如果我有 n 个过滤器,则结果计算为:fno fn-1o..o f1。现在我想创建几个堆栈并将它们组合成一个过滤器。
我该怎么做?
【问题讨论】:
标签: macos core-animation core-image
我以前没有做过过滤器堆栈,但我想 IB 会创建一个过滤器的 NSArray。您应该能够创建一个包含不同过滤器堆栈的所有内容的数组,并将其安装为您的视图的过滤器堆栈。
我假设这是 Mac OS,而不是 iOS? (我认为 iOS 还不支持过滤器堆栈。)
【讨论】:
解决方案是使用CIFilterGenerator class。
CIFilterGenerator 类提供了通过将现有 CIFilter 对象链接在一起来创建复杂效果的方法来创建 CIFilter 对象。 (过滤器链是指在CIFilterGenerator对象中连接的CIFilter对象。)复杂的效果可以封装为CIFilterGenerator对象并保存为文件,以便再次使用。过滤器生成器文件包含链接在一起的所有 CIFilter 对象的存档实例。
它可以作为 CIFilter 使用:
当调用 CIPlugIn 类提供的任何加载方法时,将加载您复制到 /Library/Graphics/Image Units/ 的任何过滤器生成器文件。 CIFilterGenerator 对象通过其文件名注册,或者如果存在,则通过您在其描述中提供的类属性注册。
【讨论】: