tex4ht:`\[` `\]` 环境和标签之间存在冲突,参考?

tex4ht:`\[` `\]` 环境和标签之间存在冲突,参考?

我尝试通过以下非常简单的代码进行编译tex4eboot

\documentclass{amsart}

\begin{document}
\[
  x=y\label{t1}\tag{Test}
\]
Look at equation \ref{t1}.
\end{document}

它给了我错误:

[ERROR]   htlatex: Compilation errors in the htlatex run
[ERROR]   htlatex: Filename Line    Message
[ERROR]   htlatex: ./test.tex   5    Package amsmath Error: \tag not allowed here.
[ERROR]   htlatex: Compilation errors in the htlatex run
[ERROR]   htlatex: Filename Line    Message
[ERROR]   htlatex: ./test.tex   5    Package amsmath Error: \tag not allowed here.
[ERROR]   htlatex: Compilation errors in the htlatex run
[ERROR]   htlatex: Filename Line    Message
[ERROR]   htlatex: ./test.tex   5    Package amsmath Error: \tag not allowed here.

但是,我可以使用 pdflatex 来编译它。我知道我可以用 替换\[和。但是,由于文章通常很长,\]并且equation要替换的正则表达式会导致意外结果。我想知道如何解决这个问题。谢谢!

答案1

尝试以下配置文件:

\Preamble{xhtml}
\Configure{[]}{\begin{equation*}}{\end{equation*}}{}
\begin{document}
\EndPreamble

它基本上和 Amsmath 做同样的事情,配置\[ ... \]环境equation*

结果如下:

在此处输入图片描述

我已将此代码添加到tex4ht源中,因此它应该是将来的默认行为。

答案2

一般\[...\]用于无编号显示方程,如果你将你的代码改为\begin{equation}...\end{equation},那么你的代码就可以正常工作,修改后的内容MWE为:

\documentclass{amsart}

\begin{document}
\begin{equation}
  x=y\label{t1}\tag{Test}
\end{equation}
Look at equation \ref{t1}.
\end{document}

转换后的HTML输出为:

在此处输入图片描述

相关内容