API 文档

有奖调研

旋转

最近更新时间:2021-09-09 18:29:27

功能概述

腾讯云数据万象通过 imageMogr2 接口提供旋转功能,包括普通旋转和自适应旋转。

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

  • 下载时处理
  • 上传时处理
  • 云上数据处理

限制说明

  • 支持格式:支持处理 JPG、BMP、GIF、PNG、WEBP 格式,并且支持 HEIF 格式的解码和处理操作。
  • 体积限制:处理图片原图大小不超过32MB、宽高不超过30000像素且总像素不超过2.5亿像素,处理结果图宽高设置不超过9999像素;针对动图,原图宽 x 高 x 帧数不超过2.5亿像素。
  • 动图帧数限制:gif 帧数限300帧。

接口形式

1. 下载时处理

download_url?imageMogr2/rotate/<rotateDegree>
                       /auto-orient

注意:

请忽略上面的空格与换行符。

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": "imageMogr2/rotate/<rotateDegree>
                       /auto-orient"
  }]
}

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": "imageMogr2/rotate/<rotateDegree>
                       /auto-orient"
  }]
}

说明:

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

处理参数说明

参数 含义
download_url 文件的访问链接,具体构成为<BucketName-APPID>.cos.<Region>.myqcloud.com/<picture name>,
例如 examplebucket-1250000000.cos.ap-shanghai.myqcloud.com/picture.jpeg
/rotate/<rotateDegree> 普通旋转:图片顺时针旋转角度,取值范围0 - 360,默认不旋转。
/auto-orient 自适应旋转:根据原图 EXIF 信息将图片自适应旋转回正。
/flip/<flip> 镜像翻转:flip 值为 vertical 表示垂直翻转,horizontal 表示水平翻转
/ignore-error/1 当处理参数中携带此参数时,针对文件过大导致处理失败的场景,会直接返回原图而不报错

实际案例

说明:

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

案例一:普通旋转

顺时针旋转90度,示例如下:

http://examples-1251000004.cos.ap-shanghai.myqcloud.com/sample.jpeg?imageMogr2/rotate/90

最终效果如下:

案例二:普通旋转并携带私有文件签名

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

http://examples-1251000004.cos.ap-shanghai.myqcloud.com/sample.jpeg?q-sign-algorithm=<signature>&imageMogr2/rotate/90

说明:

<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

目录