Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Baseline JPEG vs. Progressive JPEG #4

Open
haledeng opened this issue May 19, 2015 · 4 comments
Open

Baseline JPEG vs. Progressive JPEG #4

haledeng opened this issue May 19, 2015 · 4 comments

Comments

@haledeng
Copy link
Contributor

概念

JPEG有两种存储格式:baseline 和 progressive。Baseline JPEG 会在数据可用时,一行一行自上而下显示。Progressive JPEG会先显示模糊图片,然后逐渐清晰

01-02_baseline_vs_progressive

浏览器渲染

Progressive JPEG在所有浏览器都会显示,这里的关注点是如何渲染。

qq 20150518145212

Chrome + Firefox + IE9 下 Progressive JPEG 加载很快。

对比

用户体验

Progresssive JPEG 用户体验更好,用户从开始就知道图片长什么样子,对于弱网用户来说,尤其必要。

文件大小

一般,Progressive 比 Baseline 格式小几KB。参考这里
实验
随机从网上下载图片,剔除4xx 和 5xx 错误后,剩余10360张图片,分别转化成 Baseline 格式 和 Progressive 格式。
结论

  • 大于 10K 的图片,Progressive 格式更小 (in 94% of the cases)。
  • 小于 10K 的图片,Baseline格式更小(75%)。

实际测试结论(这里受限于机器性能,样本不大):

qq 20150518192002

浏览器支持情况:
qq 20150525091646
即便在浏览器不支持的情况下,由于 Progressive 格式的图片比原图小,加载也会更快。

性能

Progressive 比较耗CPU, 对于移动设备来讲,这是一个顾虑,在低端机型上面可能不会支持Progressive,但是随着硬件升级。这个问题会得到解决。

参考文献:
http://yuiblog.com/blog/2008/12/05/imageopt-4/
http://calendar.perfplanet.com/2012/progressive-jpegs-a-new-best-practice/

@herbertliu
Copy link
Member

CDN支持图片Progressive之后,我们再补充一下这里的线上数据

@steelli
Copy link

steelli commented Jul 7, 2015

有数据了?

@herbertliu
Copy link
Member

@haledeng 看一下

@caihuiji
Copy link
Contributor

@haledeng 加一下数据看看

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants
@steelli @caihuiji @herbertliu @haledeng and others