最后两行有什么区别?
CIImage *outputImage = [compositingFilter valueForKey:@"outputImage"];
[[[NSGraphicsContext currentContext] CIContext] drawImage:outputImage atPoint:point fromRect:fromRect];
[outputImage drawAtPoint:point fromRect:fromRect operation:op fraction:delta];
最后一个图像产生的畸变图像的rect小于[outputImage范围];
drawImage:行在某些情况下崩溃。
最佳答案
从-drawAtPoint的文档中:…
除非当前坐标系的CTM本身包含缩放比例,否则图像内容将以其当前分辨率绘制并且不会缩放。否则,将使用当前坐标系对图像进行定位和定向。
如果要绘制整个图像,fromRect应该是图像的整个尺寸。同样,在许多情况下,在不同的绘制方法之间,对翻转的处理也不同。
最后,-drawImage:...上的文档有些含糊地仅指出:
使用CIFilter类的方法之一应用过滤器后,可以调用此方法来强制评估结果,例如apply :、 apply:arguments:options:和apply:k…
希望这可以帮助。
关于cocoa - 与[CIContext drawImage:...],我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1411754/