如何配置 htlatex,使方程式不作为图像呈现在单独的文件中,而是像在文档中一样呈现$x$
?我仍然希望能够分配\label
答案1
我认为最好将数学转换为 MathML 并使用 MathJax 进行渲染。这样原生 LaTeX 标签就可以毫无问题地工作。
我们需要做的就是使用简单的配置文件,它将提供一些 JavaScript 来加载 MathJax:
\Preamble{xhtml,mathml}
\Configure{@HEAD}{%
\HCode{<script type="text/javascript"
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=MML_CHTML">
</script>\Hnewline}}
\begin{document}
\EndPreamble
它所做的就是在命令中选择 MathML 输出\Preamble
,然后包含外部脚本来加载 MathJax。重要的部分是MathJax.js?config=MML_CHTML
,它将 MathJax 配置为仅解析 MathML 并选择常见的 html 作为呈现格式。默认情况下,MathJax 还会解析文档中的 LaTeX 数学,但我们真的不需要这样做,它只会减慢处理速度。
一些示例文档:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
hello world
\begin{equation}
\label{eq:hello}
a = \sqrt{b^2 + c^2}
\end{equation}
See equation~\ref{eq:hello}
Now some multiline
\begin{multline*}
p(x) = 3x^6 + 14x^5y + 590x^4y^2 + 19x^3y^3\\
- 12x^2y^4 - 12xy^5 + 2y^6 - a^3b^3
\end{multline*}
Align:
\begin{align*}
2x - 5y &= 8 \\
3x + 9y &= -12
\end{align*}
Align*:
\begin{align*}
x&=y & w &=z & a&=b+c\\
2x&=-y & 3w&=\frac{1}{2}z & a&=b\\
-4 + 5x&=2+y & w+2&=-1+w & ab&=cb
\end{align*}
\end{document}
我们可以使用以下方法进行编译
make4ht -uc configfilename.cfg filename.tex
结果如下: