Movatterモバイル変換


[0]ホーム

URL:


ソフトウェア
Jpegoptimを導入してJPG画像の容量を圧縮する
ソフトウェア
Windows7で特定のドライブ文字を使われないように予約しておく方法
プログラミング
やはりフルスクラッチでプログラミングするのは勉強になる。だがしかし…
サーバー
Apacheのmod_deflateでデータを圧縮して転送量を削減する
Webサービス
はてなブログで複数カテゴリーに対応したパンくずリストを生成するJavaScript
ソフトウェア
pngquantのインストール方法と使い方【PNG画像圧縮】
ソフトウェア
MagpieRSSでInvalid characterエラーが出るときの対処法
ソフトウェア
OptiPNGのインストール方法と使い方【PNG画像圧縮】
Webサービス
はてなブログを始めたらサイドバーのモジュールが削除できなくて早々に詰んだ話
サーバー
CentOS 7にApache最新版をソースからインストール
プログラミング
CentOS 7にPHP最新版をインストール
Webサービス
JPG・PNG・GIFなどの画像容量を圧縮できるWEBサービスまとめ
サーバー
PHPアップデート後にSegmentation faultが出てApacheを再起動できない場合の対処法
サーバー
Apacheで画像のファイル名に「twitter」が含まれていると強制的にMIMEタイプがtext/htmlになる謎現象
ソフトウェア
Google製JPEGエンコーダー「Guetzli」のインストール方法と使い方
ソフトウェア
Mozilla製JPEGエンコーダー「MozJPEG」のインストール方法と使い方
データベース
CentOS 7にMySQL最新版をインストール
サーバー
CentOS 7にMemcached最新版をインストールしてPHPと連携する
Jpegoptimを導入してJPG画像の容量を圧縮する

Jpegoptimを導入してJPG画像の容量を圧縮する

ブログやWebサービスをやってく上で問題となるのが画像の容量です。

そのままアップロードしていると無駄に転送量が増えたり、ブラウザの表示が遅くなる原因になります。

最近はJPEGminiなどのWebサービスがあり大変便利ですが、大量に画像があると非常に手間がかかります。

となると自前でやるしかないわけですが、そもそも画像圧縮サービスはどうやって容量削減しているのかを調べてみると、Compressor.ioというWebサービスがJpegoptimというソフトを使用していることが分かりました。

実際使用してみて結構良かったので、Jpegoptimのインストール方法と使い方をまとめてみます。

ちなみに、Jpegoptim以外の画像最適化ツールに関する記事も書いているのでよかったらどうぞ。

Jpegoptimをインストール

使用したOS

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

インストール手順

まずはJpegoptimのRPMパッケージを作成するためにrpmbuildをインストールします。

yum installrpm-build

続いて、rpmbuildの作業ディレクトリを作成。

mkdir-p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}

RPMパッケージ作成に必要なspecファイルをダウンロードする。

wget https://raw.githubusercontent.com/tjko/jpegoptim/master/redhat/jpegoptim.spec-P ~/rpmbuild/SPECS

Jpegoptim本体をダウンロード。

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

wget https://www.kokkonen.net/tjko/src/jpegoptim-1.4.6.tar.gz-P ~/rpmbuild/SOURCES

コンパイラとlibtoolがインストールされていない場合はインストールしておく。

yum install gccyum install libtool

Jpegoptimに必要なlibjpegをダウンロード。

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

ですが、Jpegoptimは旧バージョンの6bでないと動かないので注意してください。

wget http://www.ijg.org/files/jpegsrc.v6b.tar.gz

もし、下記のようなエラーが出るときはlibjpegのバージョンが間違っているのでインストールし直してください。

Wrong JPEG library version: library is 62, caller expects 90

libjpegをインストール。

バージョン6bはconfigureする際に–enable-sharedオプションを付けないと共有ライブラリが作成されません。

さらに、makeとmake installの際にLIBTOOL=libtoolをつけてlibtoolを使わせるようにします。

tar xzvf jpegsrc.v6b.tar.gzcd jpeg-6b./configure --enable-sharedmake LIBTOOL=libtoolmkdir -p /usr/local/man/man1make install LIBTOOL=libtool

JpegoptimのRPMパッケージを作成。

rpmbuild-ba ~/rpmbuild/SPECS/jpegoptim.spec

Jpegoptimがlibjpegを読み込めるようにシンボリックリンクを作成。

ln-s /usr/local/lib/libjpeg.so.62 /usr/lib64/libjpeg.so.62

作ったRPMパッケージを使いJpegoptimをインストール。

rpm-ivh--nodeps ~/rpmbuild/RPMS/x86_64/jpegoptim-1.4.6-1.x86_64.rpm

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

[root@localhost jpeg-6b]# jpegoptim -Vjpegoptim v1.4.6  x86_64-unknown-linux-gnu

Jpegoptimを使ってみる

Jpegoptimは下記のように入力していきます。

jpegoptim オプション ファイル名

画像に含まれる情報を削除する

JPG画像が持っているExifやコメントなどのデータを削除し、無劣化で容量を削減します。

全てのデータを削除する場合は–strip-allを付けて実行します。

jpegoptim--strip-all ファイル名

実行例

[root@localhost ~]# jpegoptim --strip-all /home/nao/デスクトップ/mba.jpg/home/nao/デスクトップ/mba.jpg 800x486 24bit N JFIF  [OK] 50410 --> 50410 bytes (0.00%), skipped.

個別に削除したい場合は次のようにします。

・コメントのみjpegoptim--strip-com ファイル名・Exifのみjpegoptim--strip-exif ファイル名・IPTCのみjpegoptim--strip-iptc ファイル名・ICCプロファイルのみjpegoptim--strip-icc ファイル名・XMPのみjpegoptim--strip-xmp ファイル名

逆にデータを削除しない場合は–strip-noneを付けます。(デフォルトでデータ保持されるのでまず使いません)

jpegoptim--strip-none ファイル名

品質を指定して圧縮

品質(クオリティ)を指定して画像を圧縮します。
指定した品質によって画質が劣化していきます。
品質は1~99の数字を入力してください。

jpegoptim-m品質 ファイル名またはjpegoptim --max=品質 ファイル名

実行例 品質50

[root@localhost ~]# jpegoptim -m50 /home/nao/デスクトップ/mba.jpg/home/nao/デスクトップ/mba.jpg 800x486 24bit N JFIF  [OK] 50410 --> 22044 bytes (56.27%), optimized.

実行例 品質1

[root@localhost ~]# jpegoptim -m1 /home/nao/デスクトップ/mba.jpg/home/nao/デスクトップ/mba.jpg 800x486 24bit N JFIF  [OK] 50410 --> 3794 bytes (92.47%), optimized.

サイズを指定して圧縮

画像をKB単位で指定して、そのサイズまで圧縮します。
指定したサイズによって画質が劣化していきます。
また、数字の後に%を付けることで圧縮率を指定することもできます。

jpegoptim-Sサイズ ファイル名またはjpegoptim--size=サイズ ファイル名

実行例 40KB

[root@localhost ~]# jpegoptim -S40 /home/nao/デスクトップ/mba.jpg/home/nao/デスクトップ/mba.jpg 800x486 24bit N JFIF  [OK] 50410 --> 41769 bytes (17.14%), optimized.

保存ディレクトリを指定

デフォルトは上書きされてしまうため、保存場所を指定することで上書きを防ぐことができます。

jpegoptim-d=ディレクトリパス ファイル名またはjpegoptim--dest=ディレクトリパス ファイル名

その他のオプション

指定したしきい値より圧縮された場合は処理をスキップ(圧縮率は1~99を入力)

jpegoptim-Tしきい値 ファイル名またはjpegoptim--threshold=しきい値 ファイル名

実行例

[root@localhost ~]# jpegoptim -S40 -T41 /home/nao/デスクトップ/mba.jpg/home/nao/デスクトップ/mba.jpg 800x486 24bit N JFIF  [OK] 50410 --> 41769 bytes (17.14%), skipped.

圧縮結果が元よりも大きい場合でも処理を強制する

jpegoptim -f ファイル名またはjpegoptim --force ファイル名

実行したときの結果だけ表示して圧縮処理はしない

jpegoptim -n ファイル名またはjpegoptim --noaction ファイル名

平均圧縮率と合計圧縮量を出力

jpegoptim-t ファイル名またはjpegoptim --totals ファイル名

実行例

[root@localhost ~]# jpegoptim -m70 -t /home/nao/デスクトップ/mba.jpg/home/nao/デスクトップ/mba.jpg 800x486 24bit N JFIF  [OK] 50410 --> 29203 bytes (42.07%), optimized.Average compression (1 files): 42.07% (21k)

処理結果を出力しない

jpegoptim-q ファイル名またはjpegoptim --quiet ファイル名

-dオプションを使用した時にディレクトリ先に同名ファイルが存在しても上書き

jpegoptim-o ファイル名またはjpegoptim--overwrite ファイル名

ファイルの変更時刻を保存する

jpegoptim -p ファイル名またはjpegoptim --preserve ファイル名

冗長モードを有効にする

jpegoptim -v ファイル名またはjpegoptim --verbose ファイル名

非プログレッシブで出力する

jpegoptim --all-normal ファイル名

プログレッシブで出力する

jpegoptim --all-progressive ファイル名

ヘルプを表示する

jpegoptim -hまたはjpegoptim --help

以上になります。

間違っている情報があればコメントいただけると幸いです。

関連記事

ソフトウェア

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

Googleが公開したオープンソースのJPEGエンコーダーが「Guetzli(グェツリ)」です。Guetzliを使うとlibjpegに比べて20~30%容量を小さくできるそうです。この記事ではGuetzliをLinu...
ソフトウェア

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

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

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

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

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

PNG画像の容量を圧縮できるエンコーダーにpngquantというものがあります。ファイルサイズを削減しつつ画質の劣化を最小限に抑えるアルゴリズムを採用しており、様々な環境で使用できるうえ処理速度が速いのが特徴となっているソフ...
ソフトウェア

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

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

コメント

コメントをキャンセル

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

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