用透明度批量替换颜色

平面设计 透明度 批量处理
2022-01-13 13:43:39

我有大量带有亮粉红色背景的 PNG 图像(太多,几乎无法一次完成一张),我想用透明度替换背景颜色。如果这不可能或特别困难,则用白色替换指定的颜色会很有用。

我有 gimp 但没有 photoshop 并且对命令行不是特别满意,所以如果解决方案需要,请显示每个步骤。能够做到这一点真是太好了,任何帮助将不胜感激。

3个回答

我知道你说过你对命令行工具不满意,但 ImageMagick 可以做到这一点:

替换特定颜色

convert balloon.gif -transparent blue balloon_trans.gif

在此处输入图像描述 在此处输入图像描述 在此处输入图像描述

balloon.gif源图在哪里,-transparent指定要透明bg,blue是要替换的颜色,balloon_trans.gif是完成图。

这是假设您的“亮粉色”不是任何图像的一部分。如需更智能的背景移除(floodfill),请查看本教程:Masking Simple Backgrounds (floodfill)

这可能会有点麻烦,并且他们在那里指定的一些选项可能不是您要执行的操作所必需的,因此正如@graphics man 建议的那样,您可以添加background到命令中


如果你能告诉我你正在使用什么操作系统和一个示例图像,我可以帮助你使用脚本来为许多图像自动执行此操作


具体到你的情况:

首先,安装ImageMagick您可能需要在安装后重新启动才能更新 PATH 变量(我做过)

安装后,启动命令提示符(开始菜单,键入cmd,回车)

您需要将目录更改为保存图像的位置。根据您的情况,输入以下命令:

cd C:\Users\Eric\Pictures\pngs\logos

现在我们需要创建一个文件夹来保存所有图像:

mkdir batch

现在,转换所有图像的命令:

FOR %G IN (*.png) DO convert "%G" -transparent #FF00FF "batch\%G"

注意:在 ImageMagick v7 中,使用magick代替convert,就像这样

FOR %G IN (*.png) DO magick "%G" -transparent #FF00FF "batch\%G"

如果一切顺利,新保存的图像应该在您创建的批处理文件夹中。

在此处输入图像描述 在此处输入图像描述 在此处输入图像描述

如果您正在运行 gimp 并且不想使用 Imagemagick,您可能想看看David's Batch Processor (DBP)它是用于批处理的 gimp 插件。 注意我从未使用过它也没有测试过它,但这是我以前见过的东西。如果您有 Photoshop,我可以向您展示如何使用批处理或操作。

这对我来说就像一个魅力:

http://photobatch.wikidot.com/action-color-to-alpha

Phatch 是一个照片批处理器。颜色到 alpha 的操作完全符合您的要求:

"应该变得透明的颜色的价值"