图片缩放
阿里云OSS的图片处理功能支持处理上传至OSS的图片文件,本文主要介绍如何进行图片缩放。
图片缩放参数
操作名称:resize
- 指定宽高缩放
名称 描述 取值范围 m 指定缩略的模式: - lfit:等比缩放,限制在指定w与h的矩形内的最大图片。
- mfit:等比缩放,延伸出指定w与h的矩形框外的最小图片。
- fill:固定宽高,将延伸出指定w与h的矩形框外的最小图片进行居中裁剪。
- pad:固定宽高,缩略填充。
- fixed:固定宽高,强制缩略。
lfit、mfit、fill、pad、fixed,默认为 lfit。 w 指定目标缩略图的宽度。 1-4096 h 指定目标缩略图的高度。 1-4096 l 指定目标缩略图的最长边。 1-4096 s 指定目标缩略图的最短边。 1-4096 limit 指定当目标缩略图大于原图时是否处理。值是 1 表示不处理;值是 0 表示处理。 0/1, 默认是 1 color 当缩放模式选择为 pad(缩略填充)时,可以选择填充的颜色(默认是白色)参数的填写方式:采用 16 进制颜色码表示,如 00FF00(绿色)。 [000000-FFFFFF] - 按比例缩放
名称 描述 取值范围 p 倍数百分比。 小于 100,即是缩小,大于 100 即是放大。 1-1000
图片缩放注意事项
- 对于原图:
- 格式只能是:jpg、png、bmp、gif、webp、tiff。其中gif格式的图片不支持进行指定宽高缩放,仅支持进行按比例缩放。
- 文件大小不能超过 20MB。
- 使用图片旋转时图片的宽或者高不能超过 4096。
- 原图单边大小不能超过30,000。
- 对于缩略图:对缩略后的图片大小有限制,目标缩略图宽与高的乘积不能超过 4096x4096,且单边长度不能超过 4096。
- 关于长短边:“长边”是指原尺寸与目标尺寸的比值大的那条边,“短边”同理。例如,原图400x200,缩放为 800x100,由于 400/800=0.5,200/100=2,0.5 < 2,所以在这个缩放中 200 那条是长边,400 那条是短边。
- 当只指定宽度或者高度时,在等比缩放的情况下,都会默认进行单边的缩放。在固定宽高的模式下,会默认宽高一样的情况下进行缩略。
- 如果只指定宽度或者高度,原图按原图格式返回。如果想保存成其他格式,详细可以查看质量变换及格式转换。
- 调用 resize,默认是不允许放大。即如果请求的图片比原图大,那么返回的仍然是原图。如果想取到放大的图片,即增加参数调用
limit_0
(如:https://image-demo.oss-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,w_500,limit_0
)
图片缩放示例
- 单边缩略
- 按宽高:将图缩略成高度为 100,宽度按比例处理。
http://image-demo.oss-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,h_100
- 按长边短边:将图最长边限制在 100 像素,短边按比例处理。
http://image-demo.oss-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,l_100
- 按宽高:将图缩略成高度为 100,宽度按比例处理。
- 强制宽高缩略:将图强制缩略成宽度为 100,高度为 100。
- 等比缩放,限定在矩形框内
- 将图缩略成宽度为 100,高度为 100,按长边优先。
- 将图缩略成宽度为 100,高度为 100,按长边优先,将图片保存成 png 格式。
- 等比缩放,限定在矩形框外
- 将图缩略成宽度为 100,高度为 100,按短边优先。
- 固定宽高,自动裁剪
- 将图自动裁剪成宽度为 100,高度为 100 的效果图。
- 固定宽高,缩略填充
- 将原图指定按短边缩略 100x100,剩余的部分以白色填充。
- 将图按短边缩略到 100x100,然后按红色填充。
- 将图按比例缩略到原来的 1/2。
http://image-demo.oss-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,p_50
SDK 示例
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。
评论