HOME >> Tips >> Microsoft Windows

PNGファイルの画質を変えずにサイズを圧縮する方法(OptiPNG)

2014/10/15
文書番号:20055


PNG形式の画像ファイルを画質を落とさずにファイルサイズを圧縮する方法です。

「OptiPNG」というツールを使ってファイルを圧縮する方法です。


【OptiPNG を入手する】

  1. 以下のサイトへアクセスします。
    http://optipng.sourceforge.net/
    「optiping-0.7.5-win32.zip のダウンロード」のリンクをクリックします。
    ※バージョンが変わると数字は変わると思います。

    クリックで拡大
  2. 保存ボタンをクリックして保存します。

    クリックで拡大
  3. ダウンロードしたzipファイルを解凍します。

    クリックで拡大
  4. 解凍したフォルダ内の「optipng.exe」ファイルを使います。

    クリックで拡大

【PNG ファイルを圧縮する】


  1. 「OptiPNG」は特にインストールなどは必要ありません。
    圧縮したいPNGファイルを「OptiPNG.EXE」へドラッグします。
    コマンドプロンプトで進捗が表示され、しばらく待つとファイルの圧縮が完了します。

    クリックで拡大

【OptiPNG をコマンドで実行する】

  1. 「OptiPNG.EXE」をコマンドで実行します。
    
    OptiPNG.EXE 圧縮するファイルのフルパス
    
    例:OptiPNG.exe C:\temp\caot_001.png
    									
このページの画像(サンプルのスナップショット)を圧縮してみたところ以下のような結果になりました。
ファイル 圧縮前 圧縮後 差異 圧縮率
capt_001.png 123 KB 103 KB -20 KB 84 %
capt_002.png 6.13 KB 5.17 KB -0.96 KB 84 %
capt_003.png 4.25 KB 3.91 KB -0.34 KB 92 %
capt_004.png 74.2 KB 62.0 KB -12.2 KB 84 %
capt_005.png 55.5 KB 35.9 KB -19.6 KB 65 %
今回はもともとサイズが小さいファイルばかりだったのでサイズとしては小さくなりませんでしたが、それでも80%程度にはなっています。
大きいサイズのファイルの場合には効果は大きいと思います。

【OptiPNG と PNGOUT を比較してみる】

タスクスケジューラのイベントログを有効にする方法 にあるサンプルのスナップショット画像を OptiPNG と PNGOUT で圧縮して結果を比べてみました。

それぞれのツールでの実行結果が異なるので処理内容も異なるのかと思い、OptiPNG で処理後、PINGOUTで圧縮(その逆も)してみました。

OptiPNGで圧縮                                   OptiPNGで圧縮後、PINGOUTで圧縮
ファイル 圧縮前 OptiPNG 差異 圧縮率 OptiPNG → PINGOUT 差異 圧縮率
capt_001.png 61 KB 54.1 KB -6.9 KB 88.7 % 54.1 KB -6.9 KB 88.7 %
capt_002.png 29.3 KB 23.3 KB -6 KB 79.5 % 21.2 KB -8.1 KB 72.4 %
capt_003.png 107 KB 95.4 KB -11.6 KB 89.2 % 87.4 KB -19.6 KB 81.7 %
capt_004.png 126 KB 114 KB -12 KB 90.5 % 111 KB -15 KB 88.1 %
capt_005.png 54.9 KB 38.3 KB -16.6 KB 69.8 % 33.7 KB -21.2 KB 61.4 %
capt_006.png 55.2 KB 39.1 KB -16.1 KB 70.8 % 34.6 KB -20.6 KB 62.7 %
capt_007.png 103 KB 84.7 KB -18.3 KB 82.2 % 84.1 KB -18.9 KB 81.7 %
平均 81.5 % 76.6 %

PINGOUTで圧縮                                   PINGOUTで圧縮後、OptiPNGで圧縮
ファイル 圧縮前 PNGOUT 差異 圧縮率 PINGOUT → OptiPNG 差異 圧縮率
capt_001.png 61 KB 51.1 KB -9.9 KB 83.8 % 51.1 KB -9.9 KB 83.8 %
capt_002.png 29.3 KB 26.1 KB -3.2 KB 89.1 % 23.3 KB -6 KB 79.5 %
capt_003.png 107 KB 93.6 KB -13.4 KB 87.5 % 93.6 KB -13.4 KB 87.5 %
capt_004.png 126 KB 107 KB -19 KB 84.9 % 107 KB -19 KB 84.9 %
capt_005.png 54.9 KB 46.6 KB -8.3 KB 84.9 % 38.2 KB -16.7 KB 69.6 %
capt_006.png 55.2 KB 47 KB -8.2 KB 85.1 % 39.1 KB -16.1 KB 70.8 %
capt_007.png 103 KB 84.7 KB -18.3 KB 82.2 % 84.7 KB -18.3 KB 82.2 %
平均 85.4 % 79.8 %
処理時間は OptiPNG の方が速いですがどちらが効果が大きいか画像ファイルによって異なるようです。
今回の結果ではOptiPNG で処理後に PNGOUT で圧縮する方法が効果的のようでした。
上記の一覧はひとつの参考程度にしてください。