| Feature | Description |
|---|---|
| 📸 Formula recognition | MathCraft OCR for formulas, text, and mixed content |
| 📄 PDF recognition | Page-based PDF recognition with Markdown/LaTeX output and DPI control |
| 🌐 Bilingual reading | PDF text-layer reading with local Argos or remote translation engines |
| ✍️ Handwriting recognition | Dedicated handwriting window with auto-recognition and live preview |
| 🧮 Math workbench | Separate workspace for editing, computation, and write-back |
| ⌨️ Formula editing | Integrated MathLive math-field with virtual math keyboard |
| 🔄 Multi-format export | 20 export formats across LaTeX, Markdown, MathML, HTML, OMML, SVG, Word, ODT, PowerPoint, EPUB, PDF, Typst, and plain text |
| 📐 Core computation | Compute, simplify, numeric evaluate, expand, factor, solve |
| 🧠 Advanced fallback | Local SymPy/mpmath engine for harder expressions |
| 🌙 Theme support | Light/Dark adaptation across windows and tools |
| 🔐 Offline-first | Recognition and advanced solving can run locally for privacy |
LaTeXSnipper provides a released Windows plugin for desktop Microsoft Word and PowerPoint:
- Word OLE and native OMML formula insertion
- PowerPoint OLE and PNG formula insertion
- Shared MathLive editor and extensive symbol/formula library
- Formula loading, update, deletion, automatic numbering, and renumbering
- Persisted LaTeX source, rendering options, numbering data, and formula identity
- Local vector rendering for OLE formulas
- Screenshot recognition through the local desktop Bridge
Download OfficePluginSetup-<version>.exe from Releases. The plugin supports 32-bit and 64-bit desktop Office 2019, 2021, 2024, LTSC 2021/2024, and Microsoft 365 Apps on Windows.
See the Office plugin documentation for requirements and release build details.
The workbench currently covers common scenarios such as:
- Polynomial expansion
- Factorization
- Equation solving
- Irrational/complex root fallback solving
- Definite and improper integrals
- Infinite series
- Infinite products
- Limits
- Derivatives
- Numeric approximation and constant recognition
LaTeXSnipper exposes a shared export menu in the main window and favorites window. The desktop app currently provides 20 export formats.
Built-in formula export formats:
- LaTeX inline, display, and equation
- Markdown inline and block math
- MathML standard,
.mml,<m>, and attribute forms - HTML, Word OMML, and SVG code
Optional Pandoc export formats are enabled after installing the PANDOC layer in the dependency wizard:
- Word
.docx, ODT.odt, PowerPoint.pptx, EPUB.epub - PDF
.pdf(requires Pandoc plus a LaTeX PDF engine such as XeLaTeX, LuaLaTeX, or pdfLaTeX) - Standalone HTML
.html, Typst.typ, and plain text.txt
- Visit the Releases page
- Download the latest
LaTeXSnipperSetup-<version>.exe - Run the installer
- Complete environment setup via the dependency wizard on first launch
- Start capturing, handwriting, or using the math workbench
Windows:
git clone https://github.com/SakuraMathcraft/LaTeXSnipper.git
cd LaTeXSnipper
python -m venv .venv
.\.venv\Scripts\activate
pip install -r requirements.txt
python src/main.pyLinux:
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.pymacOS:
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| Platform | Status | Notes |
|---|---|---|
| Windows | Primary release target | Native global hotkey, Qt capture, GitHub/Inno and Store/MSIX packaging. |
| Linux | Supported via provider layer | pynput global hotkey, Qt capture first, optional Wayland/X11 CLI or portal fallbacks. |
| macOS | Supported via provider layer | Native global hotkey, Qt capture with screencapture fallback, Screen Recording permission may be required. |
Linux and macOS both create optional runtime dependency environments in the
user state directory, so they need a usable system Python 3.10+ with venv/pip
support. Debian/Ubuntu .deb installs declare python3 and python3-venv;
macOS users should install Python through Homebrew (brew install python) or
the official python.org macOS installer when the system does not provide a
usable python3.
Contributions are welcome:
- Fork the repository
- Create a feature branch
- Commit your changes
- Push your branch
- Open a Pull Request
All pull requests must follow Developer Code Standards. Before requesting review, run:
.\tools\deps\python311\python.exe -m ruff check .
.\tools\deps\python311\python.exe -m pytest test
.\tools\deps\python311\python.exe -m pyright
.\tools\deps\python311\python.exe -m compileall -q src mathcraft_ocr testThis project is open-sourced under the GNU General Public License v3.
