帮谷歌推广Webp图片格式之:Webp的格式转换

帮谷歌推广Webp图片格式之:Webp的格式转换

大家好,又见面了,我是全栈君。

参考谷歌官网:Webp: A new image format for the Web

Webp是Google强推的新一代网络图片格式,特点就是:高质量压缩。
能压缩多少呢?5MB的原图,不降低效果,转换成webp格式后大小是几百KB。100KB的图,转换后是9KB。

虽然目前所有主流浏览器都支持这种图片格式,但不幸的是所有主流系统如Mac、Win等都还没有默认支持打开它的程序,更无法显示它的预览、缩略图。

帮谷歌推广Webp图片格式之:Webp的格式转换

 

如果想查看,最简单的方法是把*.webp文件的打开方式设定为Chrome等浏览器,双击打开在浏览器中查看。

还有很多时候我们需要对这种文件进行转换。

Google提供了一组工具集合,叫libwebp,其中包括各种webp相关转换的命令:

  • cwebp — 将其它图片转为webp格式图片 (不包括GIF)
  • dwebp — 将webp格式图片转为其它格式图片
  • vwebp — webp图片浏览器
  • webpmux — WebP muxing tool
  • gif2webp — 将GIF转换为webp图片

下载安装参考官网:Downloading and Installing WebP

Ubuntu安装libweb库:

$ sudo apt-get install webp

Mac安装libwebp库:

$ brew install webp

注意:Homebrew安装的webp并不包括上面所有的工具,而只有cwebpdwebp

如果我们想要所有的工具,有两种方法:

  • 到官网找到自己OS对应版本的二进制包,直接运行使用
  • 自己编译

最简单就是到官网下载列表里找到自己的OS对应版本的二进制包,下载下来解压缩直接使用。
官方下载列表:https://storage.googleapis.co…

比如我的系统是Mac 10.12,那么就找到libwebp-0.6.0-mac-10.12.tar.gz这个压缩包下载:

cd /tmp wget https://storage.proxy.ustclug.org/downloads.webmproject.org/releases/webp/libwebp-0.6.0-mac-10.12.tar.gz tar xvzf libwebp-*.tar.gz cd libweb-*

然后在~/.zshrc~/.bash_profile中的PATH环境变量中加入刚才二进制文件包中的bin目录,或者直接设置alias,即可开始像别的命令开始用了。

如果没有自己所用系统的二进制包,那么就只能自己编译了。每种平台的编译方法不一样,需要按照官网方法一步一步安装。

编译方法参考官方:Compiling the Utilities

将各种图片转换为Webp格式

参考:https://developers.google.com…

目前输入格式支持:png, jpg

$ cwebp INPUT.png -o OUTPUT.webp

将Webp图片转换为其它格式图片

参考:https://developers.google.com…

$ dwebp INPUT.webp -o OUTPUT.png

将GIF转换为Webp格式

参考:https://developers.google.com…

$ gif2webp INPUT.gif -o OUTPUT.webp

浏览webp图片

这个命令不是在命令行终端里浏览图片,而是在桌面上弹出一个GUI窗口显示图片,所以需要依赖本地电脑的GUI桌面。

 
$ vwebp INPUT.webp

转载:https://segmentfault.com/a/1190000018178569
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/112176.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 模型评估

    模型评估

    2021年5月19日
    184
  • tensor 和 numpy 的互相转换

    tensor 和 numpy 的互相转换为什么要相互转换:1.要对tensor进行操作,需要先启动一个Session,否则,我们无法对一个tensor比如一个tensor常量重新赋值或是做一些判断操作,所以如果将它转化为numpy数组就好处理了。下面一个小程序讲述了将tensor转化为numpy数组,以及又重新还原为tensor:2.Torch的Tensor和numpy的array会共享他们的存储空间,修改一个会导致另外的一…

    2022年10月19日
    0
  • 使用 openssl 生成证书(含openssl详解)「建议收藏」

    使用 openssl 生成证书(含openssl详解)「建议收藏」原文一、openssl简介openssl是目前最流行的SSL密码库工具,其提供了一个通用、健壮、功能完备的工具套件,用以支持SSL/TLS协议的实现。官网:https://www.openssl.org/source/构成部分密码算法库密钥和证书封装管理功能SSL通信API接口用途建立RSA、DH、DSAkey参数建立X.5

    2022年9月19日
    0
  • MySQL自动化运维平台建设

    MySQL自动化运维平台建设MySQL自动化运维工具Inception一、Inception简介Inception是集审核、执行、回滚于一体的一个自动化运维系统,它是根据MySQL代码修改过来的,用它可以很明确的,详细的,准确的审核MySQL的SQL语句,它的工作模式和MySQL完全相同,可以直接使用MySQL客户端来连接,但不需要验证权限,它相对应用程序(上层审核流程系统等)而言,是一个服务器,在连接…

    2022年5月17日
    33
  • postgreSql修改端口后psql命令行链接报错”/tmp/.s.PGSQL.5432“

    postgreSql修改端口后psql命令行链接报错”/tmp/.s.PGSQL.5432“今天修改pg的端口号port改成54328后重启完数据库的时候直接psql进库的时候进不去[postgres@iZ8vbifqgkwljcq9ccpkg7Zdata]$psqlpsql:couldnotconnecttoserver:NosuchfileordirectoryIstheserverrunninglocallyandacceptingconnectionsonUnixdomainsocket”/tmp/.s.PGSQL.5432这时,

    2022年6月19日
    56
  • 机器学习面试题60~100「建议收藏」

    机器学习面试题60~100「建议收藏」61.说说梯度下降法  @LeftNotEasy,本题解析来源:http://www.cnblogs.com/LeftNotEasy/archive/2010/12/05/mathmatic_in_machine_learning_1_regression_and_gradient_descent.html  下面是一个典型的机器学习的过程,首先给出一个输入数据,我们的算法会通过一系列的过程得到一…

    2022年5月23日
    34

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号