对于学校来说,我们必须在所有的数学作业成绩下画双线。
我制作了一个命令来简化这一过程。它看起来像这样:
\newcommand*{\uul}[1]{
\underline{\underline{#1}}
}
它工作得很好,除了当我将它与 align* 环境一起使用时。如果有一个&=
内部,如下所示:
\uul{x &= 14}
它抛出了各种错误。如果我删除它,&
它就可以正常工作。
我猜测传递内容时会出现一些问题,但是有没有什么办法可以解决这个问题呢?
答案1
我认为最简单的方法是使用重叠的 重新追踪“最终方程” \phantom
,并在其中设置下划线(如下面的第三组方程所示)。这解决了将函数扩展到对齐标记 的问题&
,否则很难做到这一点:
\documentclass{article}
\usepackage{amsmath}% http://ctan.org/pkg/amsmath
\newcommand*{\uul}[1]{\underline{\underline{#1}}}
\begin{document}
\begin{align*}
f(x) &= ax^2 + bx + c \\
x &= 5
\end{align*}
\begin{align*}
f(x) &= ax^2 + bx + c \\
\text{\uul{$x$}} &\text{\uul{${}= 5$}}
\end{align*}
\begin{align*}
f(x) &= ax^2 + bx + c \\
x &= 5\llap{\uul{\phantom{$x=5$}}}
\end{align*}
\begin{align*}
f(x) &= ax^2 + bx + c \\
&\makebox[0pt][r]{\uul{$x$}}\text{\uul{${} = 5$}}
\end{align*}
\end{document}
\llap
类似于\makebox[0pt][r]
提供l
大量lap
内容的。