web-dev-qa-db-ja.com

Imagemagickは切り抜きとサイズ変更を変換します


解像度が異なる1000個以上の画像(たとえば、1234x2122、4400x5212など)があり、すべてを100x100の固定サイズに変換したいので。

  1. 最初に、比率を維持して画像のサイズを変更し、100 xAまたはAx100を取得する必要があります。ここで、A> 100(画像の幅と高さ、画像の幅>高さ、および画像の高さ>幅によって異なります)。

  2. この画像を中心から100x100に切り抜きます

すべての画像に使用できる単純な変換コマンドはありますか?

28
Gor

ダウンスケールを統一するには、^操作で area-fill-resizegeometry modifier を使用します。中央をトリミングするには、 -extent with -gravity Center が機能します。

convert input.jpg -resize 100x100^ \
                  -gravity Center  \
                  -extent 100x100  \
        output.jpg

更新

Mark Setchellがコメントで指摘したように、 mogrify ユーティリティを利用してアイテムをバッチ変換できます。

mogrify -path ./path/to/write/results/ \
        -resize 100x100^ \
        -gravity Center  \
        -extent 100x100  \
        ./path/to/source/files/*

reminder リマインダー:Mogrifyは、-pathパラメータ。

38
emcconville