← 返回博客

ImgZilla 1.3 正式发布

ImgZilla 1.3 正式发布:一个「原地图片无损压缩」工具,为什么做了这么久 ImgZilla 正式上架 Mac App Store了。 它的核心功能很明确:把 Mac 上的图片原地压小——文件名、路径、格式都不变,原图默认进回收站,随时可以还原。

分享

ImgZilla 1.3 正式发布:一个「原地图片无损压缩」工具,为什么做了这么久

ImgZilla 正式上架 Mac App Store了。

它的核心功能很明确:把 Mac 上的图片原地压小——文件名、路径、格式都不变,原图默认进回收站,随时可以还原。

这些操作全部在你自己的 Mac 上完成,无需联网,图片不会离开你的电脑,也不会上传任何服务器——隐私和数据安全从一开始就是基础设计。

这个功能看起来简单,但我们反复测试、推翻、重做了很多轮。这篇文章想记录的,不是「我们做了什么功能」,而是在真实使用场景中遇到的具体问题,以及最终改成的样子


「原地覆盖」这四个字,容不得半点马虎

大多数图片压缩工具会把结果另存为 photo-min.jpg——安全,但也把麻烦留给了你:文件名变了,商品表里的引用、网页模板里的路径、归档目录的排序,全都要跟着改。

ImgZilla 选择了另一条路:压缩结果直接写回原路径、原文件名、原格式。JPG 压完还是 JPG,引用不用改一行。

代价是:这个工具动的是用户的原始文件。一旦哪一步出错,丢的不是缓存,是别人拍了一整天的照片、攒了好几年的收藏。

所以产品真正花时间的地方,从来不是压缩本身——压缩交给成熟的编码器就够了——而是围绕「万一」的那一圈防护。下面这些改进,都是测试中被真实遇到的。


测试里改掉的几件事

1. 原图保护策略,推翻重做过一次

最初的设计是把原图复制到一个专门的备份目录里。逻辑没问题,但用起来别扭:备份目录会悄悄变大,用户压了几个月才发现磁盘上多了一份完整副本,而当初想做的事恰恰是省空间

现在的做法是回收站优先:压缩成功时,原图先移入系统废纸篓,再把压缩结果写回原路径。

还原方式变成了每个 Mac 用户都已经会的操作——打开废纸篓,右键「放回原处」。不需要学习新概念,也不会有越长越大的隐藏目录。这个开关在设置里默认开启;关掉就是直接覆盖且不可恢复,所以关闭时会弹二次确认。

2. 外置硬盘上的那个弹窗,是被测试逼出来的

在移动硬盘、NAS、网络卷上测试时,我们遇到了一个 macOS 上的常见问题:这些位置经常无法把文件移入回收站。

第一版的处理是直接报错跳过——结果是用户拖进一整个文件夹,什么都没发生。

现在的处理是:压缩暂停,弹窗让你决定:

  • 选一个备份目录:原图复制到那里,再覆盖原图;
  • 放弃备份:二次确认后直接覆盖,不保留副本;
  • 关闭弹窗:视为取消,整个任务中止。

还有一个细节是测试中加上的:你的选择会应用到本次剩余的所有文件,否则 500 张图会连续弹 500 次窗——第一版就是这样,自己用一次就受不了了。

选定的备份目录会被记录为默认备份位置(~/Library/Application Support/ImgZilla Backups/ 下按时间建子目录),后续遇到同类情况时优先使用。

3. 「已最小」:宁可什么都不做

有些图片在拖进来之前已经被压缩过(无论是用其他工具还是此前用 ImgZilla 处理过),再次压缩通常只能换来零点几个百分点的体积变化。我们对此定了一条硬性规则:压缩率不足 0.4% 的,不动它,列表里标记为「已最小」,原文件原样保留,也不消耗免费额度。

这条规则会让统计数字变得没那么好看——一整本已被压过的图集拖进来,可能大部分都显示「已最小」。但我们认为,一个为了显示成绩而把你的图再压一遍的工具,不值得放在你的原始文件上

4. 后缀名骗人的时候

测试样本里出现过不少「后缀写着 .png、其实是 JPEG」的文件——从各种渠道流转下来的图,比想象中多。

现在 ImgZilla 会读取文件头的魔术字节来判断真实格式,按真实格式选择编码器。后缀写错,也能正确处理。

5. 串行处理,而不是并行

一张一张按顺序压,看起来「不够快」。我们试过并行,速度确实上去了,但在大批量任务里出错时的状态变得难以追踪——而这个工具正在覆盖用户的原始文件。

稳定性优先于峰值速度,最终保留了串行处理。需要说明的是,串行指的是逐张处理任务,而每张图片的压缩过程本身由编码器内部利用多线程完成,不会浪费 CPU 的多核能力。作为界面上的补偿,我们做了这些:当前处理项自动滚动到可视区域,鼠标悬停时暂停自动滚动,底部实时显示已处理张数与节省体积,全部完成后发系统通知。

6. 免费额度用尽时,任务是「暂停」不是「中止」

免费版每天可以压 10 张,跨天自动重置。测试中我们发现,在哪一刻被打断,体验天差地别:如果拖进 200 张图,压到第 10 张直接失败退出,用户要重新添加全部文件——那这个提示就成了纯粹的骚扰。

现在的行为是:额度用完,任务暂停在原处,弹出购买面板;购买完成后,从断点继续压剩下的,不用重新添加任何文件。另外,额度只在压缩成功时才扣——压缩失败或「已最小」都不算。

7. 19 种语言选项,以及一个不那么显眼的收尾

界面完整支持 19 种语言选项(含“跟随系统”、简繁中文、English、日本語、한국어,及主要欧洲语言、العربية、Tiếng Việt 等),可在设置里随时切换,切换后立即生效,不用重启

这部分工作量远超预期,也是发布时间往后推的原因之一。但对一个在全球 App Store 上架的工具来说,让用户看到自己的母语,是最基本的尊重。


关于画质:请不要相信我们,请自己看

压缩这件事最难建立的就是信任。所以我们把话说清楚:

  • PNG(oxipng)和 SVG(svgcleaner)是真正的无损压缩,像素不变;
  • JPEG、WebP、AVIF、HEIC/HEIF、GIF 在原理上都是有损重编码,但参数选在了视觉无损的区间——肉眼几乎无法分辨,但它不是“无损”,我们不会把这两个词混着用。

而且,你不必凭信任接受这句话。ImgZilla 内置了图片对比窗口(⌘D):左边压缩前、右边压缩后,拖动中间的分割线左右对照,可以缩放到实际大小,仔细比对细节。列表里每一张压缩成功的图,都能一键唤起对比。

觉得不行,就去废纸篓把原图放回原处。 这条退路始终在。

参数是固定的,界面上没有质量滑块。这是一个明确的取舍:调参需要理解量化表、编码 method、speed 等专业概念,调错了要么白压、要么压糊。我们把这件事替你做完了——每种格式的参数都是单独调校的,拖进去点压缩,得到的就是该格式在当前参数下最理想的平衡点。

如果你习惯自己调节压缩参数,我们仍然建议你先试用一下 ImgZilla——参数已经过调校,或许能帮你省去反复试错的功夫。


它不做什么

同样重要的边界,写在这里,省得你下载完才发现:

  • 只有 macOS(12.3 及以上)。没有 Windows 版、没有 iOS 版、没有网页版。
  • 不转换格式。JPG 压完还是 JPG,不会变成 WebP。
  • 不改尺寸。不缩分辨率、不裁剪。
  • 不保证一定能压小。已经优化过的图,很可能一张都压不动,会老老实实标「已最小」。
  • EXIF 默认去除(包含 GPS 位置,文件更小也更保护隐私)。如果你需要保留拍摄参数、版权和色彩配置,请到设置里手动开启「保留 EXIF 信息」

还有一条值得单独强调:所有压缩都在你的 Mac 本机完成。 除 App Store 的购买校验外,ImgZilla 不需要联网,图片不会离开你的电脑——不排队、没有张数限制、也没有“上传到别人服务器”这回事。编码器全部是打包在 App 内的本地静态库。


现在可以开始用了

  • 免费版:每天 10 张,跨天自动重置,功能不阉割。
  • 解除限制:永久版(一次购买,不限数量)或按月订阅,价格按你所在的 App Store 地区显示。换了电脑或重装,点「恢复购买」即可。

建议的第一次使用方式:先随便拖一张你不太在意的图进去,压完点「对比」,自己看一眼画质,再决定要不要把整个文件夹交给它。

这也是我们希望这个工具被使用的方式——先验证,再信任

有任何问题或建议,欢迎通过菜单「帮助 → 反馈」告诉我们。1.3 是一个可以放心使用的版本,但它显然不会是最后一个。


ImgZilla 1.3 现已在 Mac App Store 上架。要求 macOS 12.3 或更高版本。

立即下载 -> App Store

想让图片更小更快?

下载 ImgZilla,在本机完成压缩,图片不上传云端。