—title: Mac用户狂喜!16MB开源神器Dinky一键压爆图片视频PDF,Smart Quality智能分类+Watch Folder自动流
date: 2026-04-27 20:57:14
summary: 16MB开源神器Dinky一键压爆图片视频PDF,Smart Quality智能分类+Watch Folder自动流 date: 2026-04-27 20:57:14 summary: Mac用户狂喜
tags:
- Hermes
- AI Agent
- 终端
- Git
- 知识库
- 开源
- macOS
- Rust
- 微信转载
categories: - 转载—
Mac用户狂喜!16MB开源神器Dinky一键压爆图片视频PDF,Smart Quality智能分类+Watch Folder自动流
Mac用每天都在和Figma导出图、网站素材、客户视频、PDF发票打交道。以前压缩文件要么打开笨重的ImageOptim(只压图、不能转格式),要么用HandBrake手动转视频,要么打开Adobe Acrobat处理PDF……效率低到爆炸。

Dinky——一个只有16MB的开源macOS原生工具。做到了图片、视频、PDF三种文件类型一站式压缩,拖拽即用、Watch Folder自动处理、预设一键切换,内置了Smart Quality智能内容分类和二进制搜索精确控大小等黑科技。
完全开源(MIT协议),代码干净到极致,没有Electron、没有第三方UI框架、没有SPM依赖,全程Swift + SwiftUI + AppKit + macOS原生框架实现。
一、Dinky核心定位与版本演进
Dinky是一个小巧的macOS文件压缩实用工具(Utility),专为拖拽设计:丢图片、视频或PDF进去,立即得到更小的输出文件。
●支持格式:
○图片:输入JPG、PNG、WebP、AVIF、TIFF、BMP;输出可选择Auto(智能选最佳)、WebP、AVIF或无损PNG。
○视频:常见MP4、MOV等,导出为MP4,支持H.264或HEVC(含HDR保留),提供质量预设。
○PDF:保留可选中文字和链接的轻量化压缩,或“压平”为图像实现最大体积缩减。
项目历史清晰:1.x版本仅支持图片;2.0版本(当前最新2.2.0)新增视频与PDF支持,成为真正的一站式工具。旧1.x DMG仍在GitHub Releases保留,推荐直接用最新版。
开发者Derek Castelli是一位全职Webflow+Figma自由设计师,每天都要优化网站图片,Optimage崩溃后干脆自己用Swift写了第一个Mac App——这就是Dinky诞生的真实故事。
官网(dinkyfiles.com)和GitHub(heyderekj/dinky)一致强调:一切本地运行,文件永不离开你的Mac。
二、核心功能全景(远超普通压缩工具)
Dinky的亮点在于“既小又全”:
1.多入口输入:
○窗口/Dock图标/文件选择器拖拽;
○系统级剪贴板压缩(⌘⇧V,App不聚焦也生效);
○URL直连压缩(http(s)链接,最大500MB,自动下载→压缩→清理临时文件)。
2.压缩预设(Presets):核心生产力功能。可保存格式+质量+最大宽度+目标文件大小+目标文件夹+Watch Folder+文件名规则等全部设置,一键切换。不同场景(博客图、社交视频、CMS PDF)各用一个预设。
3.智能特性:
○Smart Quality:自动用Vision框架分类图片为Photo(照片)、Graphic(UI/插图/截图/Logo)或Mixed,分别应用不同质量参数(图形类质量更高,边缘更锐利)。
○Max Width:内置网页常用尺寸或自定义,自动缩放。
○Max File Size:通过二进制搜索精确命中目标KB/MB(图形类有质量下限保护)。
○Skip Threshold:低于2%/5%/10%节省量时自动跳过。
4.Watch Folder(监视文件夹):全局或每个预设独立设置。新文件落地即自动压缩——完美适配Figma/Lightroom/截图自动导出场景。
5.批量与性能:
○并行任务上限:Fast(1个)、Faster(3个)、Fastest(8个);
○结果列表实时更新,支持Finder式操作(选中、拖拽、双击打开、右键删除);
○Before & After预览(滑块/并排对比,仅图片)。
6.原文件处理:Keep / Move to Trash / Move to Backup Folder(全局或预设独立)。
7.高级选项:
○剥离EXIF/GPS等元数据;
○文件名Web安全化;
○PNG专属oxipng无损优化(保留透明度);
○自定义快捷键、Launch at Login、Apple Shortcuts原生Action、Finder Quick Action、“Open with”集成。
8.其他体验:
○完成通知+音效(根据节省量不同音效);
○Session History(历史记录+总节省统计);
○一键检查更新(自动下载安装重启);
○空闲时窗口卡片掉落动画(三种变体,根据窗口位置智能选择)。
三、工作原理深度技术分析
Dinky完全原生,这是它体积仅16MB、性能极高的根本原因。以下全部来自README“How it works”章节 + Dinky/目录下核心源代码(CompressionService.swift、DinkyApp.swift、Models/、Services/、Views/等):
●技术栈:
○SwiftUI(macOS 15 Sequoia+,macOS 26 Tahoe支持液态玻璃UI)+ AppKit(窗口/事件);
○无Electron、无WebView、无第三方UI框架、无SPM依赖;
○偏好存储:@AppStorage / UserDefaults;
○Finder集成:NSServices;
○并发模型:actor CompressionService(单例shared)。
●压缩引擎(全部打包在Resources/目录):
○图片:cwebp(Google WebP,BSD)、avifenc(AVIF,BSD)、oxipng(Rust无损PNG优化器,MIT);
○视频:AVFoundation框架导出(H.264/HEVC,支持HDR保留);
○PDF:PDFKit框架(重写或压平)。
核心流程(CompressionService.swift关键代码解析):
1 | ●●●swift |
1.预处理:用macOS内置sips(或ImageIO)检查并执行Max Width缩放,生成临时工作文件。
2.Smart Quality分类:调用ContentClassifier.classify()(基于Vision框架,对原文件进行内容检测,Photo/Graphic/Mixed)。预分类时跳过二次检测。
3.质量决策:
○PNG → 直接oxipng无损;
○有Max File Size目标 → 二进制搜索质量参数(设置下限保护图形类边缘)直至命中目标大小;
○普通模式 → 根据ContentType查表(graphic类WebP/AVIF质量更高,甚至WebP graphic启用nearLossless=60)。
4.执行压缩:调用CLI进程(Process)或AVFoundation/PDFKit,输出到指定路径。
5.后处理:根据OriginalsAction处理原文件(Keep/Trash/Backup),清理临时文件。
6.并发安全:actor保证线程安全,配合用户设置的Batch Speed(1/3/8并行)实现实时结果更新。
其他代码实现:
●URL下载临时文件自动清理;
●错误处理丰富(CompressionError枚举,包含详细本地化描述);
●Intents目录实现Apple Shortcuts原生Action;
●Extensions目录提供各种Swift扩展(URL处理、文件大小等)。
整个流程零网络、零上传,所有二进制工具均打包在.app内部。
四、与其他工具的本质区别
README专门有一节“What others don’t do”:
●ImageOptim:只无损压JPG/PNG,不转WebP/AVIF,真实节省有限。
●Optimage:付费、仅图片、62MB。
●HandBrake/Adobe Acrobat:各自只管视频/PDF,无法一站式。
●Clop:菜单栏为主,Watch Folder为Pro付费功能。

Dinky免费、开源、16MB、三格式合一、原生集成、预设+Watch Folder全免费,是真正“既轻量又生产力”的选择。
五、使用方法(图文式完整流程)
1.快速上手:拖文件到窗口 → 自动按当前预设压缩 → 结果列表实时显示大小/节省率 → 右键“Show in Finder”。

2.剪贴板/URL:复制图片或复制直接链接 → ⌘⇧V。

3.预设工作流:Settings → Presets → 新建 → 选格式/质量/Watch Folder/目标文件夹 → 保存 → 侧边栏一键切换。

4.手动模式:先Drop不立即压缩 → 右键单个文件选择格式再压。
5.Watch Folder:设置后,文件夹内新文件自动进入压缩队列。

6.预览与决策:图片支持Before/After滑块,满意再保存(实际文件直到确认才落地)。
全部操作均支持Finder Quick Action和Shortcuts自动化。
六、安装方法(官方推荐)
1.前往GitHub Releases(https://github.com/heyderekj/dinky/releases/latest)下载最新DMG。
2.拖Dinky.app到/Applications文件夹。
3.首次启动可能因未公证被阻挡:
○系统设置 → 隐私与安全性 → 找到Dinky → 点击“仍要打开”;
○或Terminal执行:xattr -dr com.apple.quarantine /Applications/Dinky.app。
4.后续更新:App内一键检查→自动下载安装重启。
七、从源码安装与编译(完整开发者流程)
项目完全开源,源码编译零门槛(适用于想自定义或学习SwiftUI的同学):
1.git clone https://github.com/heyderekj/dinky.git
2.进入目录,打开Dinky.xcodeproj(需macOS + Xcode 16+)。
3.选择Scheme “Dinky” → 选择你的Mac作为运行目标。
4.Command + R 构建运行。
5.注意:
○Resources/目录已包含cwebp、avifenc、oxipng二进制文件,构建时自动打包。
○首次运行同样需处理quarantine属性。
○想打包DMG可参考根目录release.sh脚本(内部使用create-dmg等)。
源码结构清晰:CompressionService.swift(核心actor)、Models/(数据模型)、Views/(SwiftUI界面)、Intents/(Shortcuts)、Services/(辅助服务)等,阅读门槛低,适合学习macOS原生开发。
Dinky真正解决设计师/开发者日常痛点的生产力神器:体积小、速度快、功能全、体验极致、完全开源、本地安全。
无论你是需要极致压缩网站素材、批量处理客户视频,还是想给截图/PDF设置自动工作流,Dinky都能胜任。
—— 如此才是
把复杂的技术,讲成你真正能用上的生产力
零基础也能玩转卫星!开源Ground Station + SDR 打造个人地面站全攻略
苹果M系列芯片的福音!无需H100、无需云GPU,本地MacBook就能微调Gemma 4多模态模型
163个AI工具塞进Godot,solo游戏开发者效率直接起飞!15刀搞定爆款游戏
开源Minecraft终极杀手!12.7K星GitHub神器Luanti(原Minetest)完整中文攻略:零基础安装、2800+模组随便玩、服务器+源码编译
AI 直接操控 Unity/Godot/Unreal 编辑器!用 OpenClaw + TomLeeLive 插件,聊天就能把你的游戏梦想变成现实
Rust开源AI Agent安全基座LoongClaw正式开源:7-crate严格DAG内核+L0-L9分层治理,团队垂域智能体终于有生产级“底座”了!
💬 本文评论区已开启,但暂无读者留言。
本文转载自微信公众号,如有侵权请联系删除。
- 标题:
- 作者: lxiol
- 创建于 : 2026-04-27 20:57:14
- 更新于 : 2026-04-29 20:21:28
- 链接: https://blog.lxiol.cn/2026/04/27/Mac用户狂喜16MB开源神器Dinky一键压爆图片视频PDFSmart-Quality智能分类Watch-Folder自动流/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。