在项目开发中常常会遇到商品售罄、无货等状态,这时候商品图片就需要变为黑白色表示此商品不可售卖。
解决方法:
暴力:最简单无脑的办法就是更换另一张黑白色图片
优雅:利用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;
}