LoginSignup
4
2

More than 3 years have passed since last update.

複数画像をコマンド一発でリサイズ&フォーマット変換(jpg⇔pngなど)

Last updated at Posted at 2019-09-12

Macだとsipsコマンドが便利と知ったのでメモ。
png, jpg以外にもいろんなフォーマットに対応していてフリップやクロップも出来る。
ここではリサイズやフォーマット変換を紹介するが、詳しくはman sipsで確認頂きたい。

リサイズ

アスペクト比を保つ場合

高さ幅の最大値を指定(例えば600)したいなら

sips -Z 600 example.jpg

縦横いずれかの最大値を指定したいなら

sips --resampleWidth 600 example.jpg

--outで出力ファイル名を指定できる

sips --resampleWidth 600 before.jpg --out after.jpg

アスペクト比を保たない場合

縦横を400 x 300にしたいなら

sips --resampleHeightWidth 400 300 example.jpg

フォーマット変換

format (形式)で変換先のフォーマットを指定。
例えば、pngjpgなら

sips -s format png before.png --out after.jpg

リサイズ&フォーマット変換

一例

ディレクトリ直下に縦横サイズが1000超えてるjpgの画像がたくさんあり、それら全てをアスペクト保ったまま高さ幅を最大600くらいにした上で、pngに変換したい場合(長い)。

出力ファイルにnlコマンドで出した行番号をあてている。

ls | nl | while read x y;sips --resampleWidth 600 $y --out $x.jpg;sips -s format png $x.jpg --out $x.png;end

古いのが邪魔であれば rm *.jpg する。

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2