tencent cloud

$0 14-Day TrialExperience EdgeOne for acceleration and security protection!

文档反馈

对象存储

基础图片处理

最后更新时间:2024-01-05 17:20:37

简介

本文档提供关于基础图片处理的 API 概览以及 SDK 示例代码。
API
操作描述
对图片进行缩小或放大
对图片进行裁剪,包括普通裁剪、缩放裁剪、内切圆裁剪、圆角裁剪和人脸智能裁剪
对图片进行旋转,包括普通旋转和自适应旋转
对图片进行格式转换、gif 格式优化、渐进显示
对图片质量进行调节
对图片进行模糊处理
对图片进行锐化
对图片进行水印处理
对图片进行实时文字水印处理
查询图片基本信息,包括格式、长、宽等
查询 EXIF 信息
查询图片主色调信息
去除图片元信息,包括 exif 信息
通过图片处理模板,生成相应的缩略图
实现对图片按顺序进行多种处理

缩放

功能说明

腾讯云数据万象通过 imageMogr2 接口提供图片缩放功能。

方法原型

func (s *CIService) Get(ctx context.Context, key string, operation string, opt *ObjectGetOptions, id ...string) (*Response, error)

func (s *CIService) GetToFile(ctx context.Context, key, localpath, operation string, opt *ObjectGetOptions, id ...string) (*Response, error)

请求示例

name := "test.jpg"
// Case 1 从响应体中获取对象
resp, err := c.CI.Get(context.Background(), name, "imageMogr2/thumbnail/!50px", nil)
if err != nil {
//ERROR
}
defer resp.Body.Close()
ioutil.ReadAll(resp.Body)

// Case 2 下载对象到文件
filepath := "test.jpg"
_, err = c.CI.GetToFile(context.Background(), name, filepath, "imageMogr2/thumbnail/!50px", nil)

参数说明

参数名称
参数描述
类型
是否必填
key
对象键(Key)是对象在存储桶中的唯一标识。例如,在对象的访问域名examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com/doc/pic.jpg中,对象键为 doc/pic.jpg
string
operation
基础图片处理,可以通过该参数实现缩放、裁剪、旋转、格式转换、质量变换等基础图片处理功能。
string
ObjectGetOptions
对象下载参数,详见 下载对象
string
id
对象 VersionId
string

裁剪

功能说明

腾讯云数据万象通过 imageMogr2 接口提供裁剪功能,包括普通裁剪、缩放裁剪、内切圆裁剪、圆角裁剪和人脸智能裁剪。

请求示例

name := "test.jpg"
filepath := "test.jpg"
_, err = c.CI.GetToFile(context.Background(), name, filepath, "imageMogr2/cut/600x600x100x10", nil)

其他基础图片处理

功能说明

基础图片处理统一使用上述方法完成,其他基础图片处理只需要修改 operation 参数的值即可,例如将图片顺时针旋转90度的样例如下。
name := "test.jpg"
filepath := "test.jpg"
_, err = c.CI.GetToFile(context.Background(), name, filepath, "imageMogr2/rotate/90", nil)


产品类别

文档章节

基础图片处理

联系我们

联系我们,为您的业务提供专属服务。

技术支持

如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

7x24 电话支持
Hong Kong, China
+852 800 906 020 (Toll Free)
United States
+1 844 606 0804 (Toll Free)
United Kingdom
+44 808 196 4551 (Toll Free)
Canada
+1 888 605 7930 (Toll Free)
Australia
+61 1300 986 386 (Toll Free)
EdgeOne hotline
+852 300 80699
More local hotlines coming soon