通过 Flash 让所有浏览器支持 WebP 格式图像解码

小卒过河
 小卒过河
发布于 2011年09月07日
收藏 8

感谢读者 zjcqoo 的自爆。

WebP是Google推出的一种图片格式,它基于VP8编码,可对图像大幅压缩。与JPEG相同,WebP也是一种有损压缩,但在画质相同的情况下,WebP格式比JPEG图像小40%。见 Wiki百度百科。它是一个开源项目,我们可以在此获取其中源码,以及相关工具。

显然,Google浏览器Chrome首先引入,此外Opera 11.10也增加对WebP的支持。但目前还缺少其它浏览器的支持(除非安装插件-WindowsMac OS),但这并不妨碍我们尝试!

大多数浏览器自身无法解码WebP格式,但可以交给我们来实现!虽然网页脚本无法胜任,但借助Flash技术,我们完全可以实现高效快速的解码。并且,几乎所有的浏览器都支持Flash,所以zjcqoo写了个WebP插件:

当前版本共3个文件:WebP.jsWebP.swfWebP.htc。在此下载打包文件。

在<body></body>之间插入如下代码,即可使用WebP了。

<script type="text/javascript" src="WebP.js"></script>

插件将会捕捉页面中使用WebP格式的img元素,并用Flash进行替换。图像的解码及显示都在Flash中完成,因此目前版本对CSS设置的背景图片无效。

当然,作为JPEG格式的替换,只有对较大的图像使用才有意义,否则过多的解码将消耗大量的资源。

etherdream网站里还有一些代码示范可以参考。

Via etherdream

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:通过 Flash 让所有浏览器支持 WebP 格式图像解码
加载中

最新评论(4

笨蛋EGG
笨蛋EGG
期待这种格式的流行和发展……
Jason_hu
Jason_hu
此外,Data URI理论上是最完美的解决方法。但经测试,超长的参数会消耗大量CPU和内存。

这个是没有使用js实现的原因。
沙逛鱼
沙逛鱼
人家不是说了吗“虽然网页脚本无法胜任”
返回顶部
顶部