如何在 amsmath 对齐部分内添加换行符?

如何在 amsmath 对齐部分内添加换行符?

我正在尝试在 LaTeX 中复制以下图像: 最佳 LaTeX 渲染图像

到目前为止,我已经成功地将所有内容对齐到正确的位置,但在其中一个“部分”内添加换行符时仍然遇到问题。

\begin{align*}
 & \text{(P4)} \quad \text{(Commutative law for addition)}         \;   & a & +b=b+a             \\
 & \text{(P5)} \quad \text{(Associative law for multiplication)}   \;   & a & *(b*c)=(a*b)*c  
\end{align*}

得出的结果是: 当前 LaTeX 图像

我尝试在“乘法”中间添加换行符命令,但它搞乱了所有格式。有没有办法在对齐部分内完成此操作,或者使用表格是获得此结果的唯一方法?

答案1

您可以将解释 P5 的材料放置在\parbox其最大宽度由解释 P4 的材料的宽度给定的宏中。在\mybox下面定义的宏中,允许的宽度是通过执行\widthof宏的第一个参数获得的。

在此处输入图片描述

*哦,我还会用 替换表示乘法的实例\cdot

\documentclass{article}
\usepackage{amsmath}  % for 'align*' env.
\usepackage{calc}     % for '\widthof' macro
\usepackage{ragged2e} % for '\RaggedRight' macro
\newcommand\mybox[2]{\parbox[t]{\widthof{\upshape #1}}{\upshape\RaggedRight #2}}

\begin{document}
\begin{align*}
 & \textup{(P4)} \quad 
   \textup{(Commutative law for addition)} 
   && a +b=b+a             \\
 & \textup{(P5)} \quad 
   \mybox{(Commutative law for addition)}{(Associative law for multiplication)}   
   && a \cdot (b\cdot c)=(a\cdot b)\cdot c  
\end{align*}
\end{document}

相关内容