使用drawInRect渲染的清晰图像

时间:2013-05-30 16:00:39

标签: ios drawrect

我有一个设置,我需要渲染3个图像并混合它们。我在drawRect

中使用它
[self.backImage.image drawInRect:self.backImage.frame blendMode:kCGBlendModeNormal alpha:1.0];

我在UIImageView上进行了一些转换,然后调用setNeedsDisplay来标记Parent视图以触发drawRect。当drawRect再次触发时,似乎再次渲染图像而不删除旧图像。

我在父级和图片视图上设置了clearsContextBeforeDrawing,但它似乎无法解决问题。

如何在清除旧图像之前清除旧图像?这几乎就像使用drawInRect渲染图像一样,它们被遗忘了。

1 个答案:

答案 0 :(得分:0)

您是否尝试过kCGBlendModeClear?这可以让你在绘制新内容之前清除它。

或者,您可以尝试将绘图绘制到屏幕外位图上下文中。然后在drawRect中,从此屏幕外缓冲区复制到视图。这可能会成功绘制旧图像。

修改:在绘制新内容之前,您基本上会使用kCGBlendModeClear作为橡皮擦。