【发布时间】:2013-10-18 06:49:12
【问题描述】:
我想将 UIimage 中的颜色更改为透明 我正在使用下面的代码将黑色更改为透明
-(void)changeColorToTransparent: (UIImage *)image{
CGImageRef rawImageRef = image.CGImage;
const float colorMasking[6] = { 0, 0, 0, 0, 0, 0 };
UIGraphicsBeginImageContext(image.size);
CGImageRef maskedImageRef = CGImageCreateWithMaskingColors(rawImageRef, colorMasking);
{
CGContextTranslateCTM(UIGraphicsGetCurrentContext(), 0.0, image.size.height);
CGContextScaleCTM(UIGraphicsGetCurrentContext(), 1.0, -1.0);
}
CGContextDrawImage(UIGraphicsGetCurrentContext(), CGRectMake(0, 0, image.size.width, image.size.height), maskedImageRef);
UIImage *result = UIGraphicsGetImageFromCurrentImageContext();
CGImageRelease(maskedImageRef);
UIGraphicsEndImageContext();
}
它工作正常.. 但我想通过选择颜色表单颜色选择器在图像上画一个点,然后想让那个点透明.. 我不知道如何在下面的行中给出颜色遮罩的值
const float colorMasking[6] = { 0, 0, 0, 0, 0, 0 };
谁能帮我把颜色变成透明
【问题讨论】:
标签: ios objective-c uiimage uicolor