ImageMagick:转换以保持转换后图像的相同名称
Posted
技术标签:
【中文标题】ImageMagick:转换以保持转换后图像的相同名称【英文标题】:ImageMagick: convert to keep same name for converted image 【发布时间】:2015-03-02 22:50:45 【问题描述】:我正在将文件夹内的 .psd 文件转换为 .png 文件。如何在不同扩展名的文件夹中保持每个文件的名称相同?
例如,我输入文件夹图像,然后从终端执行
$ convert *.psd *.png
但它为 .png 命名的只是数字与适当的 .psd 图像不同。
【问题讨论】:
您应该接受@emcconville 的回答而不是我的回答,因为它与平台无关。 我无法破译你的英文... 【参考方案1】:如果您使用的是 Linux、Unix 或 Mac OSX,则可以在带有 Bash shell 的终端窗口中使用:
for i in *.psd; do
convert $i $i/.psd/.png
done
我故意不再为mogrify
做广告。对于每个还不知道的用户来说,这太危险了,谁来这个网站寻求帮助。 mogrify
在某些情况下会覆盖您的原始文件(当然不是在转换 PSD->PNG 时)
【讨论】:
【参考方案2】:使用-set
和格式选项。
convert *.psd -set filename:base "%[basename]" "%[filename:base].png"
请参阅“Long Form Attribute Percent Escapes”和“Filename Percent Escapes”文档。
更新
也可以使用 imagemagick 附带的 mogrify 实用程序。
mogrify -format png *.psd
注意:请谨慎使用 mogrify 作为文档状态...
此工具与转换类似,只是原始图像文件会被您请求的任何更改覆盖(除非您使用 -format 选项更改文件后缀)。
【讨论】:
只是一个更新:base
现在称为basename
。使用该替换,可以按预期工作!
-> convert *.psd -set filename:base "%[basename]" "%[filename:base].png"
mogrify -format png *.psd
效果最好,顺便说一句,您可以添加为Thunar
文件管理器mogrify -format png %F
上的操作【参考方案3】:
或者,更简单:
mogrify -format png *.psd
【讨论】:
没错,用-format
mogrify 会做同样的事情。
请注意,在 ImageMagick 的 v7 中,它变为 magick mogrify -format png *.psd
@MarkSetchell 谢谢,这行得通。有没有办法将输出放入子文件夹?想不通。
@Eskel 是的。 mkdir OUTPUT; magick mogrify -path OUTPUT -format png *.psd
【参考方案4】:
我喜欢top answer,
话虽如此,在以后的 ImageMagick 版本中,命令是
convert *.psd -set filename:basename "%[basename]" "%[filename:basename].png"
@jan-glx 和 @jomel imperio 也提到过
【讨论】:
以上是关于ImageMagick:转换以保持转换后图像的相同名称的主要内容,如果未能解决你的问题,请参考以下文章
使用Sphinx ImageMagick扩展名sphinx.ext.imgconverter更改已转换图像的分辨率
使用 imagemagick 将 GIF 图像转换为 PNG,但得到的是 RGBA 图像而不是调色板版本