我有cases
一个环境里面的环境align
,我试图通过一个丑陋的命令将align
环境的一行的一部分与环境的一部分对齐。这是一个 MWE:cases
\phantom
\documentclass{article}
\usepackage{amsmath,mathtools}
\begin{document}
\begin{align}
f(x)&=\mathrlap{2}\phantom{\begin{cases}1&\\0&\end{cases}}\text{if }x>0\\
g(x)&=\begin{cases}1&\text{if }x>0\\0&\text{if }x<0\end{cases}
\end{align}
\end{document}
我希望“if”能够水平对齐,但我不明白为什么它们不对齐——也许与 LaTeX 在环境中设置的间距有关cases
。
有人能看到解决办法吗(除了用“手动”方法之外\vspace
)?
答案1
您忘记了\nulldelimiterspace
使用空分隔符时添加的:
\documentclass{article}
\usepackage{amsmath,mathtools}
\begin{document}
\begin{align}
f(x)&=\mathrlap{2}
\hphantom{\begin{cases}1&\\0&\end{cases}}\kern-\nulldelimiterspace
\text{if }x>0\\
g(x)&=\begin{cases}1&\text{if }x>0\\0&\text{if }x<0\end{cases}
\end{align}
\end{document}
您应该使用\hphantom
而不是\phantom
,因此不考虑垂直尺寸。