-
图片基本处理
七牛提供了一些图片处理方式,比如:
- **图片基本处理 ** √
- **图片瘦身 **
- 图片高级处理
-
图片水印处理
等多种功能,这里我们简单的讲下图片的基本处理方式-----** 缩略图**。
imageView2
缩略图采用的是imageView2接口,只需要填写几个参数即可对图片进行缩略操作,生成各种缩略图。imageView2接口可支持处理的原图片格式有psd、jpeg、png、gif、webp、tiff、bmp。
接口的规格
注意:接口规格不含任何空格与换行符。
imageView2/<mode>/w/<LongEdge>
/h/<ShortEdge>
/format/<Format>
/interlace/<Interlace>
/q/<Quality>
/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,但超出限定的矩形部分会被裁剪。 |
注意:
可以仅指定w参数或h参数。
新图的宽/高/长边/短边,不会比原图大,即本接口总是缩小图片。
所有模式都可以只指定w参数或只指定h参数,并获得合理结果。在w、h为限定最大值时,未指定某参数等价于将该参数设置为无穷大(自适应);在w、h为限定最小值时,未指定参数等于给定的参数,也就限定的矩形是正方形。
处理后的图片w和h参数不能超过9999像素,总像素不得超过24999999(2500w-1)像素。
处理前的图片w和h参数不能超过3万像素,总像素不能超过2亿像素。
参数名称 | 说明 |
---|---|
/format/<Format> | 新图的输出格式的格式为jpg,gif,png,webp,默认为原图格式 |
/interlace/<Interlace> | 是否支持渐进显示取值范围:1 支持渐进显示,0不支持渐显示(默认为0)。适用目标格式:jpg效果:网速慢时,图片显示由模糊到清晰。 |
/q/<Quality> | 新图的图片质量取值范围是[1, 100],默认75。七牛会根据原图质量算出一个修正值,取修正值和指定值中的小值。注意:● 如果图片的质量值本身大于90,会根据指定值进行处理,此时修正值会失效。● 指定值后面可以增加 !,表示强制使用指定值如100!。● 支持图片类型:jpg。 |
/ignore-error/<ignoreError> | 可选取值:1● 未设置此参数时,正常返回处理结果。● 设置了此参数时,若图像处理的结果失败,则返回原图。● 设置了此参数时,若图像处理的结果成功,则正常返回处理结果。 |
下面简单的写个实例:
裁剪正中部分,等比缩小生成200x200缩略图:
http://odum9helk.qnssl.com/resource/gogopher.jpg?imageView2/1/w/200/h/200
到此七牛的图片上传及缩略图就简单的介绍到这里,大家有兴趣可以直接到七牛官网查看更加详细的API说明,本人也是小白,也在学习阶段,希望大家能多分享一下自己的一些心得或者技术,一起进步!