我正在构建一个iPhone应用程序,需要以非常特定的方式构建一些图像。这个问题很难解释,所以下面是我想要实现的图表。基本上,我想把“油漆桶”填充到UIImage(这将是一个PNG)。我认为这里的术语“油漆桶”等同于一种色彩?
之后,我想创建一个蒙版对象(可以更新并可能包含多个形状)然后当我将另一个色调/颜料桶应用到原始图像时,组合蒙版所覆盖的区域将会不受影响。它基本上就像在物体上缠绕一些胶带,涂上它然后取下胶带。正如所承诺的,这是我所追求的图表。重要的是要注意虽然我在这里使用十字架,但最终模式可能非常复杂,并且必须在PNG内部而不是在代码中创建。感谢您提供的任何帮助!
答案 0 :(得分:0)
在白色背景上创建您的十字架(或任何您想要的形状)作为黑色图像。使用CGContextClipToMask
将其应用于图形上下文。然后使用CGContextFillRect
用蓝色填充上下文的边界。这样的事情应该这样做:
CGRect bounds = your context bounds;
CGContextRef gc = your context;
UIImage *cross = [UIImage imageNamed:@"cross"];
CGContextSaveGState(gc); {
CGContextClipToMask(gc, bounds, cross.CGImage);
CGContextSetColorWithColor(gc, [UIColor blueColor].CGColor);
CGContextFillRect(gc, bounds);
} CGContextRestoreGState(gc);