iphone UIImage 图片处理 灰度 反色 深棕色的代码

这篇博客记录了在iOS开发中处理UIImage的实用代码,包括将图片转换为灰度、反色以及深棕色效果的实现方法,适用于iPhone应用的图像处理需求。
摘要由CSDN通过智能技术生成

把开发过程中常用的代码段备份一下,下面的代码内容是关于iphone UIImage 图片处理 灰度 反色 深棕色的代码。

CGImageRef  imageRef;
imageRef = anImage.CGImage;
 
size_t width  = CGImageGetWidth(imageRef);
size_t height = CGImageGetHeight(imageRef);
 
size_t                  bitsPerComponent;
bitsPerComponent = CGImageGetBitsPerComponent(imageRef);
 
size_t                  bitsPerPixel;
bitsPerPixel = CGImageGetBitsPerPixel(imageRef);
 
size_t                  bytesPerRow;
bytesPerRow = CGImageGetBytesPerRow(imageRef);
 
CGColorSpaceRef         colorSpace;
colorSpace = CGImageGetColorSpace(imageRef);
 
CGBitmapInfo            bitmapInfo;
bitmapInfo = CGImageGetBitmapInfo(imageRef);
 
bool                    shouldInterpolate;
shouldInterpolate = CGImageGetShouldInterpolate(imageRef);
 
CGColorRenderingIntent  intent;
intent = CGImageGetRenderingIntent(imageRef);
 
CGDataProviderRef   dataProvider;
dataProvider = CGImageGetDataProvider(imageRef);
 
CFDataRef   data;
data = CGDataProviderCopyData(dataProvider);
 
NSUInteger  x, y;
for (y = 0; y < height; y++) {
    for (x = 0; x < width; x++) {
         
        UInt8 red,green,blue;
         
        UInt8 brightness;
         
        switch (type) {
                 
                break;
                 
                break;
                 
                break;
                 
            default:
                break;
        }
         
    }
}
 
CFDataRef   effectedData;
effectedData = CFDataCreate(NULL, buffer, CFDataGetLength(data));
 
CGDataProviderRef   effectedDataProvider;
effectedDataProvider = CGDataProviderCreateWithCFData(effectedData);
 
CGImageRef  effectedCgImage;
effectedCgImage = CGImageCreate(

width, height,
bitsPerComponent, bitsPerPixel, bytesPerRow,
colorSpace, bitmapInfo, effectedDataProvider,
NULL, shouldInterpolate, intent);
effectedImage = [[UIImage alloc] initWithCGImage:effectedCgImage];

CGImageRelease(effectedCgImage);
CFRelease(effectedDataProvider);
CFRelease(effectedData);
CFRelease(data);
 
return effectedImage;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值