基础图片处理

最近更新时间:2024-11-06 09:45:32

我的收藏

简介

腾讯云对象存储(Cloud Object Storage,COS)集成了 数据万象(Cloud Infinite,CI)专业的一体化多媒体解决方案,涵盖以下图片处理功能,详情可见 图片处理概述
服务
功能
说明
基础图片处理服务
缩放
等比缩放、设定目标宽高缩放等多种方式
裁剪
普通裁剪、缩放裁剪、内切圆、人脸智能裁剪
旋转
自适应旋转、普通旋转
格式转换、GIF 格式优化、渐进显示
针对 JPG 和 WEBP 图片进行质量变换
对图片进行模糊处理
锐化
对图片进行锐化处理
添加水印
获取图片信息
包括 EXIF 信息
快速实现图片格式转换、缩略、剪裁等功能,生成缩略图

缩放

下载
上传
// 存储桶名称,由 bucketname-appid 组成,appid 必须填入,可以在 COS 控制台查看存储桶名称。 https://console.cloud.tencent.com/cos5/bucket
let bucket = "examplebucket-1250000000";
//对象在存储桶中的位置标识符,即称对象键
let cosPath = "test.png";
//本地文件下载路径,如果文件不存在sdk会自动创建
let downliadPath = "本地文件路径";

let getRequest = new GetObjectRequest(bucket, cosPath, downliadPath);
// 添加图片处理参数
getRequest.addQuery("imageMogr2/thumbnail/!50p"); let task: DownloadTask = CosXmlBaseService.default().download(getRequest); task.onResult = {
// 下载成功回调 onSuccess: (request, result: CosXmlDownloadTaskResult) => { // todo 下载成功后的逻辑 },
//下载失败回调 onFail: (request, error: CosError) => { // todo 下载失败后的逻辑 } }
//开始下载 task.start();
// 存储桶名称,由 bucketname-appid 组成,appid 必须填入,可以在 COS 控制台查看存储桶名称。 https://console.cloud.tencent.com/cos5/bucket
let bucket = "examplebucket-1250000000";
//对象在存储桶中的位置标识符,即称对象键
let cosPath = "test.png";
//本地文件路径
let srcPath = "本地文件路径";

let putRequest = new PutObjectRequest(bucket, cosPath, srcPath);

// 设置图片处理参数
let picOperations: PicOperations = new PicOperations(); picOperations.is_pic_info = 1; picOperations.rules.push(new PicOperationRule("image_ci_thumbnail.png", "imageMogr2/thumbnail/!50p")) putRequest.setPicOperations(picOperations);
let task: UploadTask = CosXmlBaseService.default().upload(putRequest); task.onResult = {
// 上传成功回调 onSuccess: (request, result: CosXmlUploadTaskResult) => {
// result中picUploadResult参数包含了原图以及图片处理参数的内容 // todo 上传成功后的逻辑 },
//上传失败回调 onFail: (request, error: CosError) => { // todo 上传失败后的逻辑 } }
//开始上传 task.start();

裁剪

下载
上传
// 存储桶名称,由 bucketname-appid 组成,appid 必须填入,可以在 COS 控制台查看存储桶名称。 https://console.cloud.tencent.com/cos5/bucket
let bucket = "examplebucket-1250000000";
//对象在存储桶中的位置标识符,即称对象键
let cosPath = "test.png";
//本地文件下载路径,如果文件不存在sdk会自动创建
let downliadPath = "本地文件路径";

let getRequest = new GetObjectRequest(bucket, cosPath, downliadPath);
// 添加图片处理参数
getRequest.addQuery("imageMogr2/iradius/150"); let task: DownloadTask = CosXmlBaseService.default().download(getRequest); task.onResult = {
// 下载成功回调 onSuccess: (request, result: CosXmlDownloadTaskResult) => { // todo 下载成功后的逻辑 },
//下载失败回调 onFail: (request, error: CosError) => { // todo 下载失败后的逻辑 } }
//开始下载 task.start();
// 存储桶名称,由 bucketname-appid 组成,appid 必须填入,可以在 COS 控制台查看存储桶名称。 https://console.cloud.tencent.com/cos5/bucket
let bucket = "examplebucket-1250000000";
//对象在存储桶中的位置标识符,即称对象键
let cosPath = "test.png";
//本地文件路径
let srcPath = "本地文件路径";

let putRequest = new PutObjectRequest(bucket, cosPath, srcPath);

// 设置图片处理参数
let picOperations: PicOperations = new PicOperations(); picOperations.is_pic_info = 1; picOperations.rules.push(new PicOperationRule("image_ci_iradius.png", "imageMogr2/iradius/150")) putRequest.setPicOperations(picOperations);
let task: UploadTask = CosXmlBaseService.default().upload(putRequest); task.onResult = {
// 上传成功回调 onSuccess: (request, result: CosXmlUploadTaskResult) => {
// result中picUploadResult参数包含了原图以及图片处理参数的内容 // todo 上传成功后的逻辑 },
//上传失败回调 onFail: (request, error: CosError) => { // todo 上传失败后的逻辑 } }
//开始上传 task.start();

旋转

下载
上传
// 存储桶名称,由 bucketname-appid 组成,appid 必须填入,可以在 COS 控制台查看存储桶名称。 https://console.cloud.tencent.com/cos5/bucket
let bucket = "examplebucket-1250000000";
//对象在存储桶中的位置标识符,即称对象键
let cosPath = "test.png";
//本地文件下载路径,如果文件不存在sdk会自动创建
let downliadPath = "本地文件路径";

let getRequest = new GetObjectRequest(bucket, cosPath, downliadPath);
// 添加图片处理参数
getRequest.addQuery("imageMogr2/rotate/90"); let task: DownloadTask = CosXmlBaseService.default().download(getRequest); task.onResult = {
// 下载成功回调 onSuccess: (request, result: CosXmlDownloadTaskResult) => { // todo 下载成功后的逻辑 },
//下载失败回调 onFail: (request, error: CosError) => { // todo 下载失败后的逻辑 } }
//开始下载 task.start();
// 存储桶名称,由 bucketname-appid 组成,appid 必须填入,可以在 COS 控制台查看存储桶名称。 https://console.cloud.tencent.com/cos5/bucket
let bucket = "examplebucket-1250000000";
//对象在存储桶中的位置标识符,即称对象键
let cosPath = "test.png";
//本地文件路径
let srcPath = "本地文件路径";

let putRequest = new PutObjectRequest(bucket, cosPath, srcPath);

// 设置图片处理参数
let picOperations: PicOperations = new PicOperations(); picOperations.is_pic_info = 1; picOperations.rules.push(new PicOperationRule("image_ci_rotate.png", "imageMogr2/rotate/90")) putRequest.setPicOperations(picOperations);
let task: UploadTask = CosXmlBaseService.default().upload(putRequest); task.onResult = {
// 上传成功回调 onSuccess: (request, result: CosXmlUploadTaskResult) => {
// result中picUploadResult参数包含了原图以及图片处理参数的内容 // todo 上传成功后的逻辑 },
//上传失败回调 onFail: (request, error: CosError) => { // todo 上传失败后的逻辑 } }
//开始上传 task.start();