控制台指南

最佳实践

开发者指南

API 文档

SDK 文档

填写文档满意度调查问卷,赢取缤纷好礼> HOT

WebP 压缩

最近更新时间:2022-06-27 15:37:44

功能描述

图片压缩指在图片质量保持不变的情况,尽可能的减小图片大小,以达到节省图片存储空间、减少图片访问流量、提升图片访问速度的效果。

对象存储(Cloud Object Storage,COS)基于 数据万象(Cloud Infinite,CI) 产品推出了 WebP 压缩功能,可将图片转换为 webp 压缩图片格式,其在压缩方面相比 jpg 格式更优越。在相同图片质量的情况下,webp 格式图片要比 jpg 格式图片减小25%以上,可以适配多终端使用场景。

限制说明

  • 支持格式:支持将 jpg、png、bmp、gif、tpg、heif、avif 等格式图片转换为 webp 格式。
  • 体积限制:处理图片原图大小不超过32MB、宽高不超过30000像素且总像素不超过2.5亿像素,处理结果图宽高设置不超过9999像素;针对动图,原图宽 x 高 x 帧数不超过2.5亿像素。
  • 动图帧数限制:gif 帧数限300帧。

使用方式

COS 通过数据万象 imageMogr2 接口提供 WebP 压缩功能。

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

  • 下载时处理
  • 上传时处理
  • 云上数据处理
说明:

  • WebP 压缩为付费服务,费用同基础图片处理,由数据万象收取,具体费用请参见数据万象 图片处理费用
  • 图片转换为 WebP 格式后,部分浏览器无法读取 WebP 图片的 exif 信息,导致没有旋转。您可参见 旋转 文档,增加 auto-orient 参数,对原图旋转后再进行压缩。
  • WebP 压缩默认继承原始图片的质量参数。您可参见 质量变换 文档,通过修改图片质量来调节压缩率。

接口示例

1. 下载时处理

download_url?imageMogr2/format/webp

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/format/webp"
}]
}

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/format/webp"
}]
}

说明:

本篇文档中的实际案例仅包含下载时处理,该类处理不会保存处理后的图片至存储桶。如有保存需求,请使用上传时处理云上数据处理方式。

处理参数说明

参数 含义
download_url 文件的访问链接,具体构成为<BucketName-APPID>.cos.<Region>.myqcloud.com/<picture name>, 例如examplebucket-1250000000.cos.ap-shanghai.myqcloud.com/picture.jpeg
/format/<Format> 压缩格式,此处为 webp。

实际案例

假设原图格式为 png,图片大小为1335.2KB,如下图所示:
img

将原图转换为 webp 格式,请求 URL 如下:

http://example-1258125638.cos.ap-shanghai.myqcloud.com/sample.png?imageMogr2/format/webp

效果如下:
img

压缩率对比

格式 图片大小
png(原图) 1335.2KB
webp 65KB(压缩率95.13%)
目录