まとめ系記事
MacでJPEG画像を簡単に圧縮する方法
スポンサーリンク

JPEG画像を圧縮する場面が増えてきたのでサクッと行える方法を紹介します。
今回使用するのは定番JPEG画像圧縮ツールの「jpegoptim」です。
ターミナルの作業も含みますのでよくわからない場合は下記の記事で基本情報を説明しています。

jpegoptimをダウンロード

まずはツールをダウンロードします。
Homebrewを使用する方法を説明します。Homebrewの導入方法は下記の記事を参考にしてください。

下記のコマンドでダウンロード可能です。

brew install jpegoptim

下記のコマンドでjpegoptimのバージョンが表示されていればインストール完了です。

jpegoptim -V

jpegoptim使用方法

基本的な使用方法は下記のようになります。

jpegoptim [オプション] [ファイル名]

jpegoptimには多数のオプションが用意されています。
以下によく使用するであろうオプションを説明します。

圧縮率を指定

一番大事な圧縮率を指定するオプションです。
クオリティを指定か、サイズを指定する方法があります。

クオリティを指定して圧縮

「-m」オプションでクオリティを指定して圧縮します。
0〜100で指定が可能で、数値が下がるとより圧縮され画像も劣化します。

クオリティ指定の例

jpegoptim -m(0〜100) ファイル名

下記は実際のファイルを圧縮した例です。

-m50で圧縮実行

jpegoptim -m50 test.jpeg 
test.jpeg 400x602 24bit N ICC JFIF  [OK] 53064 --> 22571 bytes (57.46%), optimized.
サイズを指定して圧縮

「-S」オプションで圧縮後のファイルサイズを指定して圧縮します。
指定できる値はKB(キロバイト)になります。

サイズ指定の例

jpegoptim -S(KB単位でサイズ数値を指定) ファイル名

下記は実際のファイルを圧縮した例です。

-S10で圧縮実行

jpegoptim -S10 test.jpeg 
test.jpeg 400x602 24bit N ICC JFIF  [OK] 53064 --> 10972 bytes (79.32%), optimized.

また、数値の後に「%」をつけると、圧縮率を指定することもできます。

-S20%で圧縮実行

jpegoptim -S20% test.jpeg 
test.jpeg 400x602 24bit N ICC JFIF  [OK] 53064 --> 10972 bytes (79.32%), optimized.

保存先の指定

「-d」オプションで保存場所を指定できます。
デフォルトの設定ではオリジナルファイルを上書きするので残しておきたい場合は指定しましょう。

保存先指定の例

jpegoptim -d 保存先パス ファイル名

下記はデスクトップにある圧縮後というフォルダへ保存する例です。

デスクトップ圧縮後フォルダへの保存

jpegoptim -d /Users/D-Box/Desktop/圧縮後/ test.jpeg  
jpegoptim: skipping directory: /Users/D-Box/Desktop/圧縮後/
test.jpeg 400x602 24bit N ICC JFIF  [OK] 53064 --> 52386 bytes (1.28%), optimized.

保存ファイル名を変更

「--stdout」オプションで圧縮後のファイル名を変更できます。
デフォルトの設定では圧縮前のファイル名と同じ名前で保存されます。

ファイル名変更の例

jpegoptim --stdout ファイル名 > 変更後ファイル名

下記は「test.jpeg」を「圧縮後.jpeg」へ変更する例です。

圧縮後.jpegへファイル名変更

jpegoptim --stdout test.jpeg > 圧縮後.jpeg
test.jpeg 400x602 24bit N ICC JFIF  [OK] 53064 --> 52386 bytes (1.28%), optimized.

画像情報を削除

「--strip-all」オプションでExifなどのメタ情報を削除し微小ながらサイズが小さくなります。

メタ情報削除例

jpegoptim --strip-all ファイル名

上記ではメタ情報を一括で削除しますが、オプション指定すれば個別に削除することもできます。

メタ情報個別削除オプション例

--strip-com ⬅︎コメント
--strip-exif ⬅︎Exif
--strip-iptc ⬅︎IPTC
--strip-icc ⬅︎ICC
--strip-xmp ⬅︎XMP

画像比較

jpegoptimコマンドで主に使用するオプションは以上です。
以下は参考に圧縮率の違いによる画像劣化具合を載せていきます。

-m80で圧縮

圧縮前圧縮後80

-m60で圧縮

圧縮前圧縮後60

-m40で圧縮

圧縮前圧縮後40

-m20で圧縮

圧縮前圧縮後20

画像によって劣化具合も変わるかもしれませんが、私は-m70くらいで落ち着いています。
-m20だと明らかに劣化が激しいですね。

より詳しいオプションを知りたければman jpegoptimjpegoptim -hで詳細を確認できます。

Automatorを使用してコンテキストメニューやフォルダアクションに組み込む

今回はjpegoptimコマンドをより簡単に使用するために、右クリック➡︎コンテキストメニューやフォルダアクションに組み込みたいと思います。
手順は結構簡単なので是非お試しください。
基本的なAutomatorの設定手順はPNG画像を圧縮する方法と同じなので下記の記事を参考にしてください。

Automator用のコマンドを用意

Automatorへ組み込む際のコマンドラインは以下を入力します。
コマンド内容はフォルダアクション、コンテキストメニューから実行する場合も同じです。

Automator用jpegoptimコマンド

for f in "$@"
do
	echo "$f"
done
/usr/local/bin/jpegoptim --strip-all --max=70 "$@"

入力後はこんな感じになります。

Automatorjpeg画像圧縮設定画面

右クリックからも使用できてとても便利です。

Automatorコンテキストメニューからjpeg画像圧縮

コンテキストメニューにサブメニューが作成されてしまって、サービスへの階層が深くなって困るという場合は下記の記事が参考になるかと思います。

以上になります。
これでJPEG画像の圧縮もだいぶ効率化できたと思います。
参考になれば幸いです。

スポンサーリンク

この記事が気に入ったら
D-Boxをフォロー

新しい情報をお知らせします。

おすすめの記事