我想为图像添加色彩参考。结果应该看起来像Photoshop中的“乘法”混合模式,其中白色将替换为“ 色调”:
我将不断更改颜色值。
后续:我会将代码执行此操作,并将其放入ImageView的drawRect:方法中,对吗?
像往常一样,与链接相反,代码片段将极大地帮助我理解。
更新:用建议的代码Ramin子类化UIImageView 。
我把它放在我的视图控制器的viewDidLoad:中:
[self.lena setImage:[UIImage imageNamed:kImageName]];
[self.lena setOverlayColor:[UIColor blueColor]];
[super viewDidLoad];
我看到了图像,但是没有着色。我还尝试加载其他图像,在IB中设置图像,然后在视图控制器中调用setNeedsDisplay:。
更新:未调用drawRect :。
最终更新:我发现一个旧项目已正确设置了imageView,因此我可以测试Ramin的代码,并且它的工作原理很吸引人!
最终,最终更新:
对于那些刚刚了解Core Graphics的人来说,这是可能可行的最简单的方法。
在子类化的UIView中:
- (void)drawRect:(CGRect)rect {
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetFillColor(context, CGColorGetComponents([UIColor colorWithRed:0.5 green:0.5 blue:0 alpha:1].CGColor)); // don't make color too saturated
CGContextFillRect(context, rect); // draw base
[[UIImage imageNamed:@"someImage.png"] drawInRect: rect blendMode:kCGBlendModeOverlay alpha:1.0]; // draw image
}
呼如林
宝慕林4294392
梦里花落0921
相关分类