V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
bertonzh
V2EX  ›  分享创造

写了一个压缩 PNG/JPEG 的 GUI 工具

  •  1
     
  •   bertonzh ·
    meowtec · 2017-06-27 13:02:06 +08:00 · 6123 次点击
    这是一个创建于 2466 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在已经有很多压缩图片的工具了,包括一些在线网页、桌面应用、命令行等。但是大多数是只能使用默认参数,不能优化到极致。

    以前我经常使用 ImageAlpha, 它是一个 to PNG 8 的 GUI 压缩工具,有一个控制面板可以用来调整 PNG 图片色彩数。色彩数越小,压缩体积就越小。这样就可以在肉眼容忍程度内,尽可能地让图片压缩更小。

    但是 ImageAlpha 有一些缺点:

    • 首先是只支持 PNG,对于 jpeg 的压缩,我不得不选择 PhotoShop.
    • 一次只能处理一张,保存也不方便。
    • 是只支持 OSX

    于是我受到(抄袭) ImageAlpha 启发,写了一个图片压缩的 GUI 工具,叫做 Imagine.

    repo: https://github.com/meowtec/Imagine

    特性

    • 支持 PNG 和 JPG
    • 能实时观察优化结果
    • 批量处理文件和保存
    • 跨平台,目前提供 Windows 和 macOS 的安装包
    • 多语言支持

    技术实现

    分别使用 pngquant 和 mozjpeg 优化 PNG 和 JPEG. GUI 基于 Electron + React.

    截图

    28 条回复    2021-12-03 11:41:22 +08:00
    designer
        1
    designer  
       2017-06-27 13:05:53 +08:00 via iPhone
    支持!
    dreammes
        2
    dreammes  
       2017-06-27 13:06:17 +08:00
    谢谢 lz
    mrcn
        3
    mrcn  
       2017-06-27 14:10:30 +08:00 via Android
    界面好评
    353943780
        4
    353943780  
       2017-06-27 14:22:32 +08:00
    跟 tinypng 可以对比一下么?
    goldenlove
        5
    goldenlove  
       2017-06-27 14:37:54 +08:00
    喵图好评..... jpg 是用的哪个压缩的?
    goldenlove
        6
    goldenlove  
       2017-06-27 14:42:38 +08:00
    哦,看到了~ moz... 不错,已 star。楼主加油~
    v1024
        7
    v1024  
       2017-06-27 14:43:16 +08:00 via iPhone
    滋磁。如果能加入插件系统,压缩完直接上传就完美了
    bertonzh
        8
    bertonzh  
    OP
       2017-06-27 15:26:29 +08:00
    @353943780

    这两张分别是 tinypng 和 Imagine(pngquant) 压缩的 PNG:

    tinypng []( http://7qn7vf.com1.z0.glb.clouddn.com/amazon-tinypng.png)
    Imagine []( http://7qn7vf.com1.z0.glb.clouddn.com/amazon-imagine.png)

    分别是 8K 和 5K

    Imagine 可以调整色彩数,第二张图是色彩数为 12 的结果,仔细看可以看到箭头没有第一张平滑。不过 Imagine 的色彩数可以调高一点,调到 26 ( 6K )就看不出差距了。

    原图 []( http://7qn7vf.com1.z0.glb.clouddn.com/amazon.png)

    Imagine 使用 pngquant 压缩 PNG,tinypng 不知道用的啥,感觉两者的压缩能力是差不多的。 但是 Imagine 可以灵活地调节色彩数和质量,在肉眼范围内,体积可以比 tinypng 更小。
    jzhcctv
        9
    jzhcctv  
       2017-06-27 16:50:43 +08:00
    https://github.com/meowtec/Imagine
    下载不下来,N 次了能上个百度网盘不

    bertonzh
        10
    bertonzh  
    OP
       2017-06-27 17:11:58 +08:00
    @jzhcctv 传到七牛云了,刷新 releases 页面
    mseasons
        11
    mseasons  
       2017-06-27 17:18:49 +08:00
    咳咳…有 win 版本的吗
    bertonzh
        12
    bertonzh  
    OP
       2017-06-27 17:27:43 +08:00
    @mseasons 你 Ctrl + F 搜一搜 win
    zhengjian
        13
    zhengjian  
       2017-06-27 22:19:49 +08:00
    感谢楼主分享,但是一般用腾讯的智图,http://zhitu.isux.us/,gif 压缩率也挺棒的。
    mingyun
        14
    mingyun  
       2017-06-27 23:44:25 +08:00
    nice
    mabutou
        15
    mabutou  
       2017-06-28 14:15:25 +08:00
    win10 有点 bug,macOS 没问题
    bertonzh
        16
    bertonzh  
    OP
       2017-06-28 15:16:13 +08:00
    @mabutou 我只在虚拟机 Windows Embedded 7 里面测过

    如果有 BUG 可以提 issue: https://github.com/meowtec/Imagine/issues
    goldenlove
        17
    goldenlove  
       2017-06-28 16:12:54 +08:00
    印象中 tiny 也是走 pngquant ... 只能是调用参数等细节有差异了吧。

    顺便反馈:
    Mac 下拖目录没反应,必须全选图片才有效?感觉这个问题应该好解?
    bertonzh
        18
    bertonzh  
    OP
       2017-06-28 16:35:55 +08:00
    @goldenlove 没试过托目录,晚上有空看一下,应该好解决
    pixes4world
        19
    pixes4world  
       2017-06-29 09:23:33 +08:00
    功能很赞,已 star
    bertonzh
        20
    bertonzh  
    OP
       2017-06-30 20:09:38 +08:00
    @goldenlove 这个能力在新版本里面已经加上去了。
    @mabutou Windows 里面的确有问题,是一个低级错误导致的,已修复。

    Thanks
    goldenlove
        21
    goldenlove  
       2017-07-02 11:21:11 +08:00
    @bertonzh

    好,有空更新试试~ 楼主很勤快哈。
    keller
        22
    keller  
       2017-07-03 11:24:51 +08:00
    不错不错,之前用 ImageOptim 又慢压缩质量又差。
    ab
        23
    ab  
       2017-09-28 06:39:00 +08:00 via iPhone
    mark
    youthfire
        24
    youthfire  
       2021-12-03 11:03:24 +08:00
    设计很好,但是逻辑不明白,quality 都是默认 80%,如果我设置 100%,按道理应该不变小,但选择后,体积反而增加了
    bertonzh
        25
    bertonzh  
    OP
       2021-12-03 11:27:32 +08:00
    @youthfire 你用 ImageMagick 命令的 quality 参数试一下就明白了。或者用 PhotoShop 输出 JPG 试一下,也有质量参数。
    质量 100% 也是要重新进行编码的,既然重新编码了就可能导致体积变化。100% 只表示处理前后质量效果基本没有区别而已。
    youthfire
        26
    youthfire  
       2021-12-03 11:30:02 +08:00 via iPhone
    @bertonzh #25 感谢,我刚发 issue ,看来可以关闭了
    bertonzh
        27
    bertonzh  
    OP
       2021-12-03 11:36:56 +08:00
    @youthfire 之前有人提出过这个问题,所以后面加了一个一键清除增大文件的开关。
    遇到这种情况说明你的原文件压缩得不错,所以可以清除掉直接用原文件。
    youthfire
        28
    youthfire  
       2021-12-03 11:41:22 +08:00 via iPhone
    @bertonzh #27 很棒的工具,再次感谢分享和创造
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3022 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 15:00 · PVG 23:00 · LAX 08:00 · JFK 11:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.