ngx_http_image_filter_module モジュール

設定例
ディレクティブ
     image_filter
     image_filter_buffer
     image_filter_interlace
     image_filter_jpeg_quality
     image_filter_sharpen
     image_filter_transparency
     image_filter_webp_quality

ngx_http_image_filter_moduleモジュール(0.7.54+) は JPEG, GIF, PNG および WebP フォーマットの画像を変形するフィルタです。

このモジュールはデフォルトではビルドされず、--with-http_image_filter_module configureパラメータを有効にする必要があります。

このモジュールは libgd ライブラリを利用します。利用可能な最新のライブラリを使うことをお勧めします。

WebP フォーマットはバージョン 1.11.6 から導入されました。画像をこのフォーマットに変換するには、libgd ライブラリがWebPサポートでコンパイルされなければなりません。

設定例

location /img/ {
    proxy_pass   http://backend;
    image_filter resize 150 100;
    image_filter rotate 90;
    error_page   415 = /empty;
}

location = /empty {
    empty_gif;
}

ディレクティブ

構文: image_filter off;
image_filter test;
image_filter size;
image_filter rotate 90 | 180 | 270;
image_filter resize width height;
image_filter crop width height;
デフォルト:
image_filter off;
コンテキスト: 場所

画像に行う変形の種類を設定します:

off
取り囲んでいるlocation内でモジュールの処理を止めます。
テスト
応答がJPEG, GIF, PNG または WebP フォーマットの画像であることを保証します。そうでなければ、415 (Unsupported Media Type)エラーが返されます。
size
画像の情報をJSON形式で出力します。例えば:
{ "img" : { "width": 100, "height": 100, "type": "gif" } }
エラーの場合には、出力は次のようになります:
{}
rotate 90|180|270
画像を指定した角度の時計回りに回転します。パラメータの値には変数を含めることができます。このモードは単独でも resizecrop変形と一緒でも使うことができます。
resize width height
指定されたサイズに画像を比例的に縮小します。一つの次元だけ縮小するには、もう片方の次元を"-"で指定します。エラーの場合には、サーバはコード415 (Unsupported Media Type)を返すでしょう。パラメータの値には変数を含めることができます。rotateパラメータと一緒に使う場合は、 縮小のafterに 回転が行われます。
crop width height
イメージの大きな側のサイズが比例的に縮小され、もう片方の側の外側の縁が刈り取られます。一つの次元だけ縮小するには、もう片方の次元を"-"で指定します。エラーの場合には、サーバはコード415 (Unsupported Media Type)を返すでしょう。パラメータの値には変数を含めることができます。rotateパラメータと一緒に使われた場合は、縮小のbeforeに回転が行われます。

構文: image_filter_buffer size;
デフォルト:
image_filter_buffer 1M;
コンテキスト: http, server, location

画像の読み込みに使われるバッファの最大サイズを設定します。サイズを超えた場合には、サーバはエラー415 (Unsupported Media Type)を返します。

構文: image_filter_interlace on | off;
デフォルト:
image_filter_interlace off;
コンテキスト: http, server, location

このディレクティブはバージョン1.3.15から導入されました。

有効にされると、最終的な画像はインタレースされます。JPEGの場合、最終的な画像は"progressive JPEG"フォーマットになるでしょう。

構文: image_filter_jpeg_quality quality;
デフォルト:
image_filter_jpeg_quality 75;
コンテキスト: http, server, location

変形されたJPEG画像の望ましいqualityを設定します。可能な値は1から100の範囲です。小さな値は通常低品質の画像と少ないデータ転送の両方を意味します。推奨される最大の値は95です。パラメータの値には変数を含めることができます。

構文: image_filter_sharpen percent;
デフォルト:
image_filter_sharpen 0;
コンテキスト: http, server, location

最終的な画像の鮮明さを増加します。鮮明度は100を超えることができます。0の値は鮮明化を無効にします。パラメータの値には変数を含めることができます。

構文: image_filter_transparency on|off;
デフォルト:
image_filter_transparency on;
コンテキスト: http, server, location

GIF画像またはPNG画像のパレットで指定された色の透明化をする時に透明度を保持するかどうかを定義します。透明化を無くすことは画像の質の向上に繋がります。PNGのアルファチャンネルの透明化は常に保持されます。

構文: image_filter_webp_quality quality;
デフォルト:
image_filter_webp_quality 80;
コンテキスト: http, server, location

このディレクティブはバージョン 1.11.6 から導入されました。

変形されたWebP画像の望ましいqualityを設定します。可能な値は1から100の範囲です。小さな値は通常低品質の画像と少ないデータ転送の両方を意味します。パラメータの値には変数を含めることができます。

TOP
inserted by FC2 system