1

所以,我想将许多 PNG 从灰度转换为 RGB,类似于这个问题

但是,那里的给定命令不适用于 PNG。此外,也就是说convert,我读到要就地处理图像,必须使用mogrify. 我该如何使用它?

4

1 回答 1

0

所以,这既是一个错误,也是 imagemagic的一个特性。引用功能部分:

事实证明,即使文件以前是 PNG24 或 PNG32 ,ImageMagick 也会尝试根据图像内容设置为 PNG8

因此,如果您希望每个图像最终有 3 个通道,则必须设置png24格式(3通道x 8位/通道)。

所以解决方案是:

# for a single image, with a different output
convert input.png -type TrueColor png24:output.png

# for a batch of images, IN_PLACE !!! BE VERY CAREFUL 
mogrify -define png:format=png24 -type TrueColor *.png

必须意识到这mogrify将修改它们因此请确保这是您想要的,因为无法恢复原始图像。

于 2017-10-05T16:43:19.117 回答