开源一个自用的 macOS 截图工具

skyrin 2026-05-15 18:47 1

本帖使用社区开源推广,符合推广要求。我申明并遵循社区要求的以下内容:



  • 我的帖子已经打上 开源推广 标签:

  • 我的开源项目完整开源,无未开源部分:

  • 我的开源项目已链接认可 LINUX DO 社区:

  • 我帖子内的项目介绍,AI生成、润色内容部分已截图发出:

  • 以上选择我承诺是永久有效的,接受社区和佬友监督:


以下为项目介绍正文内容,AI生成、润色内容已使用截图方式发出





一个常驻菜单栏的小工具,双击 就能截图、标注、长截、美化、上传图床——纯 AppKit、零依赖、零订阅、零遥测。





起因:我受够了在多个 App 之间来回切


做内容、写文档、VibeCoding 的时候,截图是高频动作。macOS 自带的截图功能不全,微信截图够用吧但是每次得把微信开着才能用,其它的截图工具如 pixpin、Snipaste 也都用过,感觉功能太重了,很多用不上,而且图床上传又得开一个 App


于是直接,我把它做成了一个叫 capcap 的菜单栏 App。


只做一件事:双击 截图,到剪贴板里出来一张已经标好注、可以直接粘出去的图。很自然的支持直接在编辑栏里上传到图床,并且把 url 自动复制到剪贴板。



GitHub:realskyrin/capcap,MIT 协议,免费开源。




一个快捷键,从截图到可分享,就一步


capcap 的核心交互只有一个:在任何 App 里双击 。这个灵感来自于 Claude App,它可以在任意 App 里双击 直接把图送进会话窗口


如果你不喜欢双击 ,也可以在设置里录一个自己的全局快捷键。触发之后会进入选区模式:




  • 悬停任意窗口 → 自动识别窗口边界,点一下就贴边截取;




  • 拖一个区域 → 像素级精准,Retina 原生分辨率;




  • 多显示器 → 所有屏幕同时进入选区状态,拖到哪截到哪。





不需要凭眼力对齐窗口边——把鼠标移到窗口上,绿色虚线就贴上去了,按一下完事。




真正能"二次编辑"的标注,不是一次性 mark


很多截图工具的标注其实是一次性栅格化——画完一个箭头之后,想挪一下、改个颜色,只能撤销重画。


capcap 的标注都是对象化的,全程可改:




  • 箭头:放完之后还能拖端点、把直箭头掰成曲线;




  • 序号标注:自动递增的数字圆点,拖出来可以带一根引线;




  • 文字:双击直接改文案,10–100 pt 字号、颜色随便切;




  • 矩形 / 椭圆 / 画笔 / 高亮笔:颜色和线宽都能事后改;




  • 马赛克:刷一下就把敏感信息糊掉,块大小可调;




  • 撤销 / 重做:和文档编辑器一样自然。




选中已有标注后,还会出现旋转手柄、端点手柄、曲线手柄。意思就是——截完图不满意,不用全部重来




长截图:边滚边拼,所见即所得


写文档时经常要截一整页表格、一整段聊天记录。capcap 内置长截图:




  1. 框出要滚动的区域;




  2. 在选区里用触控板/鼠标滚轮往下滚;




  3. 实时拼接的预览图就显示在旁边;




  4. 觉得够了,合并回主编辑器,继续标注





长截图的结果不是一张"最终图",而是直接回到编辑器里,可以继续画箭头、加序号、上马赛克。




美化模式:随手做出"看上去像样"的成图


写公众号、做 Twitter 配图的时候,光秃秃的截图总差点意思。capcap 内置一个轻量美化模式:




  • 渐变背景 / 桌面壁纸背景;




  • 圆角;




  • 柔和阴影;




  • 可调内边距。





不用打开 PS,也不用上一堆"截图美化"网站——在编辑器里一个 tab 就切过去了。




顺手做的几件小事,反而是日常用得最多的


很多功能不是 README 第一屏的重点,但用起来非常顺手:


^-^ 直接编辑 Finder 里的图片


在桌面/Finder 中点选一张图片,按下你设定的截图快捷键——capcap 跳过截图,直接把这张图载入编辑器。原文件不会被改动。给已有的图想加几个箭头再发出去?两秒钟的事。


^-^ 菜单栏历史,一键复用


最近的截图缩略图和取色记录都在菜单栏,再次复制只需要一次点击。完全本地存储(~/Library/Application Support/capcap/History),数量可配置 5–20 张。



^-^ 取色器


调用 macOS 原生取色器,吸到的颜色 #RRGGBB 直接进剪贴板,也写进历史记录。


^-^ 钉图


把当前截图作为一个浮动窗口钉在所有 App 之上做对照参考——抄设计稿、对比改版的时候特别有用。


^-^ 自定义触发


觉得双击 容易误触?在设置里录一个自定义全局快捷键就行。




一键上传到你自己的图床


这是我个人最离不开的功能。配置一次之后,编辑器里的上传按钮会被点亮:



支持三家国内主流对象存储:




  • 腾讯云 COS




  • 七牛云 Kodo




  • 阿里云 OSS




点一下上传按钮,公网 URL 会直接写到剪贴板,同时和缩略图一起进历史。下次写 Markdown 直接 ⌘V,图片链接就贴出来了。


密钥只保存在本机的 UserDefaults 里,不走任何中间服务器。 这不是一个"capcap 图床",是你自己的图床——出问题、被封号、想搬家,都是你自己的事;同样,安全和隐私也只取决于你自己。



顺便说一句:你现在看到的这篇文章里的所有图片,就是用 capcap 的「上传到阿里云 OSS」功能传上去的。





技术上有意思的几个选择


如果你也是 macOS 开发者,可能会对这几个选择感兴趣:




  • 纯 AppKit,没有 SwiftUI。理由很简单:要的是"像 macOS 该有的样子"——精确的窗口控制、流畅的命中测试、可预测的事件循环。SwiftUI 在 14.0 上还做不到这些。




  • 零第三方依赖Package.swift 里只有标准库和系统框架。结果就是包体很小、启动很快、维护成本低。




  • ScreenCaptureKit 做屏幕捕获,Retina 原生分辨率。




  • Carbon Hotkey API 注册自定义全局快捷键(macOS 至今没给出更现代的 API)。




  • 双击 监听CGEventTap,权限是辅助功能权限。




要求 macOS 14.0+,universal binary,Apple Silicon + Intel 都能跑。




安装:两种方式


方式一:Homebrew



brew tap realskyrin/capcap https://github.com/realskyrin/capcap

brew install --cask capcap


(仓库名是 capcap 不是 homebrew-capcap,所以要显式指定 URL)


方式二:直接下载


去 GitHub Release 页面下载最新的 DMG,拖进 Applications 就行。


如果遇到 “Apple 无法验证 capcap 是否包含恶意软件” 的提示,是因为还没做 Apple 公证(一年 99 刀我暂时不想交),可以:



xattr -dr com.apple.quarantine /Applications/capcap.app


只对你信任的来源做这个操作就好。




写在最后


capcap 是我"自己每天在用的工具"——这意味着:




  1. 我不会塞一堆没人用的功能进来;




  2. 但凡有 bug,我比你更先发现;




  3. 它不会收一分钱,也没有任何遥测和数据上报。




如果你也受够了在三四个截图/标注/图床 App 之间来回切,欢迎试试看。GitHub 上点个 Star 是对我最大的鼓励:



GitHub - realskyrin/capcap: A lightweight, native macOS screenshot tool that lives in your menu bar. Double-tap ⌘ Command to capture any region of your screen — instantly copied to clipboard, or annotate first with pen and mosaic tools. · GitHub



有任何想法、bug、想要的功能,issue 区见

最新回复 (19)
  • fish2018 05-15 18:57
    1

    滚动截图搞个自动模式更方便吧,捕捉窗口后自动滚动截图

  • 05-15 18:57
    2

    mac端没有snipaste么,简直不要太好用

  • 七修远 05-15 19:02
    3

    看着不错,晚上回去试一下,之前用的是snipaste和PixPin

  • mojitoX 05-15 19:04
    4

    不错,还可以借鉴一下 CleanShot 这个产品啊

  • 11 05-15 19:09
    5

    感觉看的很不错,下载一个,求一个自动滚动截图的功能 ^-^

  • 佰万 05-15 19:32
    6

    感谢大佬分享,先mark后使用 ^-^

  • well 05-15 19:38
    7

    感谢老友分享 晚点下载试试看看效果

  • D 05-15 19:40
    8

    收藏了佬感谢,晚上回去试试,现在用ishot截出来的图好糊

  • kewei 05-15 19:41
    9

    佬,太^-^^-^了,请问如果是双屏使用,会闪屏吗?

  • amufeng 05-15 19:57
    10

    这个很好用啊,Windows 也想体验体验

  • Victor ferline 05-15 20:36
    11

    有和我一样的一直用的是qq截图么 ^-^长截图、翻译、提取文字真的好用

  • Mirinda 05-15 20:47
    12

    佬这个看着真的很实用,^-^一下先,回家试试

  • 05-15 21:19
    13

    下周一用用看,佬问个问题,我看到标注的颜色好像是固定的几个,不能自定义吗

  • LINUX 小编 05-15 21:23
    14

    可以录制 GIF 然后并压缩尺寸么后续有这个开发计划么

  • Bernard 05-15 21:49
    15

    请问这个主流储存对象是需要自己建一个服务器,还是说有免费的直接配置可以用? ^-^

  • e0ir3bgo 05-15 23:24
    16

    这个好啊,已star,用来替代pixpin妥妥的,谢谢佬

    有个问题是图标不能显示,homebrew装的,两台电脑都一样。

  • 无名客 05-16 06:42
    17

    mark 一下,空了下来试试,现在用的免费版的 1capture

  • skyrin 楼主 05-16 09:57
    18

    有道题啊^-^ 马上安排 AI 研究起来^-^

  • skyrin 楼主 05-16 10:00
    19

    可以修改的,选中一个工具之后,下面会有一排颜色选择器,点选之后,在用标注颜色就变了,对于已经有的标注,也可以点选之后再次切换修改颜色

* 帖子来源Linux.do
返回