Imagemagick 如何将给定文件夹中的所有文件(不同格式)转换为不同的文件类型
我有一个文件夹,里面有许多不同类型的图像(png、jpg、jpeg、bmp、pdf),我想使用imagemagick将它们全部转换成png(例如) 是否有一个命令可以执行此操作?如果没有,我应该怎么做Imagemagick 如何将给定文件夹中的所有文件(不同格式)转换为不同的文件类型,imagemagick,imagemagick-convert,Imagemagick,Imagemagick Convert,我有一个文件夹,里面有许多不同类型的图像(png、jpg、jpeg、bmp、pdf),我想使用imagemagick将它们全部转换成png(例如) 是否有一个命令可以执行此操作?如果没有,我应该怎么做 谢谢。试试mogrify命令: mogrify -format png *.* 但是要小心。如果没有-format选项,mogrify将覆盖原始图像。请务必阅读。尽管mogrify似乎可以完成这项工作,但我想向您展示如何使用ImageMagick中的convert多个命令来完成这项工作 我认为多
谢谢。试试
mogrify
命令:
mogrify -format png *.*
但是要小心。如果没有
-format
选项,mogrify
将覆盖原始图像。请务必阅读。尽管mogrify
似乎可以完成这项工作,但我想向您展示如何使用ImageMagick中的convert
多个命令来完成这项工作
我认为多个命令更好,因为文件类型的数量应该很小,您可以更好地根据需要调整它:
此命令:
for file in *.xbm; do convert $file "`basename $file .xbm`.png"; done
将所有.xbm
文件转换为.png
,同时不接触xbm文件
然后,您可以移动所有“已转换”的文件:
您可以使用ImageMagick软件包中的
convert
命令,例如
find-maxdepth 1\(-iname\*.png-o-iname\*.jpg-o-iname\*.jpeg-o-iname\*.bmp-o-iname\*.pdf\)-exec convert-verbose“{}”DEST_DIR/{}.png\代码>
或者,如果所有文件都位于同一目录中,请尝试以下更简单的方法:
convert '*.*' converted_%04d.png
类似:谢谢。我得到以下错误消息:C:\Users\Tal\s>mogrify-format png。mogrify.exe:无法打开模块文件C:\Program Files(x86)\ImageMagick-6.8。3-Q16\modules\coders\IM_MOD_RL_INI.dll”:没有此类文件或目录@warning/mo-dule.c/GetMagickModulePath/683。mogrify.exe:此图像格式没有解码委托
desktop.ini'@error/cons titute.c/ReadImage/550。(这很容易解决吗?)这是因为mogrify
试图转换不是图像文件的文件desktop.ini
。您应该只将图像文件传递给mogrify
。删除desktop.ini
或将*.
更改为仅与目录中的图像文件匹配的通配符。您还可以对每种文件格式运行几次该命令:mogrify-format png*.jpg
,mogrify-format png*.bmp
,等等。我想将不同的图像文件类型合并到一个*.pdf
文件中。如何调整您的代码以使其正常工作?我想我可以使用其他工具,如pdftk
(例如,通过使用pdftk*.pdf cat-output combined.pdf
),但更愿意使用一行代码来完成整个工作…如果mogrify
与-format
选项一起使用,则不会替换该文件,但是一个新的文件会用新的前缀保存。或者,如果您使用python,请注意:@MartijnvanWezel您链接的文章没有帮助。它详细说明了如何重命名文件,而不是如何完全重新格式化文件。@speedstyle oeww讨厌,回到我不太懂的时候。我会让我的命令保持不变,这样其他人就会从错误中吸取教训。如果文件名包含空格,则当前命令不起作用。解决此问题的一种方法是*.xbm中文件的;转换“$file”`basename\“$file\”.xbm`.png”;完成
,但我感觉bash提供了一个更干净的解决方案。
convert '*.*' converted_%04d.png