web-dev-qa-db-ja.com

端末から画像を回転させる

たくさんの画像があるディレクトリを持っていますが、それらの向きが間違っています。画像を正しい方向に回転させたい(主に±90o)。画像(ショットウェルフォト)ビューアーを使用して、回転ボタンをクリックして個別に回転できますが、これは面倒です。

man shotwellshotwell --help-allを見ましたが、コマンドラインからrotateコマンドを呼び出す方法を説明するものは何もありません。

ターミナルからショットウェル(または他のビューア)の回転コマンドを呼び出す方法はありますか?または、画像を回転させる他の方法も歓迎します。

29
pranphy

純粋なbash実装を探している場合、ImageMagickのconvertコマンドが探しています:

for szFile in /path/*.png
do 
    convert "$szFile" -rotate 90 /tmp/"$(basename "$szFile")" ; 
done

上記は既存のファイルをそのまま残し、新しく回転したものを/tmpにコピーするので、他の場所に移動またはコピーするか、既存のファイルを置き換えることもできます変換後検証後

(そして、それは標準ソフトウェアであるため、Ubuntuのすべての最近のリリースで動作します)

34
Fabby
for file in *.JPG; do convert $file -rotate 90 rotated-$file; done

これにより、コピー回転 ----ファイルの名前が変更されます。

元のファイルをまだ手付かずに残したい場合、この方法はうまくいくかもしれません...

これは大文字と小文字が区別されることに注意してください。ファイルの名前が* .jpgの場合、それに応じて小文字(または* .png ...)に置き換えます。

25

インプレースで上書きしたい場合、ImageMagickスイートのmogrifyがこれを達成する最も簡単な方法のようです。

# counterclockwise:
mogrify -rotate -90 *.jpg

# clockwise:
mogrify -rotate 90 *.jpg
3
krlmlr

以下にその方法を示します。

  1. GThumbをインストールする

    Sudo apt-get install gthumb
    
  2. Nautilusを開き、画像ディレクトリに移動します。いずれかを右クリックして、Open with -> gthumbを選択します。

  3. viewメニューでBrowserを選択するか、 Esc キー。これにより、ディレクトリブラウザが開き、すべての画像が表示されます。

    enter image description here

  4. 押す Ctrl 回転する画像を選択するか、すべての画像を選択します Ctrl + A

  5. ツールバーで、Toolsを選択してから、好みに応じてRotate RightまたはRotate Leftを選択します。

    enter image description here

3
Parto

このコードをコピーして貼り付け、rotate.shとして保存できます

#!/bin/bash -e

CUR_DIR=$(pwd)
cd $1
for file in *.jpg
do
    convert $file -rotate 90 $file
done
cd $CUR_DIR

このファイルを保存したら、./rotate.sh folder_containing_imagesを使用してターミナルから実行します。

0
vin