ngx_http_image_filter_module
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
配置参数启用。
该模块使用
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调整宽度高度; image_filter裁剪宽度高度; |
---|---|
默认: | image_filter off; |
语境: | 位置 |
设置要在图像上执行的转换类型:
off
关闭周围位置的模块处理。test
确保响应是JPEG,GIF,PNG或WebP格式的图像。否则,返回415(不支持的媒体类型)错误。size
以JSON格式输出关于图像的信息,例如:
{ "img" : { "width": 100, "height": 100, "type": "gif" } }
出现错误时,输出如下所示:
{}
rotate90
| 180
| 270
将图像逆时针旋转指定的度数。参数值可以包含变量。这种模式可以单独使用,也可以resize
与crop
转换一起使用。resizewidthheight
按比例将图像缩小至指定尺寸。要减少一个维度,可以将另一个维度指定为“ -
”。如果发生错误,服务器将返回代码415(不支持的介质类型)。参数值可以包含变量。与rotate
参数一起使用时,旋转发生在
缩小之后
。cropwidthheight
按比例将图像缩小到较大的一侧,并在
另一侧产生无关边缘。为了仅减少一个维度,可以将另一个维度指定为“-
”。如果发生错误,服务器将返回代码415(不支持的介质类型)。参数值可以包含变量。当与rotate
参数一起使用时,旋转发生在
缩减之前
。
句法: | image_filter_buffer大小; |
---|---|
默认: | image_filter_buffer 1M; |
语境: | http,服务器,位置 |
设置用于读取图像的缓冲区的最大大小。当超过大小时,服务器返回错误415(不支持的介质类型)。
句法: | image_filter_interlace开启 | 关闭; |
---|---|
默认: | image_filter_interlace off; |
语境: | http,服务器,位置 |
如果启用,最终图像将交错。对于JPEG,最终图像将采用“逐行JPEG”格式。
句法: | image_filter_jpeg_quality质量; |
---|---|
默认: | image_filter_jpeg_quality 75; |
语境: | http,服务器,位置 |
设置所需quality
的转换后的JPEG图像。可接受的值在1到100的范围内。较小的值通常意味着较低的图像质量和较少的数据传输。最大推荐值是95.参数值可以包含变量。
句法: | image_filter_sharpen百分比; |
---|---|
默认: | image_filter_sharpen 0; |
语境: | http,服务器,位置 |
增加最终图像的清晰度。锐度百分比可以超过100.零值禁用锐化。参数值可以包含变量。
句法: | image_filter_transparency 开启 | 关闭; |
---|---|
默认: | image_filter_transparency 开启; |
语境: | http,服务器,位置 |
定义在使用调色板指定的颜色转换GIF图像或PNG图像时是否应保留透明度。透明度的降低会导致质量更好的图像。PNG中的alpha通道透明度始终保留。
句法: | image_filter_webp_quality质量; |
---|---|
默认: | image_filter_webp_quality 80; |
语境: | http,服务器,位置 |
设置所需quality
的转换后的WebP图像。可接受的值在1到100的范围内。较小的值通常意味着较低的图像质量和较少的数据传输。参数值可以包含变量。