iPhone SDK 反转 UIImage 的颜色

标签 iphone colors core-graphics iphone-sdk-3.1

我有一个 iPhone 应用程序,可以让人们用手指在屏幕上画画。他们在黑色背景上用白线画画。但是,当我将此图像上传到网络服务器时,线条本身是白色的。我一直在尝试通过核心图形库来寻找反转绘制图像颜色的方法。没有设置背景,因此它应该是透明的。进行图像反转应该将白色交换为黑色。

有谁知道这是否可以通过核心图形库实现?

干杯

最佳答案

我最终找到了一个好方法。我没有简单地将原始图像的背景设为透明,而是将其设为黑色。现在黑色背景上有白线。然后,这只是一个简单的事情:

UIGraphicsBeginImageContext(image.size);
CGContextSetBlendMode(UIGraphicsGetCurrentContext(), kCGBlendModeCopy);
[image drawInRect:CGRectMake(0, 0, image.size.width, image.size.height)];
CGContextSetBlendMode(UIGraphicsGetCurrentContext(), kCGBlendModeDifference);
CGContextSetFillColorWithColor(UIGraphicsGetCurrentContext(),[UIColor whiteColor].CGColor);
CGContextFillRect(UIGraphicsGetCurrentContext(), CGRectMake(0, 0, image.size.width, image.size.height));
UIImage *returnImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

变量'image'是黑底白线的原始图像。感谢您的帮助大卫·索西

关于iPhone SDK 反转 UIImage 的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2263467/

相关文章:

css - 用透明颜色和模糊叠加图像

iphone - 这个要怎么释放呢?

uiview - 是否可以捕获 UIReplicantView 的 UIImage 屏幕截图?

iphone - 适用于有限或受限受众的应用程序

iOS 8 当键盘出现时将 UIView 向上移动 |问题

iPhone SDK - 获取/计算相机视野 (FOV)(增强现实)

ios - 更改 kCGImageAlphaOnly 渲染的 CGImage 的颜色

iphone - 拍摄快照时,显示出很少的白色背景颜色

javascript - 如何在 Javascript 中更改 HTML 背景颜色 - IE9 问题

android - Android应用程序 ListView 中的多种文本颜色