我正在谷歌上搜索,如果我得到的内容可以为图片添加效果,例如Black & White
,Sepia
,grayScale
等。我找到了一个有用的链接,用于在{{转换图像1}}但是没有什么可以用B& W或灰度转换它。
以下是链接http://groups.google.com/group/iphonesdkdevelopment/browse_thread/thread/b987b02deec08b9f
在完成代码后,我知道我们需要为此更改RBG,但如何获取Sepia
和B&W
的RBG。这些影响的RBG比率是多少。
任何帮助都将受到赞赏。
提前致谢
答案 0 :(得分:4)
你可以通过
获得B& W图像-(UIImage *)convertOriginalImageToBWImage:(UIImage *)originalImage
{
UIImage *newImage;
CGColorSpaceRef colorSapce = CGColorSpaceCreateDeviceGray();
CGContextRef context = CGBitmapContextCreate(nil, originalImage.size.width * originalImage.scale, originalImage.size.height * originalImage.scale, 8, originalImage.size.width * originalImage.scale, colorSapce, kCGImageAlphaNone);
CGContextSetInterpolationQuality(context, kCGInterpolationHigh);
CGContextSetShouldAntialias(context, NO);
CGContextDrawImage(context, CGRectMake(0, 0, originalImage.size.width, originalImage.size.height), [originalImage CGImage]);
CGImageRef bwImage = CGBitmapContextCreateImage(context);
CGContextRelease(context);
CGColorSpaceRelease(colorSapce);
UIImage *resultImage = [UIImage imageWithCGImage:bwImage];
CGImageRelease(bwImage);
UIGraphicsBeginImageContextWithOptions(originalImage.size, NO, originalImage.scale);
[resultImage drawInRect:CGRectMake(0.0, 0.0, originalImage.size.width, originalImage.size.height)];
newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
答案 1 :(得分:1)