面向 Mac 开发者的图片压缩工具。用 URL Scheme、Apple Shortcuts、文件夹监控和图片压缩 API 把 Web 开发图片优化做成自动化流水线。
如果你在做网站或 Web 应用,图片体积是少数你能真正掌控的性能杠杆之一。但大部分团队仍然在手动优化:把导出文件拖到在线工具,凭手感拉滑块,再手动提交结果。这套流程对付一张图还行,可一旦项目里有几百张截图、营销素材和内容稿,就完全跑不动。
开发者真正需要的是一个像构建工具一样的图片压缩工具 —— 可脚本化、可重复、不打扰人。Zipic 是一款 macOS 原生应用,通过 URL Scheme、AppIntents、Apple Shortcuts、文件夹监控和 Finder 集成把整套压缩引擎暴露出来。换句话说,它给你提供了一套真正可以塞进现有开发流程的 Mac 图片压缩 API。
本文带你过一遍 Web 开发者用 Zipic 压缩图片的四种方式 —— 从 Finder 上一次性压缩,到完全自动化的 CI 风格流水线。
手动压缩根本扩展不了。一个普通的产品团队会持续产出:
⌘⇧4 截图(PNG,每张 2–5 MB)没有自动化时,每张图都是体力活:开工具、选质量、保存、改名、提交。乘以发布频率,就是几小时的杂活 —— 或者更糟,紧赶时间直接漏掉压缩。
脚本化流程能彻底解决这件事:
| 手动流程 | 脚本化流程 |
|---|---|
| 打开在线工具,上传,下载 | 一行命令或一个键盘快捷键 |
| 一张张拍脑袋决定质量 | 用预设固化团队标准 |
| 大批量速度感人 | 500 张目录几秒搞定 |
| 赶 deadline 经常忘 | 文件出现就自动跑 |
接下来四种脚本化方式,正是把这套流水线搭起来的关键。
Zipic 的 URL Scheme 是 Mac 上最接近真正图片压缩 API 的形态。基地址是 zipic://compress,所有压缩选项 —— 输入路径、输出格式、级别、调整尺寸、保存位置 —— 都映射成查询参数,你可以用任何语言拼出来。
最小调用长这样:
open "zipic://compress?url=/Users/me/exports/hero.png&format=webp&level=3&directory=/Users/me/site/public/img&location=custom"
完整参数列表:
| 参数 | 类型 | 用途 |
|---|---|---|
url | string(可重复) | 图片或文件夹路径,传多个 url= 即可批量。 |
format | string | 输出格式:original、jpeg、webp、heic、avif、png、jxl |
level | double(1–6) | 压缩级别。Web 场景 2–3 最稳。 |
directory | string | 当 location=custom 时的输出目录。 |
location | string | original 或 custom。 |
width / height | double | 调整到目标尺寸;0 表示等比例自适应。 |
addSuffix / suffix | bool / string | 给文件名追加后缀,比如 -compressed。 |
因为本质就是 URL,任何能打开 URL 或调 shell 的语言都能调用:
# Python — 部署前先把 exports 目录压一遍
import subprocess
url = (
"zipic://compress?"
"url=/Users/me/site/exports&"
"format=webp&level=3&"
"directory=/Users/me/site/public/img&"
"location=custom&"
"width=1920"
)
subprocess.run(["open", url])
// Swift — 在 Xcode 的 Run Script Phase 或构建脚本里触发
import AppKit
let url = URL(string: "zipic://compress?url=/Users/me/site/exports&format=webp&level=3")!
NSWorkspace.shared.open(url)
// Node — 在 postbuild 脚本里调用
const { execSync } = require("node:child_process");
const url = "zipic://compress?url=/Users/me/site/dist/img&format=avif&level=3";
execSync(`open "${url}"`);
下面这段视频展示了在 iTerm2 里用 URL Scheme 触发压缩 —— 图片直接被压成 WebP 并保存,整个过程 Zipic 主窗口都没出现。
Zipic 的压缩预设在 设置 → 工作流 里维护,这里也可以打开静默模式,让 URL Scheme 调用在后台压缩,不把应用拉到前台:
完整参数文档:工作流集成。
如果你想要比裸 URL 更强的能力 —— 错误处理、动作链、参数从输入读 —— Zipic Pro 原生支持 AppIntents。这意味着 Zipic 的动作直接出现在 Apple Shortcuts 里,和 Finder、Files 以及其他兼容 AppIntents 的应用并列。不用解析 URL,不用转义,不用拼字符串。
Zipic 暴露了两个 AppIntents 动作:
一个典型的开发者快捷指令长这样:在 Finder 里做一个 Quick Action,拿当前选中文件,用级别 3 压成 WebP,然后保存到 dist/img 文件夹。把它绑到 ⌃⌥C 这样的快捷键,你在 Finder 里随手选文件就能一键发布。
下面的视频演示了两种触发方式:键盘快捷键,以及 Finder 右键 → 快速操作 → Zipic。
相比裸 URL Scheme,最大的优势是组合性。你可以在 Shortcut 里把 Zipic 和其他动作串起来 —— 读文件名、发到 Slack、写清单、上传 S3 —— 而不用跳出自动化层。复杂的流水线里 AppIntents 也比 URL Scheme 可靠得多,因为它原生处理错误。
URL Scheme 适合能挂钩构建步骤的场景。但有时候最干净的集成方式是 完全不集成 —— 直接让 Zipic 盯住一个目录,新出现的所有图片自动压。
Zipic Pro 的文件夹监控会监视你指定的目录,按你给它配的预设自动压缩任何新出现的图片。Web 开发者最常用的几个监控目标:
dist/img 或 public/img —— 构建产物自动压,连 vite.config.js 和 webpack 都不用动每个监控目录可以用独立预设,所以你能给一个目录配无损 PNG,给另一个配激进的 AVIF。
设置只要点几下:Zipic → 设置 → 自动化 → +,选目录、设置监控深度(0 表示只监控顶层,1–5 包含子目录),选预设。配完之后,任何保存到这个目录的文件都会被自动压缩。
更深入的内容见 macOS 自动化:文件夹监控自动压缩图片 和 监控目录自动压缩文档。
不是每个任务都需要全自动化。有时候你只想压一下 code review 时随手截的三张图,再贴到 PR 描述里。这种场景 Zipic 提供了两个零配置的入口:
⌘ Space → "Compress",Zipic 会处理 Finder 当前选中的文件。完全不用碰鼠标,特别适合键盘流开发者。详见 Raycast 扩展指南。两条路径用的是和 URL Scheme 完全一样的压缩引擎和预设系统,唯一的区别是交互方式。哪种顺手就用哪种。
流水线就位之后,下一个问题是 压成什么。答案取决于素材类型。下面是一份面向开发者的决策矩阵:
| 素材类型 | 格式 | 级别 | 备注 |
|---|---|---|---|
| Hero / 首屏图片 | AVIF + WebP 兜底 | 3 | 性价比之王;用 <picture> 提供 |
| 截图 / UI 抓图 | WebP | 3 | 比 PNG 小 30%,视觉无损 |
| 摄影照片 | AVIF 或 WebP | 2–3 | CDN 支持时 AVIF 大约再省 20% |
| 营销缩略图 | WebP | 4 | 小图可以放心激进压缩 |
| 带透明的图标 / Logo | WebP 或 PNG | 3 | 不要用 JPEG(无 alpha 通道) |
| OG / 社交分享图 | JPEG | 2 | 兼容性最大化 |
几条值得收藏的经验:
width 参数对齐你最大的布局宽度。更长的格式分析见 JPEG vs PNG vs WebP:该选哪种图片格式? 和 如何为你的项目选择合适的图片格式。
上面这些都可以在 Zipic 里预先配成预设,然后在 URL Scheme 调用或 Shortcuts 里按名字引用:
下面这套组合拳是一个发布营销站的小团队真实在跑的:
~/Design/exports。Zipic 监控这个目录,每张导出图自动转成 AVIF 级别 3,宽度上限 1920。~/Sites/marketing/public/img/blog。第二个监控目录把它们压成 WebP 级别 3。prebuild 的 Node 脚本对整个 public/img 目录跑一次 zipic://compress,作为兜底扫尾。⌘ Space → Compress 一次性压缩临时文件,全程不离开键盘。最终结果:团队没人再手动压图。预设负责固化标准,监控目录负责自动执行标准,URL Scheme 作为构建期的安全网兜底。
完整文档:工作流集成 | 监控目录自动压缩 | 图片压缩基础
想给你的开发流程加一套图片压缩 API?下载 Zipic — 免费版每天 25 张图。Zipic Pro 解锁 URL Scheme 高级参数、AppIntents、文件夹监控和无限批量处理 — 一次买断,无订阅。