V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
beyoung
V2EX  ›  问与答

有批量将图片转换为 webP 格式的应用么 Win/Mac

  •  
  •   beyoung · Mar 31, 2017 · 2453 views
    This topic created in 3322 days ago, the information mentioned may be changed or developed.

    图片较多 想转为 webp 来减少文件体积

    有可以批量处理的应用么

    8 replies    2017-04-01 03:19:34 +08:00
    beyoung
        1
    beyoung  
    OP
       Mar 31, 2017
    原图为 jpg 格式
    coderluan
        2
    coderluan  
       Mar 31, 2017
    有是有,问题是 jpg 转 webp 会变大的, webp 是优化的 png , jpg 应该用 jpg2000 之类的
    coderluan
        3
    coderluan  
       Mar 31, 2017
    PS :如果图片相关性很大,比如糟糕黄油游戏提取出来的 cg ,可以用 hevc 子类视频压缩算法,效果很好。
    herozhang
        4
    herozhang  
       Mar 31, 2017 via iPhone
    imagemagick
    love4taylor
        5
    love4taylor  
    PRO
       Mar 31, 2017 via Android
    jevonszmx
        6
    jevonszmx  
       Mar 31, 2017
    mac 下安装官方 webp 工具就好了,自己写 shell 批量处理一下即可。

    我把我的给你参考一下。

    直接终端在图片目录执行即可,或者改成 ls /xxx/images :

    ```shell

    ls|while read line ; do a=$(echo "$line"|grep ".webp"|wc -l) ; [ $a -eq 1 ] && continue ; case "`file "$line" 2>/dev/null | sed -ne 's|^.*:[\t ][\t ]*||p'`" in PNG*|JPG*|JPEG*) ; /usr/local/bin/cwebp -q 80 $line -o $line.webp 2>/dev/null ;esac ; done

    ```

    转换规则是:

    列出当前目录的非 webp (粗暴地检测了文件名),如果文件存在并且文件属性是 png/jpg/jpeg ,则转换,后缀规则是直接文件名后面加.webp ( xxx.jpg => xxx.jpg.webp ),质量是 80%。

    原图压缩比在 60%以下的 jpg 有可能会变大,可能的话,安装一个 imagick ,用如下命令检测原图压缩比:

    ```

    identify -format "%Q" xxx.jpg

    ```
    jevonszmx
        7
    jevonszmx  
       Mar 31, 2017
    @Love4Taylor guetzli 压缩还行,就是太慢太卡。。。
    love4taylor
        8
    love4taylor  
    PRO
       Apr 1, 2017
    @jevonszmx #7 确实...但是效果贼好啊
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1055 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 49ms · UTC 17:34 · PVG 01:34 · LAX 10:34 · JFK 13:34
    ♥ Do have faith in what you're doing.