sipsで画像の処理をしてみる
macOSは組み込みのコマンドで画像処理をできる
sips コマンドで画像のリサイズをしよう。
横幅を600でリサイズ
sips --resampleWidth 600 --out output.jpg imput.jpg
ファイル形式を変更
sips --setProperty format png chair.jpeg --out hogehoge.bmp
exif情報も消す場合
例えばこのように、jpg → bmp → jpg
といったんbmp形式を経由してjpgにすると、exif情報を失わせることができる。webリソースとして画像を使うのであれば、exif情報は消しておきたいので有用な気がする。
sips --setProperty format bmp chair.jpeg --out tmp.bmp && \
sips --resampleWidth 600 --setProperty format jpeg $_ --out output.jpg && \
rm tmp.bmp
無理やりワンライナーにした
./images/..... に画像を配置して実行すれば配下のjpgを全てresizeexif削除済みのjpgに変換できる。jpg以外の拡張子の画像をリサイズしたいときは適時読み替えて欲しい.
ls | grep .jpg | xargs -I{} basename {} .jpg | \
xargs -I{} bash -c 'sips --setProperty format bmp {}.jpg --out {}.bmp && \
sips --resampleWidth 600 --setProperty format jpeg $_ --out resized_{}.jpg && \
rm {}.bmp'
(もっといい方法あれば教えて欲しい)