集成 Zipic 能力
Zipic 提供了 URL Scheme 支持,不管是脚本还是其它 APP 都可以通过 URL Scheme 获得 Zipic 完整的图片压缩能力。
URL Scheme
Zipic 提供的 URL Scheme 为:zipic://compress。
通过 URL Params 可以指定要压缩对象和压缩选项。
指定压缩对象
zipic://compress? url=/Users/5km/Downloads/demo_jpeg.jpeg& url=/Users/5km/Downloads/demo_png.png& url=/Users/5km/Downloads/demo_folder可以指定多个压缩对象,压缩对象可以是图像路径也可以是文件夹路径。
指定压缩选项 Pro 版独享
zipic://compress? url=PATH_TO_IMAGE_OR_FOLDER& level=3.0& format=webp& directory=PATH_TO_SAVE_COMPRESSED_IMAGES& width=0& height=0& location=custom& addSuffix=false& suffix=-compressed& addSubfolder=false& specified=false压缩等级
等级越高,压缩的空间越大,质量越差。通常情况下,2级或3级可以在质量和大小之间取得平衡,但效果可能因格式而异。
参数: level,双精度类型
范围: 1~6,步长: 1.0
zipic://compress? url=/Users/5km/Downloads/demo_jpeg.jpeg& level=3.0文件保存文件夹
参数: directory,保存文件的路径,字符串类型
如果希望指定保存文件的文件夹,必须使用 location 选项并设置为 custom。
参数: location,字符串类型,可选如下:
originalcustom
zipic://compress? url=/Users/5km/Downloads/demo_jpeg.jpeg& location=custom& directory=/Users/5km/Desktop要将文件保存到默认文件夹,还必须启用 specified 选项并设置为 true。
参数: specified,布尔类型,默认值为 false
truefalse
zipic://compress? url=/Users/5km/Downloads/demo_jpeg.jpeg& location=custom& specified=true转换格式
参数: format,字符串类型
所需转换的目标格式。
可选值:
originaljpegwebpheicavifpngjxl(JPEG-XL)
zipic://compress? url=/Users/5km/Downloads/demo_jpeg.jpeg& format=webp调整尺寸
参数: width,双精度类型
指定调整后的宽度,默认值为 0,表示自动调整。
参数: height,双精度类型
指定调整后的高度,默认值为 0,表示自动调整。
将图像宽度调整为1920像素,同时保持原始高度比例。
// 将图像宽度调整为1920像素,高度按比例自动调整zipic://compress? url=/Users/5km/Downloads/demo_jpeg.jpeg& width=1920使用示例
终端中使用
以压缩图片 /Users/5km/Downloads/CleanshotX/demo.png 为例,将其转换为 webp 格式,并保存到用户下载文件夹。
根据我们的需求,可以构造如下 URL Scheme:
zipic://compress? url=/Users/5km/Downloads/CleanshotX/demo.png& format=webp& directory=/Users/5km/Downloads& location=custom在终端中可以使用 macOS 的 open 命令来调用 URL Scheme。
open "zipic://compress?url=/Users/5km/Downloads/CleanshotX/demo.png&format=webp&directory=/Users/5km/Downloads&location=custom"视频中展示了在 iTerm2 中使用 open 命令调用 URL Scheme 的完整过程,压缩图像也顺利以 webp 格式保存到用户下载文件夹。
快捷指令调用
通过 macOS 下的 快捷指令 和 Zipic 的 URL Scheme 可以实现快速对访达内选中的图像或文件夹进行压缩。如下图为 Zipic 快捷指令的完整配置:

解释一下整个实现配置:
- 获取访达中选中的文件列表
- 将文件列表解析为文件路径列表保存到
paths变量中 - 遍历
paths对每一项编码为url=重复项的格式,保存到urls列表 - 用
&拼接urls列表每一项保存得到 URL params - 将
zipic://compress?与 URL params 组合为 URL - 打开最终的 URL 就会触发 Zipic 压缩图像
下载快捷指令后需要导入到 快捷指令,然后勾选访达并设置快捷键,这样我们就能快速压缩 访达 中选中的图像和文件夹啦。
编程调用
理论上讲可以使用任意编程语言调用 Zipic 的压缩能力,只要这门编程语言支持打开 URL。以 终端中使用 的压缩目标为例,下面是不同编程语言的实现方式,简单列几种:
import AppKit
let urlString = "zipic://compress?url=/Users/5km/Downloads/CleanshotX/demo.png&format=webp&directory=/Users/5km/Downloads&location=custom"
if let url = URL(string: urlString) { if NSWorkspace.shared.open(url) { print("URL successfully opened") } else { print("Failed to open URL") }} else { print("Invalid URL")}import webbrowser
url = "zipic://compress?url=/Users/5km/Downloads/CleanshotX/demo.png&format=webp&directory=/Users/5km/Downloads&location=custom"webbrowser.open(url)package main
import ( "os/exec" "log")
func main() { url := "zipic://compress?url=/Users/5km/Downloads/CleanshotX/demo.png&format=webp&directory=/Users/5km/Downloads&location=custom" err := exec.Command("open", url).Start() if err != nil { log.Fatal(err) }}const url = "zipic://compress?url=/Users/5km/Downloads/CleanshotX/demo.png&format=webp&directory=/Users/5km/Downloads&location=custom";window.location.href = url;const url = "zipic://compress?url=/Users/5km/Downloads/CleanshotX/demo.png&format=webp&directory=/Users/5km/Downloads&location=custom";window.location.href = url;目前我们基于 URL Scheme 实现了 Raycast 扩展,方便 Raycast 用户可以快速压缩访达中的图像,阅读 Raycast 扩展 了解更多。
针对开发者群体,我们下一步计划开发 VScode 扩展实现项目内图像压缩,敬请期待。
macOS 快捷指令 & AppIntents 支持 Pro
Zipic Pro 支持 AppIntents,可通过 macOS 快捷指令和其他自动化工具实现增强的自动化功能。这让你可以创建更复杂的工作流,并将 Zipic 的压缩能力集成到自动化脚本中。
Zipic 提供的快捷指令
Zipic 主要提供了两个快捷指令:
- 压缩:支持设置全部压缩选项(压缩等级、输出格式、保存位置、尺寸调整等)。如果不设置选项,会默认使用 Zipic 应用中当前的压缩选项。
- 格式转换:专门用于快速转换图像格式的快捷指令。

通过 iCloud Shortcuts 分享链接获取快捷指令:获取快捷指令
使用 Zipic 快捷指令的优势
使用 Zipic 直接提供的快捷指令方式有四个好处:
- 可以静默压缩:执行完成直接退出 app,无需打开 Zipic 主窗口。
- 可以绑定快捷键:实现访达选中文件快速压缩,提升工作效率。
- 为访达右键添加快捷操作:选中文件后右键菜单中可以直接使用 Zipic 压缩。
- 未来 Apple Intelligence 可以直接识别:因为支持 AppIntents,Apple Intelligence 可以直接识别这个工具进行调用。
在快捷指令中使用 AppIntents
通过 AppIntents 支持,你现在可以直接在 macOS 快捷指令中使用 Zipic 操作,而不仅仅依赖 URL Scheme。这提供了更原生和可靠的集成体验。