阿里云oss对象存储图片预处理

本文介绍阿里云OSS对象存储的图片处理功能,包括图片缩放、裁剪、旋转和添加水印等操作,无需本地处理即可节省带宽,且10TB内免费。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

点子

最近发现阿里云oss对象存储还有图片处理技术,只要图片链接附加一些参数信息,可以将处理之后的图片发送过来,相比起先发送再处理要有很多好处。

优点

  • 不需要本地处理图片了
  • 发送的图片是处理过的比如假如是缩小版的话就能减少带宽使用
  • 图片可以加水印

费用

图片处理费用如下
阿里云oss图片处理费用
也就是说每个月处理的图片在10TB以下是免费的,大于10GB的部分按照0.025元/GB进行计算,计算的时候按照图片原有大小进行。
对于我这样的小体量用户来说 图片处理就是完全免费的了

图片缩放

我有一张图片,我的头像是340*340大小。如下图
towrabbit角角兔
看起来有点太大了 大部分情况下我不需要那么大我们试试把它进行缩放

https://i-blog.csdnimg.cn/blog_migrate/ddd112b6bcbc87ab0ff0443256f87603.png?x-oss-process=image/resize,w_100

前面的链接就是http://<存储桶名>-<存储桶区域域名>/<对象名>?(处理规则)
意为把宽变成100,高按照比例缩放
处理规则有很多 这里使用了缩放规则。
最后的图片如下:
角角兔towrabit头像缩放100宽度
头像变成了100宽,高度按照比例缩小也是100了。
更多缩放规则请参照阿里云对象存储图片缩放预处理规则

裁剪

裁剪规则用到的地方也比较频繁,比如在切精灵图的时候。
同样是我的头像,进行一个圆型裁剪试试

圆形裁剪

圆形裁切 半径100的圆

https://i-blog.csdnimg.cn/blog_migrate/ddd112b6bcbc87ab0ff0443256f87603.png?x-oss-process=image/circle,r_100

阿里云图片预处理 圆形裁切
opps 感觉这脸有点大(笑哭)
所以我还是想先缩放再裁切比较好
下面试一试先缩放再裁切:

https://i-blog.csdnimg.cn/blog_migrate/ddd112b6bcbc87ab0ff0443256f87603.png?x-oss-process=image/resize,w_100/circle,r_100

阿里云图片预处理 圆形裁切
ojbk,使用的规则是先做的吃力放在前面 后做的处理放在后面,
格式为:格式为image/action1,param_value1/action2,param_value2
对于有透明度的图片进行裁切 其他部分会变成透明,如果是jpg则会以白色填充。

长方形自定义裁切

我的头像有个小爱心–现在试试把爱心裁剪出来

https://i-blog.csdnimg.cn/blog_migrate/ddd112b6bcbc87ab0ff0443256f87603.png?x-oss-process=image/crop,x_0,y_0,w_100,h_80

阿里云图片预处理长方形裁切
这样我的小心就裁剪出来了
动作名crop x和y为裁切开始点坐标,w和h分别是宽和高。

旋转

试试把图像旋转一下
这里用的是之前裁剪缩放过的图片

https://i-blog.csdnimg.cn/blog_migrate/ddd112b6bcbc87ab0ff0443256f87603.png?x-oss-process=image/resize,w_100/circle,r_100/rotate,270

阿里云图片预处理 圆形裁切
因为本来是歪着头的
使用rotate旋转了270度以奇怪的方式展现在面前了
旋转的参数在0-360度之间,

添加水印

在一张图片右下角添加水印

https://i-blog.csdnimg.cn/blog_migrate/ddd112b6bcbc87ab0ff0443256f87603.png?x-oss-process=image/watermark,text_5L2g5aW95oiR5piv6KeS6KeS5YWU,g_se,size_20,color_ffcc00,shadow_20,t_50,type_ZmFuZ3poZW5naGVpdGk=

阿里云图片预处理-角角兔
其中文字的参数要经过base64加密,可以在
在线base加密解密 进行加密

涉及的参数比较多,可以在阿里云图片处理水印文档查看
这里涉及到的参数

  • g

从下面九个中取值 [nw,north,ne,west,center,east,sw,south,se]
分别为左上,上,右上,左,中间,右,左下,下,右下。英语中的九个方位 包括center中间

  • t
    字透明度 0-100范围
  • text
    文字内容,需要经过base64编码
  • size
    字体大小,默认40 我这里是20,可以改成自己喜欢的大小
  • color
    字的颜色
  • shadow
    阴影深浅,0-100 100是最深 没有颜色之分

其他还有蛮多属性 如果需要可以去官方文档查看。

角角兔towrabit头像缩放100宽度

  • 这里是角角兔 towrabbit
  • 欢迎点赞评论哦
### 阿里云 OSS 中文编码的支持方法 在阿里云对象存储服务 (OSS) 的实际应用中,如果涉及文件名或参数中的中文字符处理,则需要注意 URL 编码以及 API 请求的兼容性问题。以下是关于如何设置和支持中文的具体说明: #### 1. 文件上传时的中文命名 当通过 SDK 或 RESTful 接口向 OSS 上传带有中文名称的文件时,需确保文件名经过 UTF-8 编码转换。大多数编程语言的标准库都提供了相应的工具函数来完成此操作。 例如,在 Python 中可以使用 `urllib.parse.quote` 函数对字符串进行转义[^3]: ```python import urllib.parse file_name = "测试文件.txt" encoded_file_name = urllib.parse.quote(file_name.encode('utf-8')) print(encoded_file_name) ``` 上述代码片段展示了如何将含有中文的文件名转化为适合 HTTP 协议传输的形式。 #### 2. 图片处理请求中的中文参数 对于图片处理功能(如水印添加),URL 参数可能包含复杂的配置项,其中包括但不限于文字内容、字体路径等字段。这些字段同样需要遵循标准 URI 转义规则以适配非 ASCII 字符集的需求[^4]。 具体实例可参照官方文档给出的例子并扩展至多字节场景下: ```plaintext https://bucket-name.oss-region.aliyuncs.com/object-key?x-oss-process=image/watermark,text_5YWI5Zu95aW9,size_20,color_FFFFFF,g_northwest,x_10,y_10 ``` 在此链接结构中,“text”后的值即代表了要嵌入图像上的文本信息。“5YWI5Zu95aW9”是对“你好世界”的 Base64 编码表示形式之一[^5]。 #### 3. 使用控制台管理界面手动输入 除了程序化接口调用外,用户也可以借助图形化的 Web 控制面板直接创建具有本地语言特性的资源条目。此时无需额外考虑编码细节,因为前端框架会自动完成必要的预处理工作[^6]。 总之,无论是自动化脚本还是交互式操作流程,始终推荐按照国际通用惯例执行数据序列化过程,从而最大程度减少潜在错误的发生几率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值