如何修正扩展命令,将其插入到实际文本中?

如何修正扩展命令,将其插入到实际文本中?

我尝试重新定义方程式环境,以插入公式的实际文本。但如果我在方程式后插入空格,则会出现\test{1}{0}。当我在方程式的实际文本设置后不插入空格时,就会出现预期结果1+0=1-0

  1. 即使在设置实际文本后还有空间,如何正确扩展命令。
  2. 如何使用 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}

相关内容