LaTeXSnipper Final Stable 发布日志
LaTeXSnipper 官网已上线 https://latexsnipper.interknot.dpdns.org/
这个项目最开始只是为了解决我自己在学习和写作中反复遇到的公式输入问题。后来它一点点长出了更多能力:截图框选识别、图片识别、PDF 识别、word/ppt/pdf导出、外部模型接入、多屏幕适配、深浅色主题,以及Office/WPS插件。很多功能并不是一开始就规划好的,而是在真实使用、反复测试和不断修 Bug 的过程中逐渐补上的。
LaTeXSnipper v2.4.0 LTS 将冻结代码并停止更新迭代,v2.4.0 LTS之前的版本已不再受支持。如需体验新功能,请Fork仓库到本地,然后给我PR(🤗🤓)
感谢所有使用、测试、反馈和关注这个免费开源软件的朋友。希望 LaTeXSnipper 在之后仍然能继续帮到需要整理公式、识别文档、苦逼写论文的人。另外希望在我毕业前这个项目能够达到1k star!(不是在做梦🤑🤪)
更新日志
- 2025/10/1:LaTeXSnipper项目启动
- 2025/10/1-2026/4/20:一直摸索迭代到勉强可用版本 v2.3.2
- 2026/4/27:补上cuda/cudnn的诊断日志
- 2026/4/28:更新器体验优化
- 2026/5/1:截图功能增强
- 2026/5/4:修复屏幕右下角识别效果异常的问题
- 2026/5/6:修复光标消失,识别污染问题
- 2026/5/10:新增Pandoc导出,Linux/MacOS跨平台支持
- 2026/5/13:新增用户手册,FAQ
- 2026/5/15:修复Mac端闪退/快捷键注册失败
- 2026/5/20:提升手写识别速度
- 2026/5/22:极大提升MathCraft模型的识别精度
- 2026/5/23:三端安装包均已上线官网 https://latexsnipper.interknot.dpdns.org/
- 2026/5/31:正式上线Office插件功能
- 2026/6/3:插件新增OLE渲染管线
- 2026/6/6:符号库扩充到了2121个常用符号/公式,覆盖所有AMS基础运算符以及分析/代数/几何/拓扑/数论,化学式,物理
- 2026/6/13:客户端支持粘贴图片识别;插件新增交叉引用,公式转换,章节分割符和自定义公式字体,颜色,支持常用快捷键
- 2026/6/18:修复插件字体显示/元数据丢失BUG,支持多开文档/多选转换,支持自定义字体大小;客户端新增pptx和pdf导出
- 2026/6/18:冻结当前版本号为v2.4.0 LTS,后续v2.4.0 LTS版本不会增加新功能,仅修复错误,v2.4.0 LTS之前的版本已不再支持
- 2026/6/20:统一优化三端用户数据目录,减小安装包体积
What's Changed
- ci: add CI and release workflows by @SakuraMathcraft in #4
- chore: remove unused temp file and promotion directory by @SakuraMathcraft in #6
- refactor: simplify dialogs and fix dependency/update bugs by @SakuraMathcraft in #7
- docs: bump README version to v1.02 by @SakuraMathcraft in #8
- chore: sync local tracked changes by @SakuraMathcraft in #9
- fix: stabilize PDF flow and update runtime/env handling by @SakuraMathcraft in #10
- feat: bump to v1.03 and improve capture UX by @SakuraMathcraft in #11
- Add files via upload by @SakuraMathcraft in #12
- 更新 readme.md by @SakuraMathcraft in #13
- Update readme.md by @SakuraMathcraft in #14
- Update readme.md by @SakuraMathcraft in #15
- Update readme.md by @SakuraMathcraft in #16
- Update readme.md by @SakuraMathcraft in #17
- Update readme.md by @SakuraMathcraft in #18
- 更新 readme.md by @SakuraMathcraft in #20
- 更新 readme.md by @SakuraMathcraft in #21
- release: v1.04 runtime and model workflow updates by @SakuraMathcraft in #22
- chore: sync v1.05 updates and runtime cleanup by @SakuraMathcraft in #23
- feat: finalize v1.05 pix2text-only cleanup and runtime logging UX by @SakuraMathcraft in #24
- v1.05: stabilize restart flow and dependency/runtime behavior by @SakuraMathcraft in #25
- feat: publish tauri client source branch snapshot by @SakuraMathcraft in #26
- tauri: stabilize capture flow and update client defaults by @SakuraMathcraft in #28
- Update readme.md by @SakuraMathcraft in #29
- Update readme.md by @SakuraMathcraft in #31
- Tauri client by @SakuraMathcraft in #32
- Restore platform module and v2 plan by @SakuraMathcraft in #33
- Release LaTeXSnipper 2.0 by @SakuraMathcraft in #34
- Update readme.md by @SakuraMathcraft in #35
- Fix workbench UX and updater release detection by @SakuraMathcraft in #36
- Update readme.md by @SakuraMathcraft in #37
- Fix updater pause flow and hidden subprocesses by @SakuraMathcraft in #38
- Add optional PyInstaller spec for release builds by @SakuraMathcraft in #39
- Merge tauri client into main release fixes by @SakuraMathcraft in #40
- Polish 2.0 workbench and updater flows by @SakuraMathcraft in #41
- Refine runtime logging and add Android client scaffold by @SakuraMathcraft in #42
- Tauri client by @SakuraMathcraft in #43
- Polish dependency wizard and shortcut dialogs by @SakuraMathcraft in #44
- Fix updater install flow and shortcut dialog by @SakuraMathcraft in #45
- feat: add handwriting recognition workspace by @SakuraMathcraft in #46
- release: prepare v2.1 by @SakuraMathcraft in #47
- docs: update README for v2.1 by @SakuraMathcraft in #48
- Update readme.md by @SakuraMathcraft in #49
- Update readme.md by @SakuraMathcraft in #50
- release: prepare v2.2 beta external model support by @SakuraMathcraft in #52
- release: finalize v2.2 external model and stability fixes by @SakuraMathcraft in #53
- chore: remove obsolete release notes and tech plan docs by @SakuraMathcraft in #55
- Update readme.md by @SakuraMathcraft in #54
- feat: refine external model OCR pipeline by @SakuraMathcraft in #56
- docs: refresh external model release notes by @SakuraMathcraft in #57
- fix: refresh settings status feedback by @SakuraMathcraft in #59
- Delete RELEASE_NOTES_v2.2.md by @SakuraMathcraft in #60
- feat: polish handwriting UX for v2.2.1 by @SakuraMathcraft in #63
- release: prepare v2.3 code update by @SakuraMathcraft in #65
- fix: bump updater local version to v2.3 by @SakuraMathcraft in #66
- fix: stabilize auto-layout preview close and keyboard sync by @SakuraMathcraft in #67
- Revise project description and feature list by @SakuraMathcraft in #68
- docs: update project tree and auto-layout demo in README by @SakuraMathcraft in #69
- Update readme.md by @SakuraMathcraft in #70
- fix: stabilize preview/render pipeline and clean legacy dialog code by @SakuraMathcraft in #71
- Tauri client by @SakuraMathcraft in #73
- chore: remove release notes from repo and ignore them by @SakuraMathcraft in #74
- Tauri client by @SakuraMathcraft in #75
- feat(mineru): stabilize PDF parse flow and markdown image export by @SakuraMathcraft in #78
- Tauri client by @SakuraMathcraft in #79
- Tauri client by @SakuraMathcraft in #80
- chore: finalize v2.3.1 release updates by @SakuraMathcraft in #81
- Update readme.md by @SakuraMathcraft in #82
- fix: classify pix2text warmup failures by @SakuraMathcraft in #84
- Release v2.3.2 by @SakuraMathcraft in #85
- Tauri client by @SakuraMathcraft in #87
- Add drag and drop recognition entry by @SakuraMathcraft in #88
- Place capture results on source screen by @SakuraMathcraft in #89
- Release final stable version by @SakuraMathcraft in #90
- Delete FINAL_STABLE_RELEASE.md by @SakuraMathcraft in #91
- Update readme.md by @SakuraMathcraft in #92
- Fix dependency bootstrap and GPU runtime recovery by @SakuraMathcraft in #94
- Fix installer flow and deps path normalization by @SakuraMathcraft in #95
- Clean import structure and static analysis debt by @SakuraMathcraft in #96
- Refine dependency env terminal and runtime isolation by @SakuraMathcraft in #97
- Prefer pip transfer stats for download speed by @SakuraMathcraft in #98
- Refine settings runtime probes and Argos env checks by @SakuraMathcraft in #99
- Stabilize bilingual reader window lifecycle by @SakuraMathcraft in #100
- Harden pix2text warmup recovery and env logs by @SakuraMathcraft in #101
- Harden table warmup and OCR cache recovery by @SakuraMathcraft in #102
- Lighten default CORE runtime verification by @SakuraMathcraft in #103
- Update readme.md by @SakuraMathcraft in #104
- Migrate internal OCR to MathCraft by @SakuraMathcraft in #105
- Package MathCraft OCR runtime by @SakuraMathcraft in #106
- Math craft by @SakuraMathcraft in #107
- Ignore local package metadata by @SakuraMathcraft in #108
- Math craft by @SakuraMathcraft in #109
- Clean dead source files and improve CUDA diagnostics by @SakuraMathcraft in #110
- Math craft by @SakuraMathcraft in #111
- Fix CUDA-aware ONNX Runtime GPU policy by @SakuraMathcraft in #112
- Clean updater channel handling by @SakuraMathcraft in #113
- Add Microsoft Store MSIX packaging by @SakuraMathcraft in #114
- Add Microsoft Store MSIX packaging by @SakuraMathcraft in #115
- Update release packaging workflow by @SakuraMathcraft in #116
- Improve updater release fallback handling by @SakuraMathcraft in #117
- ci: automate release installer build by @SakuraMathcraft in #118
- ci: fix build requirements syntax by @SakuraMathcraft in #119
- build: pin release deps and bundle store cpu runtime by @SakuraMathcraft in #120
- 更新器修复 by @SakuraMathcraft in #121
- fix capture overlay magnifier rendering by @SakuraMathcraft in #122
- Refactor main window modules by @SakuraMathcraft in #123
- Math craft by @SakuraMathcraft in #124
- Math craft by @SakuraMathcraft in #125
- Update CI for modularized layout by @SakuraMathcraft in #126
- Keep file-based CAS worker in package by @SakuraMathcraft in #127
- Test/pr 129 pandoc by @SakuraMathcraft in #131
- docs: describe expanded export formats by @SakuraMathcraft in #132
- Test/pr 129 pandoc by @SakuraMathcraft in #134
- Test/pr 137 review by @SakuraMathcraft in #138
- Test/pr 137 review by @SakuraMathcraft in #139
- ci: allow CRLF in Inno metadata check by @SakuraMathcraft in #140
- fix: run python seed verification from temp file by @SakuraMathcraft in #141
- Fix/python seed verify script by @SakuraMathcraft in #142
- fix: bundle macOS runtime dependencies by @SakuraMathcraft in #143
- Fix dependency packaging and Python installer discovery by @SakuraMathcraft in #144
- Upload release assets from manual workflow by @SakuraMathcraft in #145
- chore: clean startup rendering and release signing by @SakuraMathcraft in #146
- Math craft by @SakuraMathcraft in #148
- ci: bound Linux apt dependency install time by @SakuraMathcraft in #149
- Math craft by @SakuraMathcraft in #150
- Math craft by @SakuraMathcraft in #151
- Math craft by @SakuraMathcraft in #152
- Update readme.md by @SakuraMathcraft in #153
- Math craft by @SakuraMathcraft in #155
- Math craft by @SakuraMathcraft in #156
- fix: narrow linux graphics fallback by @SakuraMathcraft in #157
- docs: expand user faq by @SakuraMathcraft in #158
- Math craft by @SakuraMathcraft in #159
- refactor: split main window controllers by @SakuraMathcraft in #161
- Math craft by @SakuraMathcraft in #162
- update readme by @SakuraMathcraft in #163
- 优化手写识别速度和多行公式精度 by @SakuraMathcraft in #165
- Improve handwriting mixed OCR workflow by @SakuraMathcraft in #166
- Math craft by @SakuraMathcraft in #167
- Disable pynput hotkey startup on macOS by @SakuraMathcraft in #168
- Math craft by @SakuraMathcraft in #169
- Rate limit recognition failure tray notifications by @SakuraMathcraft in #170
- Clean cross-platform packaging state files by @SakuraMathcraft in #171
- Separate CI concurrency by event by @SakuraMathcraft in #172
- Bump mathcraft-ocr to 0.1.9 by @SakuraMathcraft in #173
- Bump mathcraft-ocr to 0.2.0 by @SakuraMathcraft in #174
- Update user manual workflows by @SakuraMathcraft in #175
- Update documentation for current app behavior by @SakuraMathcraft in #176
- Fix macOS DMG packaging to exclude extra artifacts by @Galileo927 in #177
- Math craft by @SakuraMathcraft in #178
- Remove obsolete installer flavor argument by @SakuraMathcraft in #179
- Show packaged dependency wizard before pip bootstrap by @SakuraMathcraft in #180
- Math craft by @SakuraMathcraft in #181
- Math craft by @SakuraMathcraft in #183
- Add repository code owners by @SakuraMathcraft in #185
- Math craft by @SakuraMathcraft in #186
- Fix dependency wizard foreground startup by @SakuraMathcraft in #187
- Align settings dependency wizard startup by @SakuraMathcraft in #188
- Fix settings wizard restart visibility by @SakuraMathcraft in #189
- Release MathCraft OCR 0.2.1 by @SakuraMathcraft in #190
- Math craft by @SakuraMathcraft in #191
- Math craft by @SakuraMathcraft in #192
- Math craft by @SakuraMathcraft in #193
- Update MathCraft worker env test by @SakuraMathcraft in #194
- Use bundled deps as packaged initial runtime by @SakuraMathcraft in #195
- Math craft by @SakuraMathcraft in #197
- Match preview scrollbar theme by @SakuraMathcraft in #198
- Office addin by @SakuraMathcraft in #199
- Office addin by @SakuraMathcraft in #200
- Office addin by @SakuraMathcraft in #203
- Office addin by @SakuraMathcraft in #204
- Office addin by @SakuraMathcraft in #205
- Office addin by @SakuraMathcraft in #206
- Office addin by @SakuraMathcraft in #207
- Office plugin by @SakuraMathcraft in #209
- Office plugin by @SakuraMathcraft in #210
- fix(ci): add Set-Location before ISCC in release workflow by @SakuraMathcraft in #211
- docs: remove fake Ctrl+Shift shortcuts from Office volume by @SakuraMathcraft in #212
- Office plugin by @SakuraMathcraft in #213
- docs: update office_plugin README to reflect current state by @SakuraMathcraft in #214
- Office plugin by @SakuraMathcraft in #215
- Office plugin by @SakuraMathcraft in #216
- Polish office OCR status and release packaging by @SakuraMathcraft in #217
- Polish Office plugin release workflow by @SakuraMathcraft in #218
- Use Node 24 dotnet setup action by @SakuraMathcraft in #219
- Add OLE formula object support and improve Office plugin infrastructure by @SakuraMathcraft in #220
- refactor: migrate OLE formula object to native C++ implementation by @SakuraMathcraft in #221
- Office plugin by @SakuraMathcraft in #222
- refactor: remove obsolete OleFormulaModule and OleRegistration, updat… by @SakuraMathcraft in #223
- refactor: enhance Office plugin rendering, settings UI, OLE native ob… by @SakuraMathcraft in #224
- fix: change BilingualPdfWindow base class from QDialog to QWidget to … by @SakuraMathcraft in #225
- docs: update Office plugin manual (Volume 2) to reflect OLE/OMML/PNG … by @SakuraMathcraft in #226
- Office plugin by @SakuraMathcraft in #227
- fix: increase global search height 20→26px by @SakuraMathcraft in #228
- Office plugin by @SakuraMathcraft in #229
- Office plugin by @SakuraMathcraft in #230
- chore: commit remaining pending changes by @SakuraMathcraft in #232
- Office plugin by @SakuraMathcraft in #233
- Update readme.md by @SakuraMathcraft in #234
- Update readme.md by @SakuraMathcraft in #235
- Update readme.md by @SakuraMathcraft in #236
- Update readme.md by @SakuraMathcraft in #237
- Office plugin by @SakuraMathcraft in #238
- Office plugin by @SakuraMathcraft in #239
- chore: sync mathlive assets by @SakuraMathcraft in #240
- feat: expand office formula workflows and editor formatting by @SakuraMathcraft in #245
- feat(office-plugin): align formula workflows and rendering by @SakuraMathcraft in #246
- clean legacy paths and optimize Office formula workflows by @SakuraMathcraft in #247
- Office plugin by @SakuraMathcraft in #248
- fix: update Office plugin build step and macOS brew trust in release … by @SakuraMathcraft in #249
- fix: resolve MSBuild path via vswhere before VSTO build by @SakuraMathcraft in #250
- fix: disable Fusion assembly bind logging before VSTO build on CI by @SakuraMathcraft in #251
- fix: remove VSTO build from CI, use pre-built artifacts in repo by @SakuraMathcraft in #252
- fix: auto-detect MSVC platform toolset for VS 2025 runner by @SakuraMathcraft in #253
- fix: ensure C++ build tools installed and detect PlatformToolset corr… by @SakuraMathcraft in #254
- Office plugin by @SakuraMathcraft in #255
- fix: inline VSTO build with SignManifests=false for VS 2025 compat by @SakuraMathcraft in #256
- Office plugin by @SakuraMathcraft in #257
- fix(ci): unify Office plugin release build by @SakuraMathcraft in #258
- Office plugin by @SakuraMathcraft in #259
- Office plugin by @SakuraMathcraft in #260
- Office plugin by @SakuraMathcraft in #261
- Improve macOS packaging and runtime behavior by @Galileo927 in #262
- Revert "Improve macOS packaging and runtime behavior" by @Galileo927 in #263
- Office plugin by @SakuraMathcraft in #265
- Fix office plugin packaging and dependency paths by @SakuraMathcraft in #266
- Update user manual (PDF), docs, and readme by @SakuraMathcraft in #267
- Enhance Office formula conversion and document performance by @SakuraMathcraft in #268
- Fix inline OMML metadata updates by @SakuraMathcraft in #269
- Prepare v2.4.0 LTS release by @SakuraMathcraft in #270
- Add Office metadata COM regression coverage by @SakuraMathcraft in #271
- Clean up cross-platform packaging and user data paths by @SakuraMathcraft in #272
- Office plugin by @SakuraMathcraft in #273
- Installation package slimming down by @SakuraMathcraft in #274
- Polish cross-platform dependency cleanup by @SakuraMathcraft in #276
New Contributors
- @SakuraMathcraft made their first contribution in #4
- @Galileo927 made their first contribution in #177
Full Changelog: https://github.com/SakuraMathcraft/LaTeXSnipper/commits/v2.4.0-LTS