[英]CIImage and CIFilter implementation specifics
我对核心映像系统的基础实现有疑问。 我在彼此之上添加了一些CIImages
。 不多,大约5或6。 为了节省内存和性能,它们都裁剪了透明像素。 然后以偏移量绘制它们,因此我使用@"CIAffineTransform"
过滤器定位它们。
CIFilter* moveFilter = [CIFilter filterWithName:@"CIAffineTransform"];
我的问题是: moveFilter.outputImage是否真正生成新图像,还是生成稍后用于绘制实际图像的“渲染设置”?
(如果是第一个,那意味着我有效地渲染了两次图像。这将是Core Image API中的一个巨大缺陷,很难相信Apple以此方式创建了它。)
筛选器不生成任何内容。 outputImage
不会生成任何东西。 CIImage不生成任何东西。 您要做的只是构造一个过滤器链。
除非明确要求将其渲染,否则不会渲染到位图。 您可以通过以下两种方式之一执行此操作:
调用CIContext createCGImage:fromRect:
实际上将基于CIImage的UIImage绘制到图形上下文中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.