我是乳胶的初学者。我有以下乳胶代码。代码工作正常,但我希望每个方程式的所有等式运算符都应对齐。怎么办?
\begin{enumerate}
\item[Commutative] $a+b = b+a$
\item[Associative] $a+(b+c)=(a+b)+c$
\item[Distributive] $a(b+c)=ab+ac$
\end{enumerate}
答案 0 :(得分:2)
我不确定在enumerate
环境中是否可行。一个简单的替代方法是使用tabular
环境。在下面的示例中,等式的左侧和右侧分别包含在两个单独的列中,并且在它们之间出现了=
。
\documentclass[12pt]{article}
\begin{document}
\begin{tabular}{l r@{$=$}l}
Commutative & $a+b$ & $b+a$ \\
Associative & $a+(b+c)$ & $(a+b)+c$ \\
Distributive & $a(b+c)$ & $ab+ac$ \\
\end{tabular}
\end{document}
答案 1 :(得分:1)
使用\eqmakebox[<tag>][<align>]
(来自eqparbox
),您可以将同一<tag>
下的所有元素放置在最大宽度的框中,并根据需要单独放置<align>
。下面,我有\eqmakebox[LHS][r]
以确保所有标记为LHS
的元素都是r
对齐的。结果是围绕=
对齐。
\documentclass{article}
\usepackage{eqparbox}
\begin{document}
\begin{enumerate}
\item[Commutative] $ a + b = b + a $
\item[Associative] $a + (b + c) = (a + b) + c$
\item[Distributive] $ a(b + c) = ab + ac $
\end{enumerate}
\begin{enumerate}
\item[Commutative] $ \eqmakebox[LHS][r]{$a + b$} = b + a $
\item[Associative] $\eqmakebox[LHS][r]{$a + (b + c)$} = (a + b) + c$
\item[Distributive] $ \eqmakebox[LHS][r]{$a(b + c)$} = ab + ac $
\end{enumerate}
\end{document}
或者,您可以自己测量最宽的元素:
\newlength{\widestelement}
\settowidth{\widestelement}{$a + (b + c)$}
然后使用
\begin{enumerate}
\item[Commutative] $ \makebox[\widestelement][r]{$a + b$} = b + a $
\item[Associative] $\makebox[\widestelement][r]{$a + (b + c)$} = (a + b) + c$
\item[Distributive] $ \makebox[\widestelement][r]{$a(b + c)$} = ab + ac $
\end{enumerate}