Movatterモバイル変換


[0]ホーム

URL:


サーバー
Apacheのmod_deflateでデータを圧縮して転送量を削減する
ソフトウェア
Windows7で特定のドライブ文字を使われないように予約しておく方法
プログラミング
やはりフルスクラッチでプログラミングするのは勉強になる。だがしかし…
Webサービス
はてなブログで複数カテゴリーに対応したパンくずリストを生成するJavaScript
ソフトウェア
OptiPNGのインストール方法と使い方【PNG画像圧縮】
プログラミング
CentOS 7にPHP最新版をインストール
ソフトウェア
Jpegoptimを導入してJPG画像の容量を圧縮する
Webサービス
はてなブログProへ切り替えても残る過去記事のキーワードリンクを消す方法
データベース
MySQL5.7.6以降での初期パスワード確認方法
サーバー
CentOS 7にApache最新版をソースからインストール
サーバー
Apacheで画像のファイル名に「twitter」が含まれていると強制的にMIMEタイプがtext/htmlになる謎現象
サーバー
CentOS 7にMemcached最新版をインストールしてPHPと連携する
ソフトウェア
jpegtranのインストール方法と使い方【JPG画像最適化】
Webサービス
はてなブログを始めたらサイドバーのモジュールが削除できなくて早々に詰んだ話
Webサービス
JPG・PNG・GIFなどの画像容量を圧縮できるWEBサービスまとめ
ソフトウェア
pngquantのインストール方法と使い方【PNG画像圧縮】
サーバー
PHPアップデート後にSegmentation faultが出てApacheを再起動できない場合の対処法
ソフトウェア
WordPressをPHP7にアップデートして使う際はMySQL拡張に注意
OptiPNGのインストール方法と使い方【PNG画像圧縮】

OptiPNGのインストール方法と使い方【PNG画像圧縮】

OptiPNGはPNG画像を最適化して容量を圧縮できるオープンソースソフトウェアです。

OptiPNG Home Page
optipng.sourceforge.net

BMP・GIF・PNM・TIFFからPNGへ変換・圧縮できたり、細かく最適化の設定を決められたりとかなり高性能なツールになっています。

この記事ではOptiPNGのインストール方法と使い方について詳しく解説していきます。

目次

OptiPNGをインストール

使用したOS

[root@localhost ~]# cat /etc/redhat-releaseCentOS Linux release 7.6.1810 (Core)

インストール手順

gccがない場合はインストールします。

yum install gcc

OptiPNGをダウンロードします。

記事更新時点での最新バージョンは0.7.7です。

wget http://prdownloads.sourceforge.net/optipng/optipng-0.7.7.tar.gz

ダウンロードしたファイルを解凍してディレクトリに移動します。

tar xzvf optipng-0.7.7.tar.gzcd xzvf optipng-0.7.7

コンパイルしてインストールします。

./configuremakemake install

コマンドを入力してバージョン情報が出力されればインストールは完了です。

[root@localhost ~]# optipng -versionOptiPNG version 0.7.7Copyright (C) 2001-2017 Cosmin Truta and the Contributing Authors.This program is open-source software. See LICENSE for more details.Portions of this software are based in part on the work of:Jean-loup Gailly and Mark Adler (zlib)Glenn Randers-Pehrson and the PNG Development Group (libpng)Miyasaka Masaru (BMP support)David Koblas (GIF support)Using libpng version 1.6.34 and zlib version 1.2.11-optipng

OptiPNGの使い方

使用する画像(384KB)

最適化レベルを設定する

optipng -o レベル(0~7) ファイル名

デフォルトの数値は2になっています。

レベルが高くなるほど最適化され容量が圧縮されますが処理に時間がかかります。

最適化レベル1(344KB)

最適化レベル7(342KB)

レベル1で約10%の容量圧縮に成功しています。

レベル7の方はレベル1とあまり差がなく処理に時間がかかっていました。

しかしどちらも元の画像と見た目上の変化はありません。

尚、最適化オプションは以下のように設定されます。

レベル0 -o1 -nx -nz (0 or 1 trials)レベル1 -zc9 -zm8 -zs0 -f0 or -zc9 -zm8 -zs1 -f5 (1 trial)レベル2 -zc9 -zm8 -zs0-3 -f0,5 (8 trials)レベル3 -zc9 -zm8-9 -zs0-3 -f0,5(16 trials)レベル4 -zc9 -zm8 -zs0-3 -f0-5 (24 trials)レベル5 -zc9 -zm8-9 -zs0-3 -f0-5(48 trials)レベル6 -zc1-9 -zm8 -zs0-3 -f0-5 (120 trials)レベル7 -zc1-9 -zm8-9 -zs0-3 -f0-5 (240 trials)

冗長モードで実行する

optipng -v ファイル名

ファイル名を指定しなければバージョン情報が表示されます。

実行例

[root@localhost ~]# optipng -v optipng-cat.pngOptiPNG version 0.7.7Copyright (C) 2001-2017 Cosmin Truta and the Contributing Authors.** Processing: optipng-cat.png800x400 pixels, 3x8 bits/pixel, RGBInput IDAT size = 351062 bytesInput file size = 351177 bytesTrying:zc = 9 zm = 8 zs = 0 f = 0 IDAT too bigzc = 9 zm = 8 zs = 1 f = 0 IDAT too bigzc = 1 zm = 8 zs = 2 f = 0 IDAT too bigzc = 9 zm = 8 zs = 3 f = 0 IDAT too bigzc = 9 zm = 8 zs = 0 f = 5 IDAT too bigzc = 9 zm = 8 zs = 1 f = 5 IDAT too bigzc = 1 zm = 8 zs = 2 f = 5 IDAT too bigzc = 9 zm = 8 zs = 3 f = 5 IDAT too bigoptipng-cat.png is already optimized.** Status report1 file(s) have been processed.

バックアップを保存する

optipng -backup ファイル名またはoptipng -keep ファイル名

このオプションを付けて実行すると、使用した画像のファイル名の末尾に「.bak」が付いて保存されます。

付けない場合は元画像が消えてしまうので注意が必要です。

上書き保存する

optipng -clobber ファイル名

同名のファイルが存在しても処理を実行し上書き保存します。

ファイル名を変更せずに-backupオプションを付けて実行を繰り返すとエラーが起きるので、-clobberオプションを付ける必要があります。

Error: Can't back up the existing output file

エラーを修正する

optipng -fix ファイル名

エラーが発生している画像の修正を試みます。

ただし、必ずしもこのオプションで直るわけではありません。

また、最適化によるファイルサイズ削減よりもエラーの修復が優先されます。

エラーがある画像はこのオプションを付けないと処理が実行されません。

強制的にファイルを書き込む

optipng -force ファイル名

ファイルサイズが元の画像よりも大きくなってしまった場合など、通常は処理が中断される状態でも強制的に処理を実行しファイルを書き込みます。

ファイル属性を保存する

optipng -preserve ファイル名

タイムスタンプやアクセス権などのファイル属性を保持します。

クワイエットモードで実行する

optipng -quiet ファイル名またはoptipng -silent ファイル名

処理実行時にメッセージを出力しないようにします。

シュミレーションモードで実行する

optipng -simulate ファイル名

このオプションを使用するとファイルは出力せずに最適化を試すことができます。

出力ファイル名を指定する

optipng -out 出力ファイル名 ファイル名

処理した画像のファイル名を指定します。

元の画像と同じファイル名を指定した場合は上書きされます。

このオプションを使用する際は複数の画像を入力することはできません。

出力ディレクトリを指定する

optipng -dir 出力ディレクトリ ファイル名

処理した画像を保存するディレクトリを指定します。

ログを保存する

optipng -log ログファイル名 ファイル名

実行ログを保存します。

ログファイルの拡張子は「.log」でなければなりません。

このオプションは推奨されておらず将来削除される予定です。

オプションスイッチの解析を停止する

optipng -- ファイル名

このオプションを使用すると、「–」以降に付いているオプションは無視するようになります。

例えば、

optipng -- -log test.log -dir /img optipng-cat.png

上記コマンドだとログファイルは生成されませんが、

optipng -log test.log -- -dir /img optipng-cat.png

こちらはログファイルが生成されます。

GIFアニメーションから画像を切り取る

optipng -snip ファイル名

切り取る画像の指定はできません。

一番最初の画像、または一番大きな画像が選ばれます。

メタデータを削除する

optipng -strip <削除するデータ> ファイル名

「all」にすることで全てのメタデータを削除可能です。

最適化オプション

詳細な設定で最適化したい場合は下記のオプションを使用します。

PNGデルタフィルター

optipng -f <0-5> ファイル名

デフォルトは0,5です。

PNGインターレースタイプ

optipng -i <0-1> ファイル名

zlib圧縮レベル

optipng -zc <1~9> ファイル名

デフォルトは9です。

zlibメモリレベル

optipng -zm <1~9> ファイル名

デフォルトは8です。

zlib圧縮ストラテジ

optipng -zs <0-3> ファイル名

デフォルトは0-3です。

zlibウィンドウサイズ

optipng -zw <size(256,512,1k,2k,4k,8k,16k,32k)> ファイル名

IDATレポート作成

optipng -full ファイル名

IDATは画像データそのものが格納されているチャンクのことです。

このオプションを使用すると処理速度が低下する可能性があります。

ビット深度を減少させない

optipng -nb ファイル名

カラータイプを減少させない

optipng -nc ファイル名

パレットを減少させない

optipng -np ファイル名

全て減少させない

optipng -nx ファイル名

このオプションひとつで-nb、-nc、-npが適用されます。

IDATを再コーティングしない

optipng -nz ファイル名

このオプションはPNG画像にのみ適用可能です。

さいごに

OptiPNGはインストールも簡単で最適化も容易、状況に合わせて複雑な設定も可能なのでユーザーのスキルを問わずに使用できるソフトウェアという印象です。

今回使った画像では約10%の削減しかできなかったものの、見た目の劣化が全くなかったので悪くないと思います。

画像によっては2~3割程度の容量削減も可能なようなので、PNG画像を最適化したい人はぜひOptiPNGを使ってみてください。

関連記事

ソフトウェア

MagpieRSSでInvalid characterエラーが出るときの対処法

PHPでのRSSパーサーとしてMagpieRSSを使用しているのですが、次のようなエラーを吐くことが多々あります。Warning: MagpieRSS: Failed to parse RSS file. (Invalid charac...
ソフトウェア

Mozilla製JPEGエンコーダー「MozJPEG」のインストール方法と使い方

ウェブブラウザ「Firefox」やメールソフト「Thunderbird」を開発しているMozillaが「MozJPEG」というJPEGエンコーダーを公開しています。画像容量を小さくする新しい技術やファイルフォーマットは定期的...
ソフトウェア

WordPressをPHP7にアップデートして使う際はMySQL拡張に注意

PHP7では大幅な性能改善や機能の追加・廃止がされましたが、システムによってはアップデートすると正常に動かなくなってしまうことがあります。WordPressも影響を受けていて、環境によっては動かなくなることがあるため対策が必...
ソフトウェア

Windows7で特定のドライブ文字を使われないように予約しておく方法

WindowsにはHDDやUSBメモリなどを識別するためにドライブ文字(あるいはドライブレター)というものがあります。私のパソコンには常に大量のHDDが接続しており、HDD毎に決まったドライブ文字があるため何かの拍子に横取りされると...
ソフトウェア

jpegtranのインストール方法と使い方【JPG画像最適化】

jpegtranはJPEG画像を最適化できるコマンドラインツールです。jpegtranは”圧縮”ではなく”最適化”なので、容量を凄く減らせるわけではないですが画質が劣化することがないのが利点となっています。また、容量の削減以...

コメント

  1. なこはより:

    参考にさせていただきました。

コメントをキャンセル

メールアドレスが公開されることはありません。

CAPTCHA


プロフィール

検索

人気記事

ソフトウェア
jpegtranのインストール方法と使い方【JPG画像最適化】
2019.03.072019.04.07
ソフトウェア
Jpegoptimを導入してJPG画像の容量を圧縮する
2014.08.232019.05.07
ソフトウェア
Mozilla製JPEGエンコーダー「MozJPEG」のインストール方法と使い方
2019.03.312019.04.07
ソフトウェア
OptiPNGのインストール方法と使い方【PNG画像圧縮】
2019.04.29
プログラミング
CentOS 7にPHP最新版をインストール
2015.05.102019.02.19
ソフトウェア
Google製JPEGエンコーダー「Guetzli」のインストール方法と使い方
2019.03.13
ソフトウェア
Windows7で特定のドライブ文字を使われないように予約しておく方法
2019.05.26
Webサービス
はてなブログを始めたらサイドバーのモジュールが削除できなくて早々に詰んだ話
2014.08.212019.02.18
ソフトウェア
pngquantのインストール方法と使い方【PNG画像圧縮】
2019.04.07
データベース
CentOS 7にPostgreSQL最新版をインストール
2015.04.262019.02.19

新着記事

ソフトウェア
Windows7で特定のドライブ文字を使われないように予約しておく方法
2019.05.26
ソフトウェア
OptiPNGのインストール方法と使い方【PNG画像圧縮】
2019.04.29
ソフトウェア
pngquantのインストール方法と使い方【PNG画像圧縮】
2019.04.07
ソフトウェア
Mozilla製JPEGエンコーダー「MozJPEG」のインストール方法と使い方
2019.03.312019.04.07
ソフトウェア
Google製JPEGエンコーダー「Guetzli」のインストール方法と使い方
2019.03.13
ソフトウェア
jpegtranのインストール方法と使い方【JPG画像最適化】
2019.03.072019.04.07
Webサービス
JPG・PNG・GIFなどの画像容量を圧縮できるWEBサービスまとめ
2019.02.272019.05.07
サーバー
PHPアップデート後にSegmentation faultが出てApacheを再起動できない場合の対処法
2016.06.132019.02.20
ソフトウェア
WordPressをPHP7にアップデートして使う際はMySQL拡張に注意
2016.06.102019.02.19
未分類
勢いでJawbone UP2を買って分かった5つのこと
2016.05.272019.02.19

カテゴリー

タグ

画像圧縮CentOSApachePHPはてなブログMySQLVeraCryptWindows7MemcachedMagpieRSSJpegoptimWordPressPostgreSQL

アーカイブ

ホーム
トップ

プロフィール

検索

人気記事

ソフトウェア
jpegtranのインストール方法と使い方【JPG画像最適化】
2019.03.072019.04.07
ソフトウェア
Jpegoptimを導入してJPG画像の容量を圧縮する
2014.08.232019.05.07
ソフトウェア
Mozilla製JPEGエンコーダー「MozJPEG」のインストール方法と使い方
2019.03.312019.04.07
ソフトウェア
OptiPNGのインストール方法と使い方【PNG画像圧縮】
2019.04.29
プログラミング
CentOS 7にPHP最新版をインストール
2015.05.102019.02.19
ソフトウェア
Google製JPEGエンコーダー「Guetzli」のインストール方法と使い方
2019.03.13
ソフトウェア
Windows7で特定のドライブ文字を使われないように予約しておく方法
2019.05.26
Webサービス
はてなブログを始めたらサイドバーのモジュールが削除できなくて早々に詰んだ話
2014.08.212019.02.18
ソフトウェア
pngquantのインストール方法と使い方【PNG画像圧縮】
2019.04.07
データベース
CentOS 7にPostgreSQL最新版をインストール
2015.04.262019.02.19

新着記事

ソフトウェア
Windows7で特定のドライブ文字を使われないように予約しておく方法
2019.05.26
ソフトウェア
OptiPNGのインストール方法と使い方【PNG画像圧縮】
2019.04.29
ソフトウェア
pngquantのインストール方法と使い方【PNG画像圧縮】
2019.04.07
ソフトウェア
Mozilla製JPEGエンコーダー「MozJPEG」のインストール方法と使い方
2019.03.312019.04.07
ソフトウェア
Google製JPEGエンコーダー「Guetzli」のインストール方法と使い方
2019.03.13
ソフトウェア
jpegtranのインストール方法と使い方【JPG画像最適化】
2019.03.072019.04.07
Webサービス
JPG・PNG・GIFなどの画像容量を圧縮できるWEBサービスまとめ
2019.02.272019.05.07
サーバー
PHPアップデート後にSegmentation faultが出てApacheを再起動できない場合の対処法
2016.06.132019.02.20
ソフトウェア
WordPressをPHP7にアップデートして使う際はMySQL拡張に注意
2016.06.102019.02.19
未分類
勢いでJawbone UP2を買って分かった5つのこと
2016.05.272019.02.19

カテゴリー

タグ

画像圧縮CentOSApachePHPはてなブログMySQLVeraCryptWindows7MemcachedMagpieRSSJpegoptimWordPressPostgreSQL

アーカイブ

タイトルとURLをコピーしました

[8]
ページ先頭

©2009-2025 Movatter.jp