700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > webp格式图片转化为常见的png格式图片

webp格式图片转化为常见的png格式图片

时间:2020-07-29 10:18:50

相关推荐

webp格式图片转化为常见的png格式图片

问题背景

在抓取百度首页和今日头条相关的创意广告时,发现有很多部分都是webp格式的图片,在调用图片去重算法时,报错退出,经排查发现库中调用的php api 函数‘getimagesize ( string $filename )',由于php为5.6版本,比较低,不能处理webp格式,只能处理常见的png,jpg, gif几种格式的图片。

webp格式图片介绍

WebP(发音 weppy,项目主页),是一种支持有损压缩和无损压缩的图片文件格式,派生自图像编码格式 VP8。根据 Google 的测试,无损压缩后的WebP 比 PNG 文件少了 45% 的文件大小,即使这些 PNG 文件经过其他压缩工具压缩之后,WebP 还是可以减少 28% 的文件大小。

参考网址:WebP 探寻之路探究WebP一些事儿

解决方案调研

(1)升级php5.6 到php7,使用getimagesize和imagecreatefromwebp 相关函数处理,但是考虑升级生产环境,对其他项目影响较大,不建议采用;

(2)python图片处理库,引入其他语言进行处理,代价稍微有点大,若是没有好的方法,可以采用;

(3) 采用google专门开发的libwebp项目,libwebp项目指南, 这个项目提高dwebp和cwebp两个命令行工具,使用其他非常方便,安装包很小,libwebp包下载地址,以及libwebp githup主页。【建议采用此种方案】

libwebp centos6.5 安装

按照libwebp包下载地址下载libwebp-0.6.0.tar.gz或者其他版本的包,由于libwebp库需要依赖glibc的libc.so.6库,需要2.14版本以上,由于升级glibc库代价比较高,可能引入未知的因素,会影响系统的其他线上项目,所以建议编译安装,步骤如下:

(1)./autogen.sh

(2)./configure --prefix=/path/to/libwebp

(3)make && make install

最后为了方便使用,在当前用户~/.bashrc 配置下export PATH=/path/to/libwebp/bin:${PATH},这样就可以直接引用dwebp和cwebp命令行工具了

cwebp 和dwebp 命令行工具的简单使用:

(1)Using cwebp to Convert Images to the WebP Format

cwebp 1.png -o 1.webp

(2) Using dwebp to Convert Images from the WebP Format

dwebp 1.webp -o 2.png

webp 格式图片可以使用chrome浏览器或者xee工具查看,这样就可以验证效果了

如果你觉得文章对你有帮助,请关注我的微信订阅号:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。