imagemagick:居中并调整多个图像的大小,保留原始文件名

时间:2014-08-12 06:14:00

标签: imagemagick imagemagick-convert

早上好,

我想在具有不同宽高比的文件夹中居中并调整多个图像的大小,并保留文件名。以下几乎是我喜欢的(它适用于特定的图片),但我必须为每个特定的图片命名。

convert -size 100x100 xc:black -gravity center originalpic.jpg -thumbnail 300x300 -composite newpic.jpg

我尝试使用*来保留原始文件名并处理文件夹中的每个文件但没有成功。有人知道怎么做吗?

谢谢!

2 个答案:

答案 0 :(得分:5)

使用mogrify命令处理多个文件。

mogrify -size 100x100 xc:black -gravity center -thumbnail 300x300 -composite *.jpg

另一种方法是在bash中迭代图像并使用与输出相同的名称来覆盖:

for f in *.jpg
do convert -size 100x100 xc:black -gravity center $f -thumbnail 300x300 -composite $f
done

答案 1 :(得分:0)

我想我总体上得到了它:

首先调整到您想要的高度,例如:至364px:

mogrify -resize x364 *.jpg

然后,例如你想获得546x364px的尺寸,这个:

mogrify -extent 546x364 -gravity center *.jpg

但是在原始大小为512x768的图像中,背景充满了白色,所以我尝试了

mogrify -extent 546x364 -gravity center -background black *.jpg

mogrify -extent 546x364 -gravity center -fill black *.jpg

但背景仍为白色: - (