在一个命令中使用ImageMagick转换多个图像

时间:2014-03-19 08:44:53

标签: image unix imagemagick

我想将带有imageMagick的多个图像转换为旋转图像(每个图像具有不同的方向:步长= 10度)。 仅为一个图像执行此操作的命令行如下:

convert image.png -rotate 10 10-image.png

但我怎么能为几张图片做到这一点?

PS:我有ubuntu 12.04 LTS

1 个答案:

答案 0 :(得分:0)

您可以使用shell脚本中的for循环编写此脚本,但我对您的问题的某一点并不完全清楚:

每个旋转步骤是否有不同的源图像?如果是这样,像这样的循环(a*.png表示源图像):

#!/bin/bash -e
r=0
for im in a*.png; do
    let "r=r+10"
    convert "$im" -rotate "$r" "$r-image.png"
done

另一方面,如果您想要制作多个旋转版本的单个源图像,则会出现如下循环:

#!/bin/bash -e
r=0
while (( $r < 100 )); do
    let "r=r+10"
    convert image.png -rotate "$r" "$r-image.png"
done