背景:スライドの数式をLaTeXで使いたい問題
理系の学生・研究者なら一度は経験する状況だと思います。
- 授業のスライドにきれいな数式が出てくる
- 自分のレポートや論文のLaTeXファイルでその式を使いたい
- でも手打ちすると時間がかかる上に、コンパイルエラーが出やすい
特に以下のような式は手打ちがつらい:
% ブラケット記法(量子力学)
|\psi\rangle = \sum_{n=0}^{\infty} c_n |n\rangle, \quad c_n = \langle n | \psi \rangle
% ヤコビアン付き多重積分
\iint_D f(x,y) \left| \frac{\partial(x,y)}{\partial(u,v)} \right| \, du \, dv
% 複雑な添字
\hat{H} = -\frac{\hbar^2}{2m} \nabla^2 + V(\mathbf{r})
こういった式をスライドから.texに移す効率的な方法を探した結果、TeX64のOCR機能にたどり着きました。
従来の選択肢の比較
Mathpix Snip
良い点: 精度が高い、Webサービスとして手軽に使える
問題点: 無料枠が月10回。Proプランは月5ドル。さらに、使うたびにエディタ↔Mathpixアプリ間の行き来が発生する
pix2tex(LaTeX-OCR)
良い点: オープンソース、ローカル動作
問題点: Python環境構築が必要。Apple SiliconのMacではPyTorchのバージョン依存問題が発生しやすい
Google Gemini / ChatGPT への画像貼り付け
良い点: 無料、精度もそこそこ
問題点: これもエディタと別ブラウザを行き来する。コンテキストスイッチが多い
TeX64 OCRのアプローチ
TeX64はmacOS向けのローカルファーストなLaTeXエディタです(https://tex64.com)。
特徴は、OCRがエディタに内蔵されている点です。
つまり:
- 授業スライドのPDFを開く(別アプリでもブラウザでも)
- 気になる数式を
Cmd+Shift+4でスクリーンショット - TeX64エディタウィンドウにペースト(
Cmd+V) - LaTeXコードが自動生成される
別のOCRアプリを開く必要がなく、エディタの中で完結します。
実際に試した例
例1:分配関数(統計力学)
スライドに Z = Σ_n exp(-β E_n) という表示があった場合:
Z = \sum_{n} e^{-\beta E_n}
上記のように変換されました。正確で、そのまま使えます。
例2:フーリエ変換の定義
\hat{f}(\xi) = \int_{-\infty}^{\infty} f(x) e^{-2\pi i x \xi} \, dx
複素指数部分の添字も正確でした。
例3:状態ベクトルの展開
|\psi\rangle = \sum_{n=0}^{\infty} c_n |n\rangle, \quad c_n = \langle n | \psi \rangle
\langle、\rangle のような特殊コマンドも問題なく出力されます。
手書きのスクリーンショットも動作しますが、印刷された数式(PDFスライド)の方が精度は高いです。
コンパイルエラーが出た場合
OCRの出力が完璧でないこともあります(特に複雑な数式)。そのときに便利なのが TeX64 内蔵の AI「Axiom」です。
Axiomはコンパイルログを解析し、「この行をこう直すと通る」というdiffを提示します。提案は1クリックで適用でき、修正もエディタの中で完結します。
注意事項・制限
| 項目 | 詳細 |
|---|---|
| 対応OS | macOS のみ(Apple Silicon/Intel 両対応) |
| 必要なもの | TeX Live または MacTeX(別途インストール) |
| OCR対象 | 数式のみ(テキストは変換しない) |
| 精度 | 印刷数式 > 手書き |
| 料金 | フリープランあり。OCR多用には有料プランが必要 |
まとめ
| ツール | エディタ統合 | 無料枠 | ローカル動作 |
|---|---|---|---|
| Mathpix Snip | ✗ | 月10回 | ✗ |
| pix2tex | ✗ | 無制限 | ✓ |
| TeX64 | ✓ | あり | ✓ |
スライドの数式をLaTeXで使うたびに「ツール切り替え → コピー → 貼り付け」が発生していた方は、TeX64のOCR機能で一度試してみてください。
公式サイト:https://tex64.com