我有一个文件夹里面有许多来自不同类型的图像(png、jpg、jpeg、bmp、pdf),我想使用ImageMagick将它们全部转换为png格式。
是否有一条命令可以完成这个任务?如果没有,我该怎么做呢?
谢谢。
我有一个文件夹里面有许多来自不同类型的图像(png、jpg、jpeg、bmp、pdf),我想使用ImageMagick将它们全部转换为png格式。
是否有一条命令可以完成这个任务?如果没有,我该怎么做呢?
谢谢。
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。(这个问题简单易解决吗?) - Tal Galilimogrify
尝试转换名为 desktop.ini
的文件,而它不是图片文件。你应该只传递图片文件给 mogrify
。要么删除 desktop.ini
文件,要么将 *.*
改为只匹配目录中图片文件的通配符。你也可以针对每种文件格式运行命令多次:mogrify -format png *.jpg
,mogrify -format png *.bmp
,等等。 - nwellnhof*.pdf
文件。如何修改您的代码以实现这一目标? - nutty about nattypdftk
(例如使用 pdftk *.pdf cat output combined.pdf
),但我更愿意有一个一行代码完成整个工作的方法... - nutty about nattymogrify
命令时带有-format
选项,文件不会被替换,而是会保存一个新的文件并附上新的前缀。 - miro marchimogrify
命令使用-format
选项并且指定跟原始文件格式相同的格式,它仍然会覆盖原始文件。不确定是否有任何方法可以避免这种情况。 - AnnanFay虽然 mogrify
看起来能够完成工作,但我想向您展示如何使用 ImageMagick 的 convert
命令进行多个操作。
我认为多个命令更好,因为文件类型数量应该很少,而且您可以更好地根据自己的需求进行调整:
这个命令:
for file in *.xbm; do convert $file "`basename $file .xbm`.png"; done
将所有的.xbm
文件转换为.png
,同时不会影响xbm文件。
然后你可以移动所有的“已转换”文件:
mkdir converted
for file in *.xbm; do mv $file converted/; done
for file in *.xbm; do convert "$file" "\
basename "$file" .xbm`.png"; done`,但我感觉Bash提供了更简洁的解决方案。 - jan-glxmv *.xbm converted
。 - lenoohconvert
命令,例如: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
类似问题:如何将文件夹中的所有图像按相同宽度缩放?