【问题标题】:iOS 7.1 has more CoreImage filters than listed in docs (e.g. CIBumpDistortion and CIBumpDistortionLinear.) Can we use them?iOS 7.1 的 CoreImage 过滤器比文档中列出的要多(例如 CIBumpDistortion 和 CIBumpDistortionLinear。)我们可以使用它们吗?
【发布时间】:2014-03-27 00:24:00
【问题描述】:

核心映像有一个公共 API,用于查询它以获取支持的过滤器列表,并询问用于控制这些过滤器的参数。

如果您查询 iOS 7.1,则返回的过滤器列表包括当前核心图像过滤器参考中未显示的许多过滤器。

具体来说,我正在研究 CIBumpDistortion 和 CIBumpDistortionLinear。 Core image Filter Reference 列出了这些过滤器,但它只列出了它们在 Mac OS 中可用。

通常,我认为额外的过滤器将被视为核心图像框架的私有,因此不可用。但是,如上所述,filterNamesInCategory 和 filterNamesInCategories 等公共方法列出了过滤器名称,列出了属性和 inputKeys,并且过滤器(大部分)在调用时起作用。有一些错误,但这与问题无关。

我将这个问题发布到 Apple 开发者委员会,希望 Apple 的某个人能给出明确的答案,但尚未有人回复。这里的人怎么看?

【问题讨论】:

  • 如果它们在那里,您可以使用它们。枚举所有已安装的过滤器并将它们呈现给用户是很常见的。

标签: ios objective-c core-image


【解决方案1】:

如果它们在[CIFilter filterNamesInCategory:kCICategoryBuiltIn] 的查询中列出,则这些 CIFilter 可以安全使用。这是一个公开可用的查询,不应返回任何私有 Core Image 过滤器。

这听起来像是文档没有完全赶上他们添加的内容的情况,我在几次 iOS 更新中看到了这种情况。我可能会建议提交documentation bug 以要求将其纳入。我以前做过,他们确实更新了文档以匹配。

【讨论】:

猜你喜欢
  • 2013-09-04
  • 2014-05-05
  • 2017-03-18
  • 2021-12-31
  • 2018-07-17
  • 2020-01-05
  • 2010-12-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多