开发者指南

API 文档

SDK 文档

图片处理

最近更新时间:2020-08-20 15:39:14

简介

腾讯云对象存储 COS 集成了 数据万象(Cloud Infinite,CI)专业的一体化多媒体解决方案,涵盖以下图片处理功能,详情可见 图片处理概述

服务 功能 说明
基础图片处理服务 缩放 等比缩放、设定目标宽高缩放等多种方式
裁剪 普通裁剪、缩放裁剪、内切圆、人脸智能裁剪
旋转 自适应旋转、普通旋转
格式转换 格式转换、GIF 格式优化、渐进显示
质量变换 针对 JPG 和 WEBP 图片进行质量变换
高斯模糊 对图片进行模糊处理
锐化 对图片进行锐化处理
添加水印 图片水印文字水印
获取图片信息 基本信息EXIF 信息主色调
去除元信息 包括 EXIF 信息
快速缩略模板 快速实现图片格式转换、缩略、剪裁等功能,生成缩略图
样式设置 设置图片的样式,方便管理不同需求的图片

SDK API 参考

SDK 所有接口的具体参数与方法说明,请参考 SDK API

上传时使用图片处理

下面示例展示了如何在上传图片时自动实现图片处理。

图片上传完成后,COS 会存储原始图片和已处理过的图片。后续用户可以通过普通的下载请求获取处理结果。

示例代码

List<PicOperationRule> rules = new LinkedList<>();
// 添加一条将图片转化为 png 格式的 rule,处理后的图片在存储桶中的位置标识符为
// examplepngobject
rules.add(new PicOperationRule("examplepngobject", "imageView2/format/png"));
PicOperations picOperations = new PicOperations(true, rules);

PutObjectRequest putObjectRequest = new PutObjectRequest(bucket, cosPath, srcPath);
putObjectRequest.setPicOperations(picOperations);

// 上传成功后,您将会得到 2 张图片,分别是原始图片和处理后图片
COSXMLUploadTask cosxmlUploadTask = transferManager.upload(bucket, cosPath,
        srcPath, uploadId);
说明:

更多完整示例,请前往 GitHub 查看。

盲水印功能

关于盲水印的功能说明请参考 盲水印功能

添加盲水印

功能说明

盲水印支持在上传时添加以及下载时添加。

示例代码一:上传时添加盲水印

List<PicOperationRule> rules = new LinkedList<>();
// 添加一条将盲水印 rule,处理后的图片在存储桶中的位置标识符为
// examplewatermarkobject
rules.add(new PicOperationRule("examplewatermarkobject",
        "watermark/3/type/1/image/aHR0cDovL2V4YW1wbGVzLTEyNTEwMDAw"));
PicOperations picOperations = new PicOperations(true, rules);

PutObjectRequest putObjectRequest = new PutObjectRequest(bucket, cosPath, srcPath);
putObjectRequest.setPicOperations(picOperations);

// 上传成功后,您将会得到 2 张图片,分别是原始图片和处理后图片
COSXMLUploadTask cosxmlUploadTask = transferManager.upload(bucket, cosPath,
        srcPath, uploadId);
说明:

更多完整示例,请前往 GitHub 查看。

示例代码二:下载时添加盲水印

GetObjectRequest getObjectRequest = new GetObjectRequest(bucket, cosPath, savePathDir, savedFileName);
Map<String, String> params = new HashMap<>();
// 添加文字盲水印
params.put("watermark/3/type/3/text/dGVuY2VudCBjbG91ZA==", null);
getObjectRequest.setQueryParameters(params);

COSXMLDownloadTask cosxmlDownloadTask =
        transferManager.download(applicationContext, getObjectRequest);
说明:

更多完整示例,请前往 GitHub 查看。

目录