我有一个问题,关于如何对齐一组不等式的多个符号以使其看起来干净。这是我目前所拥有的:
\begin{align*}
|f(x)-f(a)| &< f(a) \\
-f(a) < f(x) - f(a) &< f(a) \\
-f(a) + f(a) < f(x) &< f(a) + f(a) \\
0 < f(x) &< 2f(a) \\
\implies f(x) &> 0.
\end{align*}
我想要实现的结果类似于使用 alignat 环境时可能获得的结果。理想情况下,我希望基本上创建 3 列,其中不等号作为分隔符 - 但我希望中间列居中对齐。
另请注意,顶行只有一个不等号 - 我希望它与右侧的所有符号对齐。我该如何实现这一点?
答案1
像这样?
使用 owarray
很简单:
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\[\setlength\arraycolsep{1pt}
\begin{array}{rcccl}
& ~ & f(x)-f(a)| & < & f(a) \\
-f(a) & < & f(x) - f(a) & < & f(a) \\
-f(a) + f(a) & < & f(x) & < & f(a) + f(a) \\
0 & < & f(x) & < & 2f(a) \\
& ~ &\implies f(x)& > & 0
\end{array}
\]
\end{document}
答案2
解决方案与alignat
和eqparbox
包。我借此机会定义了一个\eqmathbox
命令:它的可选参数是一个标签(M
默认情况下),它的强制参数是数学模式,显示样式。所有\eqmathbox
共享相同标签的 es 都将使其内容居中在一个宽度为最大内容宽度的框中。我还定义了一个命令,它在其带星号的版本中在其参数周围\abs
添加了一对隐式的。\left\lvert … \right\rvert
\documentclass{article}
\usepackage{mathtools}
\DeclarePairedDelimiter\abs\lvert\rvert
\usepackage{eqparbox}
\newcommand\eqmathbox[2][M]{\eqmakebox[#1]{$\displaystyle#2$}}
\begin{document}
\begin{alignat*}{2}
& \phantom{{}<{}} & \eqmathbox{\abs{ f(x)-f(a)}} & < f(a) \\
-f(a) & < & \eqmathbox{f(x)-f(a)} & < f(a) \\%
-f(a) + f(a) & < & \eqmathbox{f(x)} & < f(a) + f(a) \\
0 & < & \eqmathbox{f(x)} & < 2f(a) \\
& & \implies f(x) & > 0
\end{alignat*}
\end{document}