什么是渐进式图片?
图片加载方式主要有两种: 一种是线性加载,而另一种则是渐进式加载。
线性加载其实就是在我们浏览网页时常看见的那种 —— 网速足够慢或者图片尺寸过大时,可以看到图片的加载方式由上至下,一点一点的加载。
渐进式 则如同名字一般, 它会先显示低分辨率的近似图像,再逐步的增加图片分辨率(模糊到清晰)。
jpeg渐进加载
渐进式jpeg图片的压缩方式则是根据小波变换分层存储的,先存储低频(轮廓)内容,然后再存储高频(细节)内容,这样在拉取图片的过程中,就是一个逐渐清晰的过程。
jpeg结构:
JPEG文件内部分为若干块,这些块由ff开头(截图中已标出部分),ff后紧跟的一个标记符指明了这个块的类型。 这些分块按出现顺序分别是:
普通jpeg 里面只有一个ffda
渐进式 jpeg 里面含有多个ffda
区别: 普通jpeg图片是以像素形式存储图片的,而渐进式jpeg是用频率系数来代表图像,这样并不会增加文件的大小,因为这两种渲染方式的图片数据是一致的,只不过渐进式jpeg用了一种更易用的方式排序,就像是一系列预定义的样式,以任意顺序混合都能可以重新构建原图。
渐进式图片的优缺点
优点:
-
•
可针对移动网络的场景优化流量,即用户可以只下载渐进式图片的一部分,以达到降低图像分辨率和减少流量的目的。
-
•
减少等待时间,用户可以先看到图片的轮廓再逐步补充细节
缺点: 图片需要转换成为渐进式格式,有一定的成本,因为现有图片大多是普通格式压缩的