图片转换成黑白色

在项目开发中常常会遇到商品售罄、无货等状态,这时候商品图片就需要变为黑白色表示此商品不可售卖。
解决方法:
暴力:最简单无脑的办法就是更换另一张黑白色图片
优雅:利用iOS原生一套C语言接口可以优雅的把图片处理成黑白色

//直接复制粘贴调用即可
- (UIImage*) convertImageToGreyScale:(UIImage*) image
{
    CGRect imageRect = CGRectMake(0, 0, image.size.width, image.size.height);
    CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceGray();
    CGContextRef context = CGBitmapContextCreate(nil, image.size.width, image.size.height, 8, 0, colorSpace, kCGImageAlphaNone);
    CGContextDrawImage(context, imageRect, [image CGImage]);
    CGImageRef imageRef = CGBitmapContextCreateImage(context);
    UIImage *newImage = [UIImage imageWithCGImage:imageRef];
    CGColorSpaceRelease(colorSpace);
    CGContextRelease(context);
    CFRelease(imageRef);
    return newImage;
}

你可能感兴趣的:(图片转换成黑白色)