Better Shot:macOS 开源截图工具技术分析
一、新闻概述
1. 标题
Better Shot:基于 Tauri + React 的 macOS 开源截图工具
2. 发布时间
2026 年 1 月(持续更新中)
3. 来源
GitHub 开源仓库
二、核心内容
1. 事件摘要
A. 主要内容
Better Shot 是一款开源的 macOS 截图工具,作为 CleanShot X 的免费替代方案。项目使用 Tauri 和 React 构建,提供快速、轻量级的截图捕获、编辑和导出功能。
B. 核心亮点
- 完全开源且免费,替代商业软件 CleanShot X
- 基于 Rust + Tauri 架构,性能优异
- 支持区域截图、全屏截图、窗口截图三种模式
- 内置丰富的背景库、标注工具和快捷键支持
- GitHub 已获得 1.1k+ Star
C. 关键信息
A. 版本信息
- 最新版本:v0.2.4(2026 年 1 月 17 日)
- 开发状态:活跃维护中
- 仓库:KartikLabhshetwar/better-shot
B. 技术栈
- 前端:React + TypeScript(90.9%)
- 后端:Rust(5.5%)
- 样式:CSS + Tailwind(3.2%)
- 框架:Tauri + Vite
C. 社区数据
- GitHub Stars:1.1k
- Forks:58
- Contributors:4
2. 背景介绍
A. 前置背景
CleanShot X 是 macOS 平台知名的商业截图工具,功能强大但价格昂贵。Better Shot 旨在提供同样强大的功能,但完全免费开源。
B. 相关上下文
Better Shot 遵循 BSD 3-Clause 许可证,允许自由使用、修改和分发。项目采用现代化的开发技术栈,注重性能和用户体验。
三、详细报道
1. 主要功能
A. 捕获模式
- 区域截图(⌘⇧2):选择屏幕任意区域
- 全屏截图(⌘⇧F):捕获整个屏幕
- 窗口截图(⌘⇧D):捕获特定窗口
B. 图像编辑
- 背景库:精选壁纸、Mac 资产和网格图案
- 自定义背景:纯色和透明棋盘格
- 效果控制:模糊 + 噪点调节
- 阴影 + 圆角:调节深度和边角半径
- 高质量导出:支持文档、演示和社交媒体
C. 标注工具
- 形状:圆形、矩形、线条、箭头
- 文本:可调节大小的文本添加
- 序号标签:自动递增的步骤标注
- 可编辑性:选择、移动、删除标注
- 样式:颜色、透明度、边框、对齐
D. 工作流特性
- 全局快捷键:即使应用隐藏也能捕获
- 自动应用:应用默认背景并保存,无需打开编辑器
- 剪贴板支持:捕获/导出后自动复制
- 偏好设置:保存目录、默认设置、快捷键配置持久化
- 菜单栏访问:从菜单栏快速启动
- 原生性能:Rust + Tauri 架构
2. 技术架构
graph TB
subgraph 前端层
A[React + TypeScript]
B[Vite 构建工具]
C[Tailwind CSS]
end
subgraph 桌面框架层
D[Tauri]
E[系统 API 绑定]
end
subgraph 后端层
F[Rust Core]
G[截图捕获]
H[文件操作]
I[快捷键管理]
end
subgraph macOS 系统
J[Screen Recording API]
K[文件系统]
L[全局快捷键]
end
A --> D
B --> D
C --> D
D --> E
E --> F
F --> G
F --> H
F --> I
G --> J
H --> K
I --> L3. 技术栈详解
A. 前端技术(90.9% TypeScript)
- React:UI 组件和状态管理
- TypeScript:类型安全的代码
- Vite:快速的开发构建工具
- Tailwind CSS:实用优先的样式框架
B. 后端技术(5.5% Rust)
- Rust:高性能的系统级代码
- Tauri:轻量级桌面应用框架
- 系统级 API 访问:屏幕捕获、文件操作
C. 项目结构
- 根目录:Tauri 桌面应用
- bettershot-landing/:Next.js 落地页
- src-tauri/:Rust 后端代码
- src/:React 前端代码
- scripts/:构建和发布脚本
4. 安装方式
A. 下载安装包(推荐)
- 访问 GitHub Releases 页面
下载对应架构的 DMG 文件
- Apple Silicon(M1/M2/M3/M4/M5):bettershot_*_aarch64.dmg
- Intel:bettershot_*_x64.dmg
- 打开 DMG 并将 Better Shot 拖入 Applications
- 从 Applications 启动
- 在系统设置中授予屏幕录制权限
B. Homebrew 安装
brew install --cask bettershot系统要求:macOS >= 10.15
C. 从源码构建
git clone https://github.com/KartikLabhshetwar/better-shot.git
cd better-shot
pnpm install
pnpm tauri build安装程序位于 src-tauri/target/release/bundle/
D. 构建要求
- Node.js:18+
- pnpm:包管理器
- Rust:最新稳定版本
5. 权限要求
首次启动时,macOS 会请求屏幕录制权限:
- 打开系统设置 → 隐私与安全性 → 屏幕录制
- 启用 Better Shot
- 如需要,重启应用程序
此权限是应用捕获屏幕截图所必需的。
6. 快捷键列表
A. 捕获快捷键(可在偏好设置中自定义)
| 操作 | 默认快捷键 |
|---|---|
| 捕获区域 | ⌘⇧2 |
| 捕获全屏 | ⌘⇧F(默认禁用) |
| 捕获窗口 | ⌘⇧D(默认禁用) |
| 取消选择 | Esc |
B. 编辑器快捷键
| 操作 | 快捷键 |
|---|---|
| 保存图像 | ⌘S |
| 复制到剪贴板 | ⇧⌘C |
| 撤销 | ⌘Z |
| 重做 | ⇧⌘Z |
| 删除标注 | Delete 或 Backspace |
| 关闭编辑器 | Esc |
7. 开发指南
A. 桌面应用开发
pnpm tauri dev其他有用命令:
pnpm lint:ci
pnpm test:rust
pnpm tauri buildB. 落地页开发
cd bettershot-landing
pnpm install
pnpm dev四、影响分析
1. 技术趋势
A. Tauri 崛起
Better Shot 展示了 Tauri 作为 Electron 替代品的优势:
- 更小的打包体积
- 更低的内存占用
- 更好的性能表现
- Rust 后端的安全性
B. 开源替代方案
提供了商业软件的可行替代方案:
- 零成本使用
- 完全的代码透明
- 社区驱动的功能迭代
- 自定义和扩展可能性
2. 用户影响
A. 目标用户
- 开发者和设计师
- 需要频繁截图的技术文档作者
- 预算敏感的个人用户
- 重视隐私和数据控制的开源爱好者
B. 竞争优势
- 完全免费 vs CleanShot X 的 29 美元/年或 79 美元一次性购买
- 本地处理,无需云服务
- 开源可审计
- 社区支持和贡献
C. 潜在限制
- 目前仅支持 macOS
- 功能可能不如商业软件全面
- 缺少官方支持和 SLA 保证
3. 生态系统影响
A. 技术选型参考
为 Tauri 桌面应用开发提供了优秀案例:
- React + TypeScript 前端
- Rust 后端处理
- 系统级 API 集成
B. 开源社区
- 吸引贡献者参与开发
- 促进同类工具的诞生
- 推动桌面应用开源化
五、各方反应
1. 社区反馈
A. GitHub Stars 增长
- 短时间内获得 1.1k+ Star
- 显示社区对开源替代方案的需求
B. 贡献者参与
- 4 位活跃贡献者
- 持续的功能更新和 bug 修复
C. 用户评价
- 快速轻量的性能表现
- 界面简洁易用
- 功能覆盖主要使用场景
2. 技术评价
A. 架构设计
- Tauri + React 的技术选型得到认可
- Rust 后端保证了系统调用的效率和安全性
B. 代码质量
- TypeScript 类型安全
- 模块化设计
- 良好的项目结构
六、相关链接
1. 官方资源
- GitHub 仓库:https://github.com/KartikLabhshetwar/better-shot
- 官方网站:https://bettershot.site
- Discord 社区:https://discord.gg/zThjstVs
2. 相关项目
- CleanShot X:原商业替代产品
- Tauri:桌面应用框架
- React:前端框架
3. 技术文档
- 贡献指南:CONTRIBUTING.md
- 行为准则:CODE_OF_CONDUCT.md
- 变更日志:CHANGELOG.md