ImageMagick でサムネイルやプレビュー画像を生成

写真のサムネイルやプレビュー画像をまとめて作ろうと思って調べたら,ImageMagick でとても簡単にできたのでメモ.

今回作るサムネイルは 75x75 ピクセルで,元の写真はいろいろだったので,適当に縮めてセンタリングして… とか考えてたんだけど,これって convert コマンド一発でできるのね.オプションをフィルタ的に並べて書けるとは知らなかった.さすが ImageMagick.

プレビュー画像の方は,縦か横の長い方を 500 ピクセルにするだけなので,まずはこちらから.

  1. 横が 1000px になるようにリサイズ
  2. 縦が 1000px 以上あったら,1000px になるようにリサイズ (これで縦か横のどちらかが 1000px になる)
  3. 半分に縮小 (長辺が 500px になる)

convert -resize '1000x' \
        -resize 'x1000>' \
        -resize '50%' \
        'file1.jpg' 'file1_s.jpg'

次にサムネイル画像.こちらは縮小して正方形に切る.

  1. 横が 150px になるようにリサイズ
  2. 縦が 150px に満たなかったら,150px になるようにリサイズ (これで縦か横のどちらも 150px 以上になる)
  3. 半分に縮小 (短辺が 75px になる)
  4. 次の操作基準点を真ん中に設定.
  5. 75x75 ピクセルの領域を切り出す

convert -resize '150x' \
        -resize 'x150<' \
        -resize '50%' \
        -gravity 'center' \
        -crop '75x75+0+0' \
        'file1.jpg' 'file1_t.jpg'

よくできてるなぁ.