UIImage 的透明颜色为白色

Posted

技术标签:

【中文标题】UIImage 的透明颜色为白色【英文标题】:transparent color to white for an UIImage 【发布时间】:2012-05-03 13:56:07 【问题描述】:

我意识到我所有的 png 图像都是用透明颜色而不是白色定义的。我从来没有注意到,因为我的应用程序的背景是白色的,但现在是不同的颜色。而且由于我无法编辑每个单独的 png 文件以将透明颜色替换为白色,因此我正在寻找一种简单的编程方法,将透明颜色动态替换为白色。请问我该怎么做?

感谢您的帮助

干杯, 啧啧

【问题讨论】:

【参考方案1】:

如果我理解你想要做什么,我建议你为你的 UIImageViews 添加一个白色背景。

self.myImageView.backgroundColor = [UIColor whiteColor];

【讨论】:

谢谢 - 这确实有效,但我选择了其他解决方案,因为我注意到视图有时比图像大,给我额外的不想要的白色。再次感谢杰米。 OP 要求将 UIImage clearColor 更改为 whiteColor 不要将 UIImageView 透明部分变为白色【参考方案2】:

我不明白为什么你不能“编辑每个单独的 png 文件”;这是一个使用 GraphicConverter 或 ImageMagick 或其他任何东西的即时批处理操作。

如果您真的坚持在加载图像时在设备上对此进行补偿,那么只需将图像绘制到白色不透明矩形上并使用生成的合成图像。

【讨论】:

非常感谢!我想要一个快速的解决方案,因为我有 300 多张图像,并且认为使用这种命令转换图片并不容易。 ImageMagick 让它像魅力一样工作!谢谢马特。

以上是关于UIImage 的透明颜色为白色的主要内容,如果未能解决你的问题,请参考以下文章

如何在不透明的 UIImage 上用另一种颜色替换给定颜色 [重复]

如何仅为 UIImage 的非白色部分设置色调颜色?

检查 UIImage 是不是具有 alpha(透明)颜色的问题

UIImage 显示为不透明的正方形(IOS Swift)

将文本写入透明 UIImage

从 MTKView 创建的 UIImage 导致颜色/不透明度差异