我可以在网上找到许多制作UIImage灰度的教程。但我只是希望UIImage稍微暗一些,仍然很多彩。这可能吗?如果是,请给我一些样本来源。
感谢。
答案 0 :(得分:1)
您应该调查Core Image过滤器 - 这里是Apple Docs
(...或者你可以按照Attila的回答,更简单!)
答案 1 :(得分:1)
感谢Zenox,这个解决方案很好用:
+ (UIImage *)colorizeImage:(UIImage *)image withColor:(UIColor *)color {
UIGraphicsBeginImageContext(image.size);
CGContextRef context = UIGraphicsGetCurrentContext();
CGRect area = CGRectMake(0, 0, image.size.width, image.size.height);
CGContextScaleCTM(context, 1, -1);
CGContextTranslateCTM(context, 0, -area.size.height);
CGContextSaveGState(context);
CGContextClipToMask(context, area, image.CGImage);
[color set];
CGContextFillRect(context, area);
CGContextRestoreGState(context);
CGContextSetBlendMode(context, kCGBlendModeMultiply);
CGContextDrawImage(context, area, image.CGImage);
UIImage *colorizedImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return colorizedImage;
}