LaTeX → HTML(tex4ht / make4ht / lwarp / LaTeXML)

PDF ではなく Web ページ として出したいことがあります——アクセシビリティ、Web 公開、電子書籍のため。LaTeX → HTML の変換ツールは 4 つあり、得意分野が違います:tex4ht(手軽な front-end make4ht 経由)、lwarpLaTeXML。このページで使い分けを示します。

tex4ht と make4ht

tex4ht は古参の LaTeX→HTML/XML 変換器で、htlatex file.tex "html5,mathml,…" のように呼びます。強力ですが、直接駆動するのは少々面倒。そこで make4ht(Michal Hoftich 作)が、扱いやすい ビルド front-end を提供します——make4ht file.tex。HTML5 が既定で、Lua のビルドファイルで細かく調整(bibtex 実行・後処理・画像変換など)できます。生の htlatex より make4ht を使いましょう。

terminal
make4ht file.tex     # tex4ht の手軽な front-end(HTML5 既定)/ friendly front-end
# 生の tex4ht なら / raw tex4ht:
htlatex file.tex "html5,mathml,charset=utf-8"

lwarp

lwarp(Brian Dunn 作)は別のやり方です——本物の LaTeX を実行 して HTML5 を直接 生成するので、500 以上のパッケージ・クラス を高い忠実度で扱えます。数式は SVG 画像か MathJax に。\usepackage{lwarp} を入れて pdflatex でコンパイルし、lwarpmk html を実行(texlua スクリプトが多段処理を自動化)。多くのパッケージを使う文書に向きます。

terminal
% プリアンブルに / in the preamble:  \usepackage{lwarp}
lwarpmk html         # 多段処理を自動化 / automates the build

LaTeXML

LaTeXML(Bruce Miller、NIST)は、LaTeX を 意味的な XML に解析してから HTML5+MathML(ePub・JATS も)へ変換します。2 段階:latexml のあと latexmlpost数式 → MathML が最も堅牢で、arXiv が論文の HTML 版にこれを使っています。数式が多く、意味的・アクセシブルな出力が要るときの最有力です。

terminal
latexml --dest=file.xml file.tex
latexmlpost --dest=file.html file.xml   # → HTML5 + MathML

どれを選ぶか

  • 手軽に HTML 化make4ht(tex4ht)。
  • 多数のパッケージを高忠実度でlwarp
  • 数式が多く MathML・意味的 XML(arXiv 流)LaTeXML