问题提出
在对数学公式对齐的时候,碰到数字,由于数字的位数不一样,有时候我们为了美观想使数字右对齐,这样数字比较更加直观,如下图,我们想使得右边的数字右对齐。
方法一(使用 alignedat 环境)
LaTeX 代码如下(由 Harish Kumar 提供):%!TEX program = pdflatex \documentclass{article} \usepackage[paperwidth=130mm,paperheight=30mm]{geometry} \usepackage{mathpazo} \usepackage{amsmath} \begin{document} \begin{equation*} \begin{alignedat}{2} \text{first value} & ={} & 12 \\ \text{second value} & ={} & 1234 \\ \text{third one} & ={} & 1234567 \end{alignedat} \end{equation*} \end{document}效果如下所示:

方法二(使用 array 嵌套在 equation* 环境中)
我个人不太常用 array 环境,但是感觉涉及到对齐的问题,array 总能解决问题,Mico 向我们提供了借助 array 环境的实现方法。LaTeX 源码如下:%!TEX program = pdflatex \documentclass{article} \usepackage[paperwidth=130mm,paperheight=30mm]{geometry} \usepackage{mathpazo} \usepackage{amsmath} \begin{document} \begin{equation*} \begin{array}{r@{{}={}}r} % "@{{}={}}" inserts correctly-spaced equal sign between the columns \text{first value} & 12 \\ \text{second value} & 1234 \\ \text{third one} & 1234567 \end{array} \end{equation*} \end{document}代码中也有对 array 对齐选项的解释,如果不太清楚,请查阅 array 的相关内容。实现的效果如下:

方法三(使用 alignat* 环境)
Bernard 向我们提供了另外一种实现方式,使用 alignat* 环境,并且借助 empheq 宏包将右对齐的基准线画出来了,先看代码:%!TEX program = pdflatex \documentclass{article} \usepackage[paperwidth=130mm,paperheight=30mm]{geometry} \usepackage{mathpazo} \usepackage{amsmath} % new packages \usepackage[overload]{empheq} \usepackage{xcolor} \begin{document} \begin{alignat*}{2}[right =\color{red}\vrule width1pt] \text{first value} & = & 12 \\ \text{second value} & = & 1234 \\ \text{third one} & = & 1234567 \end{alignat*} \end{document}对齐的效果和前面的没什么区别,只是我们这里新增加了一根右对齐的基准线,以后如果用到,可以参考 empheq 宏包相关内容。

发表评论 取消回复