我正在尝试为iPad绘制一个简单的绘图应用程序,您可以在其上绘制图片,而我正在使用CGContext的东西来完成它,但我最初计划处理删除的方式是仅仅绘制一些东西白色......除了我刚才意识到当你画到另一个图像时它不起作用,因为当你“擦除”时你也会“擦除”背景图像。
有没有办法支持实际的删除?
谢谢!
答案 0 :(得分:20)
我还需要删除功能。根据@ Jeremy的回答,这对我有用:
CGContextRef cgref = UIGraphicsGetCurrentContext();
if(erase == TRUE) // Erase to show background
{
CGContextSetBlendMode(cgref, kCGBlendModeClear);
}
else // Draw with color
{
CGContextSetBlendMode(cgref, kCGBlendModeNormal);
}
答案 1 :(得分:4)
在图像上方的图层中显示用户的绘图。然后擦除就像在绘图图层上绘制透明贴片一样简单,以便让它下面的图像像素显示出来。
答案 2 :(得分:0)
清除所有CGContextRef图纸:
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextClearRect(context, self.bounds);
[self setNeedsDisplay];