深入nginx之《利用Nginx进行图片切割》

深入nginx之《利用Nginx进行图片切割》

lee 川西阳光里 昨天

利用Nginx进行图片切割

    Nginx可以使用ngx_http_image_filter_module来处理图片的切割裁剪需求,这为动态处理图片提供了支持。

 

    安装方式: 只需要在编译Nginx的时候,添加--with-http_image_filter_module 即可。依赖库:libgd(gd-devel),在centos系统下yum安装即可(推荐使用最新版的)。

 

    image_filter图片处理

        指令: image_filter

        语法:

        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;

    执行阶段: location

    含义:

        image_filter off;   关闭此区域图片处理功能,默认是关闭的。

        image_filter test;  确保图片类型是JPEG, GIF, PNG, or WebP,否则返回415错误。

        image_filter size;  以JSON格式输出有关图像的信息。

 

    格式如下:

        { "img" : { "width": 750, "height": 286, "type": "jpeg" } }

 

image_filter rotate 90 | 180 | 270;

    规定度数逆时针旋转,参数值可以是变量。该模式可以单独使用,也可以与resize和crop一起使用。

 

image_filter resize width height;

    按width(宽) height(高)比例将图像缩小到指定的尺寸。如果只减少一个维度,另一个维度可以指定为“ - ”。如果发生错误,服务器将返回代码415(不支持的媒体类型)。参数值可以是变量。当与旋转参数一起使用时,旋转将在缩小后发生。

 

image_filter crop width height;

    按width(宽) height(高)比例减少图像较大的侧面积和另一侧多余的裁剪边缘,如果只减少一个维度,另一个维度可以指定为“ - ”。如果发生错误,服务器将返回代码415(不支持的媒体类型)。参数值可以是变量。当与旋转参数一起使用时,旋转将在缩小之前发生。

 

示例 1:

    找一张jpg文件,取名为 test.jpg,在放到/usr/local/nginx_1.12.2/conf下。进行测试:

location /test.jpg {

image_filter size;

root /usr/local/nginx_1.12.2/conf;

}

 

    输出图片的有关图像信息,json格式,输出如下:

{ "img" : { "width": 750, "height": 286, "type": "jpeg" } }

 

示例 2:

location /test.jpg {

    image_filter resize 150 100; #缩放为150*100的图片

    image_filter rotate 180; #图片逆时针旋转180,图片倒过来了

    root /usr/local/nginx_1.12.2/conf;

}

 

裁剪示例:

location /test.jpg {

    image_filter crop 150 100; #裁剪为150*100的图片

    image_filter rotate 180; #图片逆时针旋转180,图片倒过来了

    root /usr/local/nginx_1.12.2/conf;

 


 

Pingbacks已打开。

Trackbacks

引用地址

评论
  1. AmyGal AmyGal 发布于 2020年10月28日 11:13 #

    <a href="https://cialistp.com/">buy cialis online from india</a>

  2. ErnestVoics ErnestVoics 发布于 2020年10月28日 12:24 #

    is there a generic for viagra <a href=" http://sild100fast.com/# ">viagra for sale</a> generic viagra online
    home remedies for ed http://sild100fast.com viagra price
    generic viagra <a href=http://sild100fast.com/#>canadian pharmacy viagra</a> viagra amazon

  3. KimGal KimGal 发布于 2020年10月28日 13:57 #

    <a href="https://purchaseantibiotics.com/">omnicef 125</a>

  4. LisaGal LisaGal 发布于 2020年10月28日 14:01 #

    <a href="https://effexorgen.com/">effexor 50 mg tablets</a>

  5. JimGal JimGal 发布于 2020年10月28日 14:15 #

    <a href="https://hydroxychloroquinetm.com/">generic plaquenil price</a> <a href="https://neurontinonline.com/">no prescription gabapentin</a> <a href="https://antifungalpills.com/">lamisil oral</a> <a href="https://cialisfive.com/">where can i get tadalafil</a> <a href="https://dapoxetinpriligy.com/">dapoxetine cream</a>

  6. KiaGal KiaGal 发布于 2020年10月28日 14:20 #

    [url=http://lasixwatp.com/]lasix 60 mg cost[/url]

  7. JaneGal JaneGal 发布于 2020年10月28日 14:32 #

    <a href="https://purchaseantibiotics.com/">omnicef 300 mg cap</a>

  8. HenryFreme HenryFreme 发布于 2020年10月28日 14:37 #

    如果你使用这个机器人在线工作可以真正有效。
    链接 - https://moneylinks.page.link/6SuK

  9. refinance jumbo refinance jumbo 发布于 2020年10月28日 14:43 #

    <a href="http://sexcamomg.com/">free webcams</a> <a href="http://mortgageanr.com/">best heloc loans</a> <a href="http://lifeinsurancenord.com/">government personnel mutual life insurance</a>

  10. KimGal KimGal 发布于 2020年10月28日 17:19 #

    <a href="https://novemeds.com/">canadian pharmacy digoxin</a>

  11. houston mortgage houston mortgage 发布于 2020年10月28日 18:46 #

    <a href="http://lifeinsurancelux.com/">get mutual life</a> <a href="http://sexcamomg.com/">sex cam</a> <a href="http://mortgageofr.com/">atlantic home loans</a>

发表评论