# 图片(格式转换、缩略、剪裁)如何处理?

为了加快图片的下载,很多生产环境都会选择cdn或者oss来存储图片。 下面我们主要介绍阿里云oss和七牛云对图片提供的一些常用API

# 七牛云API (opens new window)

imageView2 提供简单快捷的图片格式转换、缩略、剪裁功能。只需要填写几个参数,即可对图片进行缩略操作,生成各种缩略图。imageView2接口可支持处理的原图片格式有psd、jpeg、png、gif、webp、tiff、bmp。(webp不支持动图)

# 常用的图片处理参数

原图:http://dn-odum9helk.qbox.me/resource/gogopher.jpg

1.自动压缩 http://dn-odum9helk.qbox.me/resource/gogopher.jpg?imageslim

2.渐进图 http://dn-odum9helk.qbox.me/resource/gogopher.jpg?imageView2/1/w/200/h/200/interlace/1

2.剪裁正中部分,等比缩小生成200*200缩略图 http://dn-odum9helk.qbox.me/resource/gogopher.jpg?imageView2/1/w/200/h/200

3.宽度固定为200px,高度等比缩小,比例不变形 http://dn-odum9helk.qbox.me/resource/gogopher.jpg?imageView2/2/w/200

4.高度固定为200px,宽度等比缩小,比例不变形 http://dn-odum9helk.qbox.me/resource/gogopher.jpg?imageView2/2/h/200

5.持久化

#另存操作的目标空间与资源名
entryURI = "qiniu-developer:Ship-thumb-200.jpg"
#编码结果
encodedEntryURI = "cWluaXUtZGV2ZWxvcGVyOlNoaXAtdGh1bWItMjAwLmpwZw=="
#需要签名的部分
signingStr = "https://dn-odum9helk.qbox.me/resource/Ship.jpg?imageView2/2/w/200/h/200|saveas/cWluaXUtZGV2ZWxvcGVyOlNoaXAtdGh1bWItMjAwLmpwZw=="
#签名结果
sign = "bcgojLbLKTsTlhm3XFMYq0cn3lW2G3NAuJYXZDDf:jGo09Pmq5vyG4c-rRb4qF3_dH1g="#另存操作的目标空间与资源名
entryURI = "qiniu-developer:Ship-thumb-200.jpg"
#编码结果
encodedEntryURI = "cWluaXUtZGV2ZWxvcGVyOlNoaXAtdGh1bWItMjAwLmpwZw=="
#需要签名的部分
signingStr = "https://dn-odum9helk.qbox.me/resource/Ship.jpg?imageView2/2/w/200/h/200|saveas/cWluaXUtZGV2ZWxvcGVyOlNoaXAtdGh1bWItMjAwLmpwZw=="
#签名结果
sign = "bcgojLbLKTsTlhm3XFMYq0cn3lW2G3NAuJYXZDDf:jGo09Pmq5vyG4c-rRb4qF3_dH1g="
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

https://dn-odum9helk.qbox.me/resource/Ship.jpg?imageView2/2/w/200/h/200|saveas/cWluaXUtZGV2ZWxvcGVyOlNoaXAtdGh1bWItMjAwLmpwZw==/sign/bcgojLbLKTsTlhm3XFMYq0cn3lW2G3NAuJYXZDDf:jGo09Pmq5vyG4c-rRb4qF3_dH1g=

# 阿里云

1.图片压缩(将JPEG格式的原图转换为HEIF格式。) https://image-demo-oss-zhangjiakou.oss-cn-zhangjiakou.aliyuncs.com/sample.jpg?x-oss-process=image/format,heic

2.将图自动裁剪成宽度为100px,高度为100px 的效果图。 http://image-demo.oss-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,m_fill,h_100,w_100

3.按宽高:将图缩放成高度为100px,宽度按比例处理。 http://image-demo.oss-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,h_100

4.将图按比例缩放到原来的1/2。 http://image-demo.oss-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,p_50

5.持久化

POST /ObjectName?x-oss-process HTTP/1.1
Host: oss-example.oss.aliyuncs.com
Content-Length: 247
Date: Fri, 04 May 2012 03:21:12 GMT
Authorization: OSS qn6qrrqxo2oawuk53otfjbyc:KU5h8YMUC78M30dXqf3JxrTZHiA=
x-oss-process=image/resize,w_100|sys/saveas,o_dGVzdC5qcGc,b_dGVzdA
1
2
3
4
5
6

将目标图片缩放之后保存到名称为test的Bucket,Object名称为test.jpg。

# 相关文章

七牛云图片处理API (opens new window)

阿里云图片处理 (opens new window)

全量分析

评 论:

上次更新时间: 6/2/2020, 10:06:11 PM