コマンドラインから画像ファイルを操作する

画像ファイルを操作する便利なコマンド。

始めにimagemagickをインストールする。

brew install imagemagick

 

・画像を回転する。

convertコマンドを使用する。

convert -rotate 回転の度数 返還前画像ファイル 返還後画像ファイル

回転の度数は小数点も指定出来る。

時計回りに回転

回転したい度数を指定

convert -rotate 1 oldfile.jpg newfile.jpg

f:id:k_igrs:20180221103603p:plain

反時計回りに回転

360度から回転したい度数を引いて指定

convert -rotate 359 oldfile.jpg newfile.jpg

f:id:k_igrs:20180221104434p:plain

時計回りに90度回転

convert -rotate 90 oldfile.jpg newfile.jpg

f:id:k_igrs:20180221104647p:plain

反時計回りに90度回転

convert -rotate 270 oldfile.jpg newfile.jpg

f:id:k_igrs:20180221104932p:plain

上下反転

convert -rotate 180 oldfile.jpg newfile.jpg

f:id:k_igrs:20180221105102p:plain

 

・画像の切り抜き

画像から中身を切り抜く。

convert -crop (w)x(h)+(x)+(y)  oldfile.jpg newfile.jpg

f:id:k_igrs:20180221105217p:plain

convert -crop 320x240+10+20  oldfile.jpg newfile.jpg

元の画像から左上を起点として横10dot,縦20dotの位置から320×240dotの画像を切り出す。

 

・複数のjpegファイルをpdfに変換

convert *.jpg newfile.pdf

 

・画像のフォーマットを変換する

sips -s format 画像フォーマット 変換前のファイル --out 返還後のファイル

画像フォーマットはjpeg | tiff | png | gif | jp2 | pict | bmp | qtif | psd | sgi| tga

sips -s format png oldfile.jpg --out newfile.png

jpegファイルをpngファイルに変換する。

 

・画像のサイズ変更する

アスペクト比を維持したまま縦のサイズを変更する。

sips --resampleHeight 変更後の縦のサイズ 変換前のファイル --out 返還後のファイル。

sips --resampleHeight 1024 oldfile.jpg --out newfile.jpg

アスペクト比を維持したまま横のサイズを変更する。

sips --resampleWidth 変更後の横のサイズ 変換前のファイル --out 返還後のファイル。

sips --resampleWidth 320 oldfile.jpg --out newfile.jpg

 

・ 画像ファイルの情報を取得する

画像ファイルの横幅を取得する

sips -g pixelWidth 画像ファイル

画像ファイルの縦幅を取得する

 sips -g pixelHeight 画像ファイル

画像のピクセルサイズを取得するには

sips -g pixelWidth 画像ファイル.jpg |sed -n '2p' | sed -e 's/^ *pix.*: //'

 として画像ファイルの左右nドットの切り取りを行うときの情報を入手できる。

 

・ 画像のクオリティを変更する。

sips -s formatOptions 40 infile.jpg --out outfile.jpg

infile.jpgを40%のクオリティにする。