我有一个带有alpha通道(即透明度)的PNG图像,我需要创建与图像层组合到白色背景的版本。我想使用一个可脚本化的命令,使用一个CLI工具,如Image Magick,直接将PNG无损地转换为PNG。
导致错误的Image Magick命令的一个例子是:
convert input.png -background white -flatten output.png
我有一个带有alpha通道(即透明度)的PNG图像,我需要创建与图像层组合到白色背景的版本。我想使用一个可脚本化的命令,使用一个CLI工具,如Image Magick,直接将PNG无损地转换为PNG。
导致错误的Image Magick命令的一个例子是:
convert input.png -background white -flatten output.png
当前回答
下面是如何将一个目录中所有文件夹中的相同图像替换为白色而不是透明的:
Mogrify -background white -flatten */*.png
其他回答
我看到了这个问题和答案,这真的帮助了我,但后来我需要为很多文件这样做,所以如果你有多个图像(PNG图像)在一个文件夹,你想为所有:
find ./ -name "*.png" -exec convert {} -flatten {} \;
Welp看起来我决定安装“图形魔法”而不是“图像魔法”有一些粗糙的边缘-当我重新安装真正复杂的旧“图像魔法”时,上面的命令工作得很好。
编辑,很长一段时间后-有一天我会检查看看“图形魔法”是否已经解决了这个问题。
是-alpha off,不是-alpha remove!iOS应用商店上传失败时,有一个alpha频道在任何图标!!
以下是如何做到这一点: Mogrify -alpha off *.png
这对我来说很管用:
convert -flatten img1.png img1-white.png
文档引用:
-flatten命令行选项 -layers命令行选项(-flatten等价于-layers flatten)
-background white -alpha remove -alpha off
例子:
convert image.png -background white -alpha remove -alpha off white.png
你可以随意用其他颜色替换白色。Imagemagick文档是这样描述-alpha remove操作的:
这个操作简单快捷,不需要就能完成工作 任何额外的内存使用,或其他可能相关的副作用 与替代透明去除技术。这就是 删除图像透明度的首选方式。