快速缩略模板

最后更新时间:2021-10-22 14:17:35

    功能概述

    对象存储通过数据万象 imageView2 接口提供常用图片处理模板。开发者根据业务需求,只需在下载 URL 后面附加相应的参数,就可以生成相应的缩略图。处理图片原图大小不超过32MB、宽高不超过30000像素且总像素不超过2.5亿像素,处理结果图宽高设置不超过9999像素;针对动图,原图宽 x 高 x 帧数不超过2.5亿像素。

    该功能支持以下处理方式:

    • 下载时处理
    • 上传时处理
    • 云上数据处理
    注意:

    图片处理功能为收费项,由数据万象收取,详细的计费说明请参见数据万象图片处理费用。

    接口示例

    1. 下载时处理

    download_url?imageView2/<mode>/w/<Width>
                   /h/<Height>
                   /format/<Format>
                   /q/<Quality>
                   /rq/<Quality>
                   /lq/<Quality>
    
    注意:

    质量变换参数仅针对 jpgwebp 格式图片。

    2. 上传时处理

    PUT /<ObjectKey> HTTP/1.1
    Host: <BucketName-APPID>.cos.<Region>.myqcloud.com
    Date: GMT Date
    Authorization: Auth String
    Pic-Operations: 
    {
    "is_pic_info": 1,
    "rules": [{
        "fileid": "exampleobject",
        "rule": "imageView2/<mode>/w/<Width>
                   /h/<Height>
                   /format/<Format>
                   /q/<Quality>
                   /rq/<Quality>
                   /lq/<Quality>"
    }]
    }
    

    3. 云上数据处理

    POST /<ObjectKey>?image_process HTTP/1.1
    Host: <BucketName-APPID>.cos.<Region>.myqcloud.com
    Date: GMT Date
    Content-length: Size
    Authorization: Auth String
    Pic-Operations: 
    {
    "is_pic_info": 1,
    "rules": [{
        "fileid": "exampleobject",
        "rule": "imageView2/<mode>/w/<Width>
                   /h/<Height>
                   /format/<Format>
                   /q/<Quality>
                   /rq/<Quality>
                   /lq/<Quality>"
    }]
    }
    
    说明:

    Authorization: Auth String (详情请参见 请求签名 文档)。

    处理参数说明

    参数 含义
    download_url 文件的访问链接,具体构成为&dxlt;BucketName-APPID>.cos.&dxlt;Region>.myqcloud.com/&dxlt;picture name>,
    例如 examplebucket-1250000000.cos.ap-shanghai.myqcloud.com/picture.jpeg
    /1/w/&dxlt;Width>/h/&dxlt;Height> 限定缩略图的宽高最小值。该操作会将图像等比缩放直至某一边达到设定最小值,之后将另一边居中裁剪至设定值。若只指定一边,则表示宽高相等的正方形
    例如,原图大小为1000x500,将参数设定为?imageView2/1/w/500/h/400 后,图像会先等比缩放至800x400,之后左右各裁剪150,得到500x400大小的图像
    /2/w/&dxlt;Width>/h/&dxlt;Height> 限定缩略图的宽高最大值。该操作会将图像等比缩放至宽高都小于设定最大值
    例如,原图大小为 1000x500,将参数设定为?imageView2/2/w/500/h/400后,图像会等比缩放至500x250。如果只指定一边,则另一边自适应
    /3/w/&dxlt;Width>/h/&dxlt;Height> 限定缩略图的宽高最小值。该操作会将图像等比缩放至宽高都大于设定最小值
    例如,原图大小为 1000x500,将参数设定为?imageView2/3/w/500/h/400后,图像会等比缩放至800x400。如果只指定一边,则另一边设为相同值
    /4/w/&dxlt;LongEdge>/h/&dxlt;ShortEdge> 限定缩略图的长边和短边的最小值分别为 LongEdge 和 ShortEdge,进行等比压缩;如果只指定一边,代表另外一边为同样的值
    /5/w/&dxlt;LongEdge>/h/&dxlt;ShortEdge> 限定缩略图的长边和短边的最大值分别为 LongEdge 和 ShortEdge,进行等比压缩,居中裁剪;如果只指定一边,则表示宽高相等的正方形;缩放后其中一边多余的部分会被裁剪掉
    /format/&dxlt;Format> 目标缩略图的图片格式,Format 可为:jpg,bmp,gif,png,webp,缺省为原图格式
    /q/&dxlt;Quality> 图片质量,取值范围0 - 100,默认值为原图质量;取原图质量和指定质量的最小值;&dxlt;Quality> 后面加!(注意为英文字符),表示强制使用指定值
    /rq/&dxlt;quality> 图片的相对质量,取值范围0 - 100,数值以原图质量为标准。例如原图质量为80,将 rquality 设置为80后,得到处理结果图的图片质量为64(80x80%)
    /lq/&dxlt;quality> 图片的最低质量,取值范围0 - 100,设置结果图的质量参数最小值。
    例如,原图质量为85,将 lquality 设置为80后,处理结果图的图片质量为85
    例如,原图质量为60,将 lquality 设置为80后,处理结果图的图片质量会被提升至80

    实际案例

    说明:

    本篇文档中的实际案例仅包含下载时处理,该类处理不会保存处理后的图片至存储桶。如有保存需求,您可查阅 图片持久化处理 文档并配置上传时处理云上数据处理

    案例一:选用模板样式1

    选用样式1,并限定缩略图的宽高最小值为400 × 600,绝对质量为85:

    http://examples-1251000004.cos.ap-shanghai.myqcloud.com/sample.jpeg?imageView2/1/w/400/h/600/q/85
    

    缩略图效果如下:

    案例二:选用模板样式1并携带私有签名

    处理方式同上,仅增加签名部分,并与处理参数以“&”连接,示例如下:

    http://examples-1251000004.cos.ap-shanghai.myqcloud.com/sample.jpeg?q-sign-algorithm=<signature>&imageView2/1/w/400/h/600/q/85
    
    说明:

    <signature> 为签名部分,获取方式请参考 请求签名

    注意事项

    为了避免未授权人员通过访问不携带处理参数的链接实现访问和下载原图的情况,您可同时将处理参数签入到请求签名中,处理参数整体是参数的 key,value 为空,如下是简单的示例(仅做样式参考,可能已经过期无法直接访问),详细计算方法请参见 请求签名

    http://examples-1251000004.cos.ap-shanghai.myqcloud.com/sample.jpeg?q-sign-algorithm=sha1&q-ak=AKID********************&q-sign-time=1593342360;1593342720&q-key-time=1593342360;1593342720&q-header-list=&q-url-param-list=watermark%252f1%252fimage%252fahr0cdovl2v4yw1wbgvzlteyntewmdawmdqucgljc2gubxlxy2xvdwquy29tl3nodwl5aw4uanbn%252fgravity%252fsoutheast&q-signature=26a429871963375c88081ef60247c5746e834a98&watermark/1/image/aHR0cDovL2V4YW1wbGVzLTEyNTEwMDAwMDQucGljc2gubXlxY2xvdWQuY29tL3NodWl5aW4uanBn/gravity/southeast