限制图片大小

最近更新时间:2024-11-05 19:49:02

我的收藏

功能概述

腾讯云数据万象通过 imageMogr2/size-limit 接口可限制图片处理(例如缩放、压缩等)后的文件大小。

授权说明

通过子账号使用时,需要授予 cos:GetObject权限,具体请参见 COS action,CI 其他权限请参见 数据万象 action

服务开通

使用该功能将默认为您开通数据万象,并绑定存储桶,无需角色授权,即可直接使用。

使用限制

使用该接口时,请先确认相关限制条件。详情请参见 使用限制
仅支持对 JPG 格式的图片限制大小,非 JPG 格式的图片可以结合 格式转换 参数,转换为 JPG 后再限制大小。
限制大小与 极智压缩 不可同时使用,若同时使用时,仅生效极智压缩。

费用说明

该接口为付费服务,产生的费用将由数据万象收取,详细计费说明可参见 图片处理费用
如果采用下载时处理的方式,且通过外网进行下载,调用会产生 流量费用

接口示例

GET /<ObjectKey>?imageMogr2/size-limit HTTP/1.1
Host: <BucketName-APPID>.cos.<Region>.myqcloud.com
Date: <GMT Date>
Authorization: <Auth String>
说明
Authorization: Auth String,详情请参见 请求签名 文档。

处理参数说明

操作名称:size-limit。
参数
含义
/size-limit/<size>
限制图片转换后的大小,<size>的值为正整数,支持以兆字节(m)和千字节(k)为单位,例如:取值为15m,表示将处理后的图片大小限制在15MB左右。
若在尾部加上!,表示用处理后的图片大小与原图大小做比较,如果处理后的图片比原图小,则返回处理后的图片,否则返回原图。
例如:examplebucket-1250000000.cos.ap-shanghai.myqcloud.com/picture.jpg?imageMogr2/size-limit/15k!
注意:
仅支持 JPG 格式的图片,可以用于限制处理后图片的大小。
大小限制并非绝对的,图片本身质量不同会造成一些误差,建议搭配 strip 参数使用,去除图片的一些冗余信息,会有更准确的限制效果。例如:examplebucket-1250000000.cos.ap-shanghai.myqcloud.com/picture.png?imageMogr2/strip/format/jpg/size-limit/15k!
/ignore-error/1
当处理参数中携带此参数且取值为1时,针对文件过大、参数超限等导致处理失败的场景,会直接返回原图而不报错。

实际案例

案例一:转换图片格式并限制大小

将 PNG 图片转换为 JPG 格式,并限制图片大小为15KB,同时与原图进行对比,示例如下:
http://examples-1251000004.cos.ap-shanghai.myqcloud.com/sample.png?imageMogr2/strip/format/jpg/size-limit/15k!

案例二:转换图片格式、限制大小并携带私有文件签名

处理方式同上,仅增加签名部分,并与处理参数以“&”连接,示例如下:
http://examples-1251000004.cos.ap-shanghai.myqcloud.com/sample.png?q-sign-algorithm=<signature>&imageMogr2/strip/format/jpg/size-limit/15k!

说明
<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