当前位置:首页 > 技术分享 > 正文内容

七牛云 无损压缩 图片基本处理(imageView2)

admin2年前 (2022-09-29)技术分享3348

简介

imageView2 提供简单快捷的图片格式转换、缩略、质量变换功能。只需要填写几个参数,即可对图片进行缩略操作,生成各种缩略图。图片处理为收费项,详细的计费说明请参见 计费与定价

立即注册七牛云

每月 0 - 20 TB:免费

20 TB 以上:0.025 元/GB


功能说明
缩略等比缩放、设定目标宽高缩放等多种方式
格式转换格式转换、GIF 颜色控制
渐进显示图片渐进显示
质量变换对图片质量进行调节

限制说明

使用服务时有如下限制:

  • 原图限制

    • 原图格式支持: psdjpegpnggifwebptiffbmpavifheif(webp动图,仅支持持久化处理)

  • 输出限制

    • 输出为gif,一般处理时间比较长,建议优先使用持久化处理

  • 同步处理

    • 只支持 20MB 以内的图片,超过 20MB 的图片需要使用持久化处理

    • 处理前的gif最大帧数为 200

    • 处理前的图片wh参数不能超过3万像素,总像素不能超过1.5亿像素

    • 处理后的图片wh参数不能超过9999像素,总像素不得超过24999999(2500w-1)像素

  • 持久化处理

    • 图片文件大小没有限制

    • 处理前的gifwebp动图,最大帧数为 500

    • 处理前的图片wh参数不能超过3万像素,总像素不能超过1.5亿像素

    • 处理后的图片wh参数不能超过14999像素,总像素不得超过59999999(6000w-1)像素

参数说明

注意:接口规格不含任何空格与换行符。

imageView2/<mode>/w/<LongEdge>/h/<ShortEdge>/format/<Format>/interlace/<Interlace>/q/<Quality>/colors/<colors>/ignore-error/<ignoreError>

参数说明

其中 <mode> 必填,分为如下几种情况:

模式说明
/0/w/<LongEdge>/h/<ShortEdge>限定缩略图的长边最多为<LongEdge>,短边最多为<ShortEdge>,进行等比缩放,不裁剪。如果只指定 w 参数则表示限定长边(短边自适应),只指定 h 参数则表示限定短边(长边自适应)。
/1/w/<Width>/h/<Height>限定缩略图的宽最少为<Width>,高最少为<Height>,进行等比缩放,居中裁剪。转后的缩略图通常恰好是 <Width>x<Height> 的大小(有一个边缩放的时候会因为超出矩形框而被裁剪掉多余部分)。如果只指定 w 参数或只指定 h 参数,代表限定为长宽相等的正方图。
/2/w/<Width>/h/<Height>限定缩略图的宽最多为<Width>,高最多为<Height>,进行等比缩放,不裁剪。如果只指定 w 参数则表示限定宽(高自适应),只指定 h 参数则表示限定高(宽自适应)。它和模式0类似,区别只是限定宽和高,不是限定长边和短边。从应用场景来说,模式0适合移动设备上做缩略图,模式2适合PC上做缩略图。
/3/w/<Width>/h/<Height>限定缩略图的宽最少为<Width>,高最少为<Height>,进行等比缩放,不裁剪。如果只指定 w 参数或只指定 h 参数,代表长宽限定为同样的值。你可以理解为模式1是模式3的结果再做居中裁剪得到的。
/4/w/<LongEdge>/h/<ShortEdge>限定缩略图的长边最少为<LongEdge>,短边最少为<ShortEdge>,进行等比缩放,不裁剪。如果只指定 w 参数或只指定 h 参数,表示长边短边限定为同样的值。这个模式很适合在手持设备做图片的全屏查看(把这里的长边短边分别设为手机屏幕的分辨率即可),生成的图片尺寸刚好充满整个屏幕(某一个边可能会超出屏幕)。
/5/w/<LongEdge>/h/<ShortEdge>限定缩略图的长边最少为<LongEdge>,短边最少为<ShortEdge>,进行等比缩放,居中裁剪。如果只指定 w 参数或只指定 h 参数,表示长边短边限定为同样的值。同上模式4,但超出限定的矩形部分会被裁剪。
/format/<Format>新图的输出格式
取值范围:jpggifpngwebp等,默认为原图格式。注:当原图为heic时,不指定输出格式,会输出jpg。
/interlace/<Interlace>是否支持渐进显示
取值范围:1 支持渐进显示,0不支持渐进显示(默认为0)。
适用目标格式:jpg
效果:网速慢时,图片显示由模糊到清晰。
/colors/<colors>源图片为 GIF 时,控制输出 GIF 中不同颜色的数量,取值可为2、4、8、16、32、64、128或256,不使用该参数时的默认值为128。
/q/<Quality>新图的图片质量
取值范围是[1, 100],默认75。
七牛会根据原图质量算出一个修正值,取修正值和指定值中的小值。
注意:
● 指定值后面可以增加 !,表示强制使用指定值,如100!
● 只支持原图类型:jpg。
/ignore-error/<ignoreError>主要针对图片兼容性的问题导致无法处理,取值为1时,则处理失败时返回原图;
不设置此参数,默认处理失败时返回错误信息。

注意:

  • 所有模式都可以只指定w参数或只指定h参数,并获得合理结果。在w、h为限定最大值时,未指定某参数等价于将该参数设置为无穷大(自适应);在w、h为限定最小值时,未指定参数等于给定的参数,也就限定的矩形是正方形。

  • 新图的宽/高/长边/短边,不会比原图大,即本接口总是 缩小图片

  • 如果原图带有EXIF信息且包含Orientation字段,imageView2默认根据此字段的值进行自动旋转修正。

  • 当一张含有透明区域的图片,转换成不支持透明的格式jpg,bmp等时,透明区域填充白色。

  • <Quality>修正值算法:

    • 原图 quality <= 90:min[90, 原图quality*sqrt,原图长宽乘积/结果图片长宽乘积

    • 原图 quality > 90: 原图quality*sqrt,原图长宽乘积/结果图片长宽乘积

示例

  • 原图

    查看效果图

  • 裁剪正中部分,等比缩小生成200x200缩略图:

  • 查看效果图

    1. http://dn-odum9helk.qbox.me/resource/gogopher.jpg?imageView2/1/w/200/h/200
  • 宽度固定为200px,高度等比缩小,生成200x133缩略图:

  • 查看效果图

    1. http://dn-odum9helk.qbox.me/resource/gogopher.jpg?imageView2/2/w/200
  • 高度固定为200px,宽度等比缩小,生成300x200缩略图:

  • 查看效果图



    1. http://dn-odum9helk.qbox.me/resource/gogopher.jpg?imageView2/2/h/200
  • 渐进显示图片:

  • 查看效果图

    1. http://dn-odum9helk.qbox.me/resource/gogopher.jpg?imageView2/1/w/200/h/200/interlace/1
  • 设置图片质量为55:

  • 查看效果图

    1. https://dn-odum9helk.qbox.me/resource/gogopher.jpg?imageView2/1/w/200/h/200/q/55


扫描二维码推送至手机访问。

版权声明:本文由小刚刚技术博客发布,如需转载请注明出处。

本文链接:http://blog.bitefu.net/post/431.html

分享给朋友:

相关文章

解决 SVN Skipped 'xxx' -- Node remains in conflict

更新命令:svn up提示代码:意思就是说 ,这个文件冲突了,你要解决下Updating '.': Skipped 'data/config.php' -- ...

centos 配置Let's Encrypt 泛域名https证书

centos 配置Let's Encrypt 泛域名https证书

前言2018年1月份Letsencrypt可以申请泛域名证书,这让我们部署多域名、多站点https省了很多功夫,终于可以不用维护多个域名的https证书。笔者以acme.sh为例,手把手教你配置https证书~本教程适用于centos 6....

PHP和Redis实现在高并发下的抢购及秒杀功能

抢购、秒杀是平常很常见的场景,面试的时候面试官也经常会问到,比如问你淘宝中的抢购秒杀是怎么实现的等等。抢购、秒杀实现很简单,但是有些问题需要解决,主要针对两个问题:一、高并发对数据库产生的压力二、竞争状态下如何解决库存的正确减少("...

微软Windows 10升级密钥(例如家庭版升级为企业版) 不能用于激活系统

微软Windows 10升级密钥(例如家庭版升级为企业版) 不能用于激活系统

下面的密钥,是微软官方提供的,仅能用于Windows10系统版本的升级,比如从家庭版升级为专业版、专业版升级为企业版等。升级密钥不能用于激活系统,激活需要KMS或者数字权利,由于涉及到版权问题,在此不宜分享,请大家自行查找激活相关的内容。准...

七牛html js上传带进度条源码

七牛html js上传带进度条源码注册链接https://s.qiniu.com/uM7RJv完整代码下载:https://n802.com/f/349707-489018989-c141f6(访问密码:5036)http://www.yi...

python3 selenium webdriver.Chrome php 爬取汽车之家所有车型详情数据[开源版]

介绍本接口是车型库api的补充,用于爬取汽车之家所有车型详情数据开源地址:https://gitee.com/web/CarApi/tree/master/python软件架构python3 selenium webdriver.Chrom...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。