make4ht
使用和 使用参数进行编译时,使用环境svg
中得出的公式不会转换为。如果我更改为,HTML 会显示警告:。subequation
align
SVG
mathjax
Unknown environment 'subequations'
下面是一个重现该现象的小样本:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
Test
\begin{equation}
H(X) = - \sum_x p_x \log p_x
\end{equation}
\begin{subequations}
\begin{align}
A&=&B\\
D&=&C \label{e:middle}\\
E&=&F
\end{align}
\end{subequations}
\end{document}
编译使用:
make4ht -u -x test-math.tex "svg"
更改为 可以eqnarray
正常工作。我应该在配置文件中使用补丁吗?我尝试了以下操作:
\Preamble{xhtml}
\renewenvironment{align}{
\begin{eqnarray}
}{
\end{eqnarray}
\ignorespacesafterend
}
\begin{document}
\EndPreamble
这是 bug 吗make4ht
?有更好的解决方案吗?
答案1
MathJax 似乎不支持subequations
开箱即用的环境。我找到了一个JavaScript 代码这应该可以实现它,但我无法让它工作。
您还有更多选择 - 第一个选项是使用图像,就像您已经做的那样。并非所有数学环境都默认转换为图像,但您可以使用选项来要求它。该选项通常名为pic-
+ environment name
。请参阅文档了解更多受支持的选项。例如,pic-align
将在您的示例中起作用:
make4ht -u -x test.tex "svg,pic-align"
结果:
另一个选择是使用 MathML。它需要与 MathJax 一起使用,因为并非每个浏览器都支持 MathML:
make4ht -u -x test.tex "mathml,mathjax"
结果: