私は約500画像を持っており、それぞれを6つの異なるサイズにサイズ変更する必要があります。スクリプトやソフトウェアはありますか。さらに、私のプラットフォームはbuntです。
ImageMagick を使用してみてください。まず、インストールします。
$ Sudo apt-get install imagemagick
次に、小さなbashスクリプトを作成して、6つのサイズに変換できます。
#!/bin/bash
# List all the formats you wish to have
SIZES="640x480 800x600 1024x768"
# pass directory as first argument to the script
# Use '.' (current directory) if no argument was passed
DIR=${1:-.}
find $DIR -type f | while read file; do
for size in $SIZES; do
# Resize and rename DSC01258.JPG into DSC01258_640x480.JPG, etc.
# Remove the ! after $size if you do not wish to force the format
convert -resize "${size}!" "$file" "${file%.*}_${size}.${file##*.}"
done
done
スクリプトを次のように保存します。 convert.sh
、および実行:
chmod +x convert.sh
./convert.sh /path/to/directory # path is optional, it takes '.' as default
編集:サイズ変更時にファイルを上書きしないようにスクリプトを編集しましたが、名前をたとえば次のように変更しました。 DSC01258_640x480.JPGで、ファイルの名前が実際に変更されているため、 mogrify
の代わりにconvertを使用します。また、変数を少しサニタイズしましたが、問題はありません。
スクリプトをpngファイルでテストしたところ、正常に機能しました。 ImageMagickでサポートされているすべての種類の画像形式で機能するはずです。
$ file wave_bible_bot/*
wave_bible_bot/wave_bible_bot1.png: PNG image, 516 x 308, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2.png: PNG image, 515 x 428, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3.png: PNG image, 565 x 384, 8-bit/color RGB, non-interlaced
$ ./resize.sh wave_bible_bot/
$ file wave_bible_bot/*
wave_bible_bot/wave_bible_bot1_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot1_640x480.png: PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot1_800x600.png: PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot1.png: PNG image, 516 x 308, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2_640x480.png: PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2_800x600.png: PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2.png: PNG image, 515 x 428, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3_640x480.png: PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3_800x600.png: PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3.png: PNG image, 565 x 384, 8-bit/color RGB, non-interlaced
Sathyaが述べたようにImageMagickをインストールする場合、nautilus-image-converter
と呼ばれるサイズ変更を簡単にするための素晴らしいGUIフロントエンドがあります。
それをインストールするには:
Sudo apt-get install nautilus-image-converter
Nautilusを再起動します(またはログアウトしてから再度ログインします)。次に示すように、コンテキストメニューに[画像のサイズ変更]と[画像の回転]が追加されます。
サイズを変更するすべての画像を強調表示して右クリックし、画像のサイズ変更を選択すると、次のインターフェイスが表示されます。
[追加]オプションを使用して、サイズ変更した画像にカスタム名を追加します。 1024x768などのサイズを追加することをお勧めします[〜#〜]または[〜#〜]異なるフォルダに画像のコピーを6つ作成してから、画像のサイズを変更するplace各フォルダの画像にオプションを追加して、サイズの異なる新しい画像で画像を上書きします。 画像のサイズを変更します選択した画像は常に上書きされるため、選択する内容に注意してください。
ImageMagickを使用できます:最初にImageMagickをインストールします
Sudo apt-get install imagemagick
次に、画像がある場所にCDを挿入します。
cd /path/to/where/images/are/stored
次に、Imagesizeに応じてディレクトリを作成します
mkdir /path/to/where/images/are/stored/size
変換したいディレクトリに画像をコピーします
cp /path/to/where/images/are/stored/* /path/to/where/images/are/stored/size
次に、ディレクトリを他のディレクトリに変更します
cp /path/to/where/images/are/stored/size
次に、ImageMagickライブラリが提供するmogrify
というツールを使用してサイズを変更します
mogrify -resize 640×480! *.jpg
これにより、すべてのサイズが640*480
に変更され、!
はアスペクト比を強制するように指示します。
私はBashスクリプトを知らないので、それほど自動化されていません。
mogrify
のマニュアルには、実際には convert
tool への参照がいくつかあるはずです。 ...私は約45分を検索しましたが、別の投稿に出くわして初めて正しい方向を見始めることができました。
他の人の利益のために、この行は私が必要としていたことを正確に実行しました。 (同じディレクトリにある)約50の2megから3megのJPGを取り、それらをすべて80から120kbに落としました。そしてもちろん、それは彼らの名前のすべてを「正確に」同じままにしました。
mogrify *.jpg -quality 75 -resize "640x480>" *
そして、また他の人の利益のために:
*.jpg
...ディレクトリ内のすべてのJPGに対してmogrifyコマンドを実行します。
-quality 75
... jpgの品質を75%に下げます。これは、オンラインでの表示に十分です。
-resize "640x480>"
...すべての画像のサイズが640x480に変更されます(最後に「>」があることに注意してください。これにより、画像は小さくなりますが、大きくはなりません。..引用符を忘れないでください。これらは重要です。
*
...そしてコマンドの最後でこれを忘れないでください。
Gimpにはバッチモードが付属しています。 GIMPバッチモード を参照してください。
Phatchをお勧めします。そのGUIは、imagemagickやnautilusが提供するものよりもはるかに柔軟性があり、スクリプトを作成する必要がある場合は、コマンドラインインターフェイスも備えています。あなたはそれをインストールすることができます
Sudo apt-get install phatch
使いやすいツールを作成しました: 画像のサイズ変更 。舞台裏でimagemagickを使用しています。インストールすると、Linuxデスクトップにアイコンが作成されます。 1つまたは複数の画像、またはその上にある画像のフォルダをドラッグアンドドロップすると、各画像のサイズが変更されたコピーが作成されます。デスクトップアイコンを右クリックすると、必要なサイズを簡単に変更できます。
コマンドラインツールではなくGUIをお探しの場合は、BIRをご覧ください: https://github.com/agronick/BIR