将图像从一种格式批量转换为另一种格式?

opu*_*u 웃 63 format convert png

我想将一批图片,将近100张,从jpg格式转换成png格式。如何在不重命名它们的情况下执行此操作,而是实际转换格式?

Avi*_*Raj 90

试试这些命令,

mogrify -format png /path/*.jpg    
Run Code Online (Sandbox Code Playgroud)

这会将所有 .jpg 文件转换为 .png 文件并将转换后的文件保存在同一目录中。

mv /path/*.png ~/Desktop/pic
Run Code Online (Sandbox Code Playgroud)

这会将所有.png文件(已转换)移动到pic驻留在桌面上的目录中。


Par*_*rto 56

使用 ImageMagick

首先安装imagemagick:

sudo apt-get install imagemagick
Run Code Online (Sandbox Code Playgroud)

首先尝试只转换一张图像:

convert image.jpg image.png
Run Code Online (Sandbox Code Playgroud)

现在全部转换:

mogrify -format png *.jpg
Run Code Online (Sandbox Code Playgroud)

编辑

您还需要将其拆分为适合的块,以避免达到您可以在命令行上放置的数量限制。这应该工作得更好:

find -name '*.jpg' -print0 | xargs -0 -r mogrify -format png
Run Code Online (Sandbox Code Playgroud)

-print0-0用于处理空间中的文件名和-r手段不运行mogrify如果有什么可以做。

来源:https : //stackoverflow.com/questions/1010261/running-a-batch-with-imagemagick

编辑 2 根据@Glutanimate 的评论切换 png 和 jpg。

编辑 3 在上一个建议中将 png 更改为 jpg。