如何给UIImage消色效果
这是我的第一个问题。
我有一个应用程序,我想改变图像效果看起来像负面的颜色效果
这是如此简单,你必须select图像,并在下面的代码中设置图像
UIGraphicsBeginImageContext(renderImage.size); CGContextSetBlendMode(UIGraphicsGetCurrentContext(), kCGBlendModeCopy); [renderImage drawInRect:CGRectMake(0, 0, renderImage.size.width, renderImage.size.height)]; CGContextSetBlendMode(UIGraphicsGetCurrentContext(), kCGBlendModeDifference); CGContextSetFillColorWithColor(UIGraphicsGetCurrentContext(),[UIColor whiteColor].CGColor); CGContextFillRect(UIGraphicsGetCurrentContext(), CGRectMake(0, 0, renderImage.size.width, renderImage.size.height)); renderImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext();
制作一个方法:
- (UIImage *)makeImageNegative:(UIImage *)image{ UIGraphicsBeginImageContext(image.size); CGContextSetBlendMode(UIGraphicsGetCurrentContext(), kCGBlendModeCopy); [image drawInRect:CGRectMake(0, 0, image.size.width, image.size.height)]; CGContextSetBlendMode(UIGraphicsGetCurrentContext(), kCGBlendModeDifference); CGContextSetFillColorWithColor(UIGraphicsGetCurrentContext(),[UIColor whiteColor].CGColor); CGContextFillRect(UIGraphicsGetCurrentContext(), CGRectMake(0, 0, image.size.width, image.size.height)); UIImage *returnImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return returnImage; }