旋转目录中具有特定几何形状的所有图像

旋转目录中具有特定几何形状的所有图像

我想旋转目录中具有特定几何形状的所有图像。我可以使用 ImageMagick 来实现这一点吗?如果可以,您能帮我提供命令提示符的代码吗?

答案1

类似下面的内容应该可以满足您的需求:

for i in *.jpg
do
if [ $(identify -format "%[fx:w]x%[fx:h]\n" "$i") = 1920x1080 ]
then
convert "$i" -rotate 90 "${i%.jpg}_rotated.jpg"
fi
done

只需改变1920x1080设置你的所需大小,然后将整个代码片段复制并粘贴到终端窗口中在包含图像文件的目录中...

语法解释...

首先是结构

  1. 此代码片段的基础是for查找jpg特定目录中的所有文件的循环:

    for i in *.jpg
    do
    <Insert command here....>
    done
    

    但一些排除必须在运行命令之前进行,为此我们使用嵌套条件语句if...

  2. 第二个结构是一个if语句,其中重要的是包含test所需的 jpg 大小:

    if <Insert test here...>
    then
    <Insert command here...>
    fi
    

接下来for循环和if语句嵌套,并添加到混合中:

  1. 适当的测试,搜索满足要求大小的 jpg 文件:

    [ $(identify -format "%[fx:w]x%[fx:h]\n" "$i") = 1920x1080 ]
    
  2. 适当的命令,将这些 jpg 文件旋转 90 度:

    convert "$i" -rotate 90 "${i%.jpg}_rotated.jpg"
    

然后 Bash 魔法就起作用了 :)

相关内容