我在Windows服务器上有成千上万的图像。文件大小从100x100到6000x6000像素不等。文件是jpg,gif和png。文件位于许多嵌套文件夹中。
我在服务器上安装了Imagemagick。我正在寻求帮助以编写可以从bat文件运行的ImageMagick脚本(最顶层的目录将作为参数以及最大像素大小传入)。
该脚本将递归处理最顶层目录和所有子目录中的每个图像文件。仅当宽度或高度大于最大像素大小时,才调整图像大小(如果最大像素大小参数为1200,则将调整大小为4000x2000的图像,而不调整大小为100x500的图像)。它将宽度或高度(以较大者为准)调整为最大像素大小,并将其他尺寸的大小更改为成比例的(即,在调整图像大小时不会歪曲或扭曲图像)。
是否可以编写完成所有这些操作的ImageMagick脚本?
答案 0 :(得分:0)
因此,来自fmw42的链接中的信息足以拼凑出答案。
FOR /R %f IN (*.jpg) DO mogrify -verbose -resize "1200x1200>" "%f"
这将递归影响从({FOR /R %f IN (*.jpg) DO
)运行的文件夹中及其下的每个.jpg文件。
如果有问题的图片在任一方向上均大于1200px,则将每个文件缩小以适合1200x1200的框,并保持图片的宽高比。