运行 Trimage 需要哪些依赖和前置条件?

更新时间

Trimage 是一个跨平台的 PNG/JPG 无损压缩工具,提供图形界面和命令行两种用法。要让它正常运行,需要同时满足两类条件:Python 运行环境(Python 3 + python-qt5)和四个外部压缩工具(optipng、pngcrush、advpng、jpegoptim)。Trimage 本身不实现压缩算法,而是调用这些工具完成实际压缩,因此缺少任何一个外部工具,对应格式的压缩就会失败。

依赖清单与最低版本

依赖 作用 最低版本要求
Python 3 运行 Trimage 本体 未标注具体小版本
python-qt5 提供图形界面 未标注具体小版本
optipng 优化 PNG 0.6.2.1
pngcrush 优化 PNG 1.6.7
advancecomp(提供 advpng) 优化 PNG 1.15
jpegoptim 优化 JPG 1.2.2

注意 advancecomp 是软件包名,实际被调用的可执行文件是 advpng。安装时按发行版的包名查找即可。

各平台安装方式

Debian(sid)与 Ubuntu

两者都在官方仓库中,直接用包管理器安装:

sudo apt-get install trimage

用包管理器安装的好处是依赖会被自动解决,通常不需要再手动逐个安装 optipng、jpegoptim 等工具。如果你是从源码安装,才需要自行确认这些外部工具是否齐全。

Arch Linux

Trimage 在 AUR 中,页面给出的安装命令是:

yaourt -S trimage

AUR 包一般会声明依赖关系,安装过程中会一并拉取所需工具。

macOS

通过 Homebrew 安装:

brew install trimage

安装完成后在 Terminal.app 中执行 trimage 启动。

其他类 Unix 系统(源码安装)

这是最需要手动处理依赖的场景,步骤为:

  1. 通过 git 或 bzr 获取源码(仓库见下文);
  2. 确认上文表格中的全部依赖已安装且版本达标;
  3. 执行 python setup.py install;
  4. 在终端执行 trimage 启动。

验证依赖是否就绪

源码安装后如果启动报错或压缩无输出,按以下顺序排查:

  • 确认 Python 版本:执行 python3 --version,确保是 Python 3 而非 Python 2。
  • 确认 Qt 绑定可用:python-qt5 缺失时,图形界面通常无法启动;此时可先用命令行模式验证核心功能是否正常。
  • 逐个检查外部工具:分别执行 optipng --version、pngcrush -version、advpng --version、jpegoptim --version,对照上表的最低版本。任何一个缺失或版本过低,都会导致对应格式压缩失败。
  • 用单文件测试:trimage -f 图片文件 压缩单个文件后退出,比批量处理更容易定位问题。

常见卡点

  • 只装了 Trimage 没装外部工具:源码安装时最容易出现。Trimage 只是调度器,工具缺失时压缩不会生效。
  • 系统里存在旧版本工具:例如发行版仓库中的 optipng 低于 0.6.2.1,需要升级或从源码编译新版。
  • 命令行与图形界面表现不一致:图形界面依赖 python-qt5,命令行不依赖;如果 GUI 打不开但命令行可用,问题基本锁定在 Qt 绑定上。
  • 元数据被移除:Trimage 在最高可用压缩级别下无损压缩,同时会删除 EXIF 及其他元数据。这是设计行为,不是故障,但需要保留拍摄信息的图片要提前备份原图。

获取帮助

Bug 反馈请走 GitHub(Trimage 主要在 GitHub 上开发,也在 Launchpad 有 bzr 仓库);一般性问题可发邮件至 [email protected],但页面明确说明他们并非专职帮助台,回复不保证及时。Trimage 采用 MIT 许可证,源码安装遇到依赖问题时,也可以直接在仓库中提 issue。