我尝试重新定义方程式环境,以插入公式的实际文本。但如果我在方程式后插入空格,则会出现\test{1}{0}
。当我在方程式的实际文本设置后不插入空格时,就会出现预期结果1+0=1-0
。
- 即使在设置实际文本后还有空间,如何正确扩展命令。
- 如何使用 expl3 函数进行此扩展?
感谢大家的帮助。
\documentclass{article}
\usepackage{amsmath,amssymb,tagpdf,unicode-math}
\ExplSyntaxOn
\tagpdfsetup{tabsorder=structure,uncompress,activate-all,interwordspace=true}
\protected\def\DoTaggedEquation#1{
\tagstructbegin{tag=P,actualtext-o=\detokenize\expandafter{#1}}
\tagmcbegin{tag=P}
#1
\tagmcend
\tagstructend
}
\makeatletter
\renewenvironment{equation}{
\incr@eqnum
\mathdisplay@push
\st@rredfalse \global\@eqnswtrue
\mathdisplay{equation}%
\collect@body\DoTaggedEquation\c_space_tl}{
\endmathdisplay{equation}%
\mathdisplay@pop
\ignorespacesafterend
}
\makeatletter
\newcommand{\test}[2]{#1+#2=#1-#2}
\ExplSyntaxOff
\begin{document}
\tagstructbegin{tag={Document}}
\begin{equation}\test{1}{0}\end{equation}
\tagstructend
\end{document}