GitPedia

LaTeXSnipper

A math workspace for screenshot OCR, handwriting-to-LaTeX, editing, preview, and symbolic computation, powered by MathCraft OCR and MathLive.

From SakuraMathcraft·Updated June 22, 2026·View on GitHub·

> A desktop math workspace for **capture -> recognize -> handwrite -> edit -> compute** The project is written primarily in Python, distributed under the GNU General Public License v3.0 license, first published in 2025. Key topics include: autoencoder, deep-learning, im2latex, image2text, latex.

Latest release: v2.4.0-LTSLaTeXSnipper v2.4.0 LTS
June 22, 2026View Changelog →

LaTeXSnipper ✨

<div align="center">

A desktop math workspace for capture -> recognize -> handwrite -> edit -> compute

<img width="1919" height="1020" alt="封面" src="https://github.com/user-attachments/assets/9d00310b-d1b6-4321-b961-8837b3efb864" />

Stars
Forks
Issues
License
Version
Platform
Python

GitHub Release
Last Commit
Activity

Star History

Star History Chart

FAQ · Releases

English · 简体中文

</div>

Core Features

FeatureDescription
📸 Formula recognitionMathCraft OCR for formulas, text, and mixed content
📄 PDF recognitionPage-based PDF recognition with Markdown/LaTeX output and DPI control
✍️ Handwriting recognitionDedicated handwriting window with auto-recognition and live preview
🧮 Math workbenchSeparate workspace for editing, computation, and write-back
⌨️ Formula editingIntegrated MathLive math-field with virtual math keyboard
🔄 Multi-format export20 export formats across LaTeX, Markdown, MathML, HTML, OMML, SVG, Word, ODT, PowerPoint, EPUB, PDF, Typst, and plain text
📐 Core computationCompute, simplify, numeric evaluate, expand, factor, solve
🌙 Theme supportLight/Dark adaptation across windows and tools
🔐 Offline-firstRecognition and computation can run locally for privacy

Microsoft Office Plugin

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.


Export Formats

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

Platform Support

PlatformStatusNotes
WindowsPrimary release targetNative global hotkey, Qt capture, GitHub/Inno packaging.
LinuxSupported via provider layerpynput global hotkey, Qt capture first, optional Wayland/X11 CLI or portal fallbacks.
macOSSupported via provider layerNative 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,<3.13 with
venv/pip support. Python 3.11 is preferred because it matches the Windows
bundled runtime. Debian/Ubuntu .deb installs declare python3 and
python3-venv; macOS users should install Homebrew python@3.11 or an
official python.org 3.11/3.12 installer when the system does not provide a
usable supported python3.


Supporters

Thanks to everyone who supports LaTeXSnipper development, testing, documentation, and community maintenance.

SupporterContribution
strangelioncontributor
Galileo927contributor
ljygoSponsor

Contributing

The main branch no longer accepts pull requests. New feature work should be developed and maintained on an independent branch or fork. Maintainers may selectively port small, reviewed fixes back into release branches when they match the current maintenance scope.

  1. Fork the repository
  2. Create a focused branch for your work
  3. Keep changes limited to the bug fix, documentation update, or platform-specific improvement being proposed
  4. Run the checks below before sharing a patch or branch for review

Important Notice

Patches must not add unrelated features or change existing Windows behavior unless that is the explicit maintenance target. macOS/Linux experience improvements should stay behind platform-specific paths and must not regress the Windows release path.

All changes must follow Developer Code Standards. Before requesting review, run:

powershell
.\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 test

Support The Project

LaTeXSnipper is a free, open-source, ad-free personal project. If it helps with your writing, OCR, or formula workflow, small sponsorships and community feedback help keep maintenance moving.

支付宝微信交流群
<img width="300" alt="支付宝收款码" src="https://github.com/user-attachments/assets/1efa46b7-07cb-4a3e-821d-f23b7a36ab34" /><img width="300" alt="微信收款码" src="https://github.com/user-attachments/assets/19065b1d-ac40-478e-8318-fabb75488c5c" /><img width="300" alt="LaTeXSnipper群聊" src="https://github.com/user-attachments/assets/91c30d59-a4a7-4118-b24b-dada0fe002bf" />

License

This project is open-sourced under the GNU General Public License v3.

Contributors

Showing top 3 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from SakuraMathcraft/LaTeXSnipper via the GitHub API.Last fetched: 6/22/2026