# LaTeXSnipper：一款开源免费的公式识别与数学编辑工作空间

> LaTeXSnipper 是一款集截图 OCR、手写识别、公式编辑、符号计算与多格式导出于一体的桌面数学工具。本文提供详细的安装教程与使用指南。

- Canonical: https://www.zeroxin.xin/2026/07/26/LaTeXSnipper%E9%A1%B9%E7%9B%AE%E4%BB%8B%E7%BB%8D/
- Published: 2026-07-26T11:35:00+08:00
- Updated: 2026-07-26T12:03:11+08:00
- Categories: 开源项目
- Tags: 开源项目, Python, OCR, LaTeX, 数学工具, PyQt6

## 项目概述

**LaTeXSnipper** 是由开发者 [SakuraMathcraft](https://github.com/SakuraMathcraft) 创建的一个跨平台桌面数学工作空间。它不再只是一个"截图公式转 LaTeX"工具，而是覆盖端到端数学内容工作流：

- 📸 从截图或 PDF 中识别数学公式
- ✍️ 在专用手写画布中书写并自动转换为 LaTeX
- 🧮 在集成数学工作台中编辑、计算和回写
- 🔄 支持 30+ 种导出格式（LaTeX、Markdown、MathML、HTML、Word、Typst 等）

### 项目亮点

| 特性 | 说明 |
| --- | --- |
| **公式识别** | 基于 MathCraft OCR，支持公式、文字及混合内容识别 |
| **手写识别** | 专用手写窗口，支持自动识别与实时预览 |
| **数学工作台** | 独立工作空间，集成公式编辑与计算 |
| **公式编辑** | 内置 MathLive `math-field` 及虚拟数学键盘 |
| **多格式导出** | 30 种导出选项，覆盖 LaTeX/Markdown/MathML/HTML/OMML/SVG/Typst/Word/EPUB/RTF 等 |
| **符号计算** | 基于 Compute Engine，支持化简、求值、展开、因式分解、求解 |
| **离线优先** | 识别与高级求解可本地运行，保护隐私 |
| **主题支持** | 亮色/暗色自动适配 |

---

## 安装教程

### Windows（推荐）

#### 方式一：Inno 安装包（推荐新手）

1. 前往 [GitHub Releases](https://github.com/SakuraMathcraft/LaTeXSnipper/releases/latest) 页面。
2. 下载 `LaTeXSnipperSetup-2.4.0.exe`。
3. 运行安装程序，按提示完成安装。
4. 桌面上生成快捷方式，双端启动。

#### 方式二：Microsoft Store / MSIX

- 在 Microsoft Store 中搜索 **LaTeXSnipper** 进行安装。
- 或从 Release 页面下载 MSIX 包手动安装。

### Linux

#### 一键安装命令

```bash
git clone https://github.com/SakuraMathcraft/LaTeXSnipper.git
cd LaTeXSnipper

python3 -m venv .venv
source .venv/bin/activate

pip install -r requirements-linux.txt
python src/main.py
```

#### 打包为 Debian/Ubuntu 安装包

```bash
# 构建 .deb 包
bash scripts/build_deb.sh

# 安装
sudo dpkg -i latexsnipper_*.deb
```

> 💡 Linux 平台依赖 `grim`、`maim`、`gnome-screenshot` 等截图工具来提升截图回退行为，这些工具需通过发行版包管理器自行安装，LaTeXSnipper 的依赖向导仅管理 Python 依赖层。

### macOS

```bash
git clone https://github.com/SakuraMathcraft/LaTeXSnipper.git
cd LaTeXSnipper

python3 -m venv .venv
source .venv/bin/activate

pip install -r requirements-macos.txt
python src/main.py
```

macOS 打包产物为 `.app.zip` 和 `.dmg`，可从 Releases 页面下载。

### 更新 LaTeXSnipper

- **Windows**：下载新版安装包重新运行即可。
- **GitHub Actions**：Tag 发布时会自动构建各平台包，关注 Releases 页面获取最新版本。

---

## 快速开始

### 截图识别

1. 启动 LaTeXSnipper。
2. 点击截图按钮或使用快捷键捕获屏幕上的数学公式。
3. MathCraft OCR 自动识别公式并生成 LaTeX 代码。
4. 在右侧工作台中编辑、调整公式。
5. 点击"复制"或"插入"将 LaTeX 放回原文档。

### 手写识别

1. 打开手写窗口。
2. 使用鼠标或触控笔书写数学表达式。
3. 系统实时识别并预览 LaTeX 结果。
4. 确认后发送到主编辑器。

### 数学计算

在工作台中可直接对公式进行符号运算：

- **化简**（Simplify）
- **数值求值**（Evaluate）
- **展开**（Expand）
- **因式分解**（Factor）
- **求解方程**（Solve）

对于更复杂的表达式，系统会自动回退到本地 SymPy/mpmath 引擎。

---

## 核心功能详解

### 多格式导出

LaTeXSnipper 支持 30 种导出格式：

| 类别 | 格式 |
| --- | --- |
| 文档标记 | LaTeX, Markdown, HTML, reStructuredText, Typst, Org-mode |
| 数学格式 | MathML, OMML, LaTeX, AsciiMath |
| 矢量图形 | SVG |
| 办公文档 | Word (DOCX), RTF, ODT |
| 电子书 | EPUB |
| 维基 | Wiki 格式 |
| 数据 | JSON, CSV |

### 离线优先

- 公式识别与高级求解均在本地运行，无需网络连接
- MathCraft OCR 模型通过 ONNX Runtime 推理，不依赖 PyTorch 运行时
- 所有数据保留在本地，保护学术与隐私敏感内容

---

## 项目结构

```
LaTeXSnipper/
├── mathcraft_ocr/          # MathCraft OCR 独立运行时与 CLI
├── src/
│   ├── main.py             # 主桌面应用入口
│   ├── distribution.py      # GitHub / Microsoft Store 渠道策略
│   ├── backend/            # OCR 封装、CUDA 诊断、截图、平台服务
│   ├── bootstrap/          # 依赖向导与运行时验证
│   ├── core/               # 文档组合、导出契约、重启契约
│   ├── editor/             # 数学工作台与公式编辑 UI
│   ├── handwriting/        # 手写画布、PDF 预览、文档工具
│   └── ...
├── requirements-linux.txt
├── requirements-macos.txt
├── LaTeXSnipper.spec       # PyInstaller 打包配置
├── Inno/                   # Windows Inno 安装脚本
├── packaging/debian/       # Debian 打包配置
└── scripts/
    ├── build_deb.sh        # Linux .deb 构建脚本
    ├── build_macos.sh      # macOS 打包脚本
    └── build_store_msix.ps1 # MSIX 打包脚本
```

---

## 技术栈

- **语言**: Python 3.10+
- **UI 框架**: PyQt6 + Q Fluent Widgets
- **OCR**: MathCraft OCR（ONNX Runtime 推理）
- **公式编辑**: MathLive `math-field`
- **符号计算**: MathLive Compute Engine / SymPy / mpmath
- **构建**: PyInstaller + Inno Setup (Windows) / PyInstaller + DMG (.macOS) / Debian (.Linux)
- **许可证**: MIT License

---

## 适用场景

- 📝 **学术写作**：快速将论文中的手写公式或截图公式转为 LaTeX
- 📚 **教学课件**：从 PDF 或幻灯片中提取数学公式并复用
- 💻 **Office 集成**：通过 Word/PowerPoint 插件在文档中直接插入识别公式
- 🔬 **科研工作**：将文献中的公式离线转换为可编辑的 LaTeX 代码
- ✍️ **手写输入**：使用笔输入数学表达式，实时预览 LaTeX

---

## 项目统计

- **GitHub Stars**: ⭐ 760
- **Forks**: 40
- **提交数**: 332
- **最新版本**: v2.4.0 LTS（2026年7月）
- **许可证**: MIT License
- **项目地址**: [https://github.com/SakuraMathcraft/LaTeXSnipper](https://github.com/SakuraMathcraft/LaTeXSnipper)

---

## 总结

LaTeXSnipper 是一个功能完整、离线优先的数学公式识别与编辑工作空间。它覆盖了从截图识别、手写输入到公式计算和多格式导出的完整工作流，特别适合需要频繁处理数学公式的学术工作者和科研人员。Windows 用户可以通过 Inno 安装包一键安装，Linux 和 macOS 用户也可以通过源码快速运行。作为一个开源免费无广告的项目，其持续维护和社区活跃度值得肯定。

**项目地址**: [https://github.com/SakuraMathcraft/LaTeXSnipper](https://github.com/SakuraMathcraft/LaTeXSnipper)

