请考虑以下示例:
\documentclass{article}
\usepackage{amsmath, amsthm, amssymb, mathtools, thmtools, unicode-math}
\begin{document}
\begin{align*}
\hphantom{\Leftrightarrow}Lf&=0\\
\Leftrightarrow f''&=-\frac{2b}af'\\
\Leftrightarrow f'&=c_1\exp\left(-2\int_0^{\;\cdot}\frac ba(x)\:{\rm d}x\right)\\
\Leftrightarrow f&=c_1\int_0^{\;\cdot}\exp\left(-2\int_0^y\frac ba(x)\:{\rm d}x\right)\:{\rm d}y+c_2
\end{align*}
\end{document}
期望的输出如下:
如何实现正确的对齐?基本上,它是一个有四列的矩阵。第一、第二和第四列的内容应该分别左对齐、右对齐和左对齐。我们该怎么做呢?
答案1
使用alignat
:
\documentclass{article}
\usepackage{amsmath}
\newcommand{\diff}{\mathop{}\!\mathrm{d}}
\begin{document}
\begin{alignat*}{2}
&\quad& Lf&=0\\
\Leftrightarrow && f''&=-\frac{2b}af'\\
\Leftrightarrow && f'&=c_1\exp\biggl(-2\int_0^{\;\cdot}\frac ba(x)\diff x\biggr)\\
\Leftrightarrow && f&=c_1\int_0^{\;\cdot}\exp\biggl(-2\int_0^y\frac ba(x)\diff x\biggr)\diff y+c_2
\end{alignat*}
\end{document}
我改变了差异 d 的排版方式,它的间距\:
是错误的,并且\rm
已经弃用了 20 多年。
答案2
还有这种可能性,使用\ArrowBetweenLines
命令,来自mathtools
。
无关:无需加载,amsmath
因为 mathtools 已经为您完成了。
\documentclass{article}
\usepackage{ amssymb, mathtools, amsthm, thmtools, unicode-math}
\begin{document}
\begin{alignat*}{2}
& & Lf&=0\\
\ArrowBetweenLines & & f''&=-\frac{2b}af'\\
\ArrowBetweenLines & &f'&=c_1\exp\left(-2\int_0^{\;\cdot}\frac ba(x)\:{\rm d}x\right)\\
\ArrowBetweenLines & &f&=c_1\int_0^{\;\cdot}\exp\left(-2\int_0^y\frac ba(x)\:{\rm d}x\right)\:{\rm d}y+c_2
\end{alignat*}
\end{document}