阿里云OSS 图片处理

2 篇文章 0 订阅

首先放个阿里云OSS图片处理接口文档 阿里云官方地址
oss图片处理接口文档
我们有时会抱怨用户上传的图文中图片文件大了(假如说3M的图片)。导致生成的网页打开速度慢,怎么办呢?

问题分析:网页打开慢是因为网页资源下载的那张图片下载慢。只要能够改变用户上传的大小就能解决这个问题。

方案一: 限制用户上传文件的大小?
1、使用的用户并不懂程序,限制了大小用户是否会觉得体验感不好?

方案二:图片上传后我们是否能对图片进行处理使之改变该图片的大小(压缩)?
1、我们写的程序处理图片的接口就一定很好吗?
2、我们有那么多精力去做这个吗?
3、我们能否在网上查询相应的资源下载对应的图片处理接口包来使用?安装使用的流程复杂吗?
4、能否在现有的资源下找个免费的第三方平台免费帮助我们?

然后我根据自己的情况我选择了上述的方案二 - 4 这个方法
采用OSS自带的图片处理机制来帮助我们。
我只说一下我的使用心得。
我的需求只是压缩用户上传上来的图片文件大小
假设我的OSS域名是
http://demo.oss-cn-xxxxx.aliyuncs.com
在该demo bucket下我上传了一张图片 test.jpg 文件大小是3M
假设http能访问到的地址 http://demo.oss-cn-xxxxx.aliyuncs.com/test.jpg

现在我想更改这个图片文件的大小。怎么办?
1、更改图片清晰度
2、缩小图片尺寸
我能想起的就是这两个方法
但是根据我的需求不能更改缩小图片的尺寸,那么只能是更改图片的清晰度了。
http://demo.oss-cn-xxxxx.aliyuncs.com/test.jpg?x-oss-process=image/quality,q_60
原图清晰度的60%
http://demo.oss-cn-xxxxx.aliyuncs.com/test.jpg?x-oss-process=image/quality,q_80
原图清晰度的80%

看到了吧?
queryString : x-oss-process=image/quality,q_{int} 这个就是更改图片清晰度的结尾参数 {int}取值0~100

当然我们还可以对图片进行多次处理

裁剪
http://demo.oss-cn-xxxxx.aliyuncs.com/test.jpg?x-oss-process=image/circle,r_100

先压缩再裁剪
http://demo.oss-cn-xxxxx.aliyuncs.com/test.jpg?x-oss-process=image/quality,q_80/circle,r_100

是不是很方便,不需要我们自己去写代码,只要我们自己在参数后面加入对应的参数就行了。

当然如果你有自己的阿里云域名(通过域名映射指向的阿里云域名的,如demo.xxxxx.com 指向阿里云的demo.oss-cn-xxxxx.aliyuncs.com) 怎么去实现上述的功能呢?
一样的,什么都不需要变化。直接点:
http://demo.xxxxx.com/test.jpg?x-oss-process=image/circle,r_100
http://demo.xxxxx.com/test.jpg?x-oss-process=image/quality,q_80/circle,r_100

————————————————
此文章为转载文章,很感谢原文作者提供的方法解决了我的难题
查看原文章

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值