请考虑以下示例:
\documentclass{article}
\usepackage{amsmath,amssymb}
\begin{document}
\begin{align}
\prod a+bm && \text{is a square in} && \mathbb{R}\\
\prod a+b\theta && \text{is a square in} && \mathbb{R}[\theta]
\end{align}
\begin{eqnarray}
\prod a+bm & \text{is a square in} & \mathbb{R}\\
\prod a+b\theta & \text{is a square in} & \mathbb{R}[\theta]
\end{eqnarray}
\end{document}
使用的白色空间量eqnarray
正是我想要的,而 则align
添加了(在我看来)异常大量的空白。所以我可以坚持使用eqnarray
,但我读到我应该始终(在任何情况下)避免使用它。
所以我的问题是,如何使用使我的方程看起来美观align
?
答案1
您可以使用alignat
类似于的环境align
。
\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
\usepackage{mathtools}
\usepackage{amssymb}
\begin{document}
\begin{alignat}{2}
\prod a+bm &\quad \text{is a square in} &&\quad\mathbb{R}\\
\prod a+b\theta &\quad \text{is a square in} &&\quad\mathbb{R}[\theta]
\end{alignat}
\end{document}
在里面 ”数学模式« 文档中您可以找到更多有关高级数学排版的内容。
更新:
按照要求使用相同的示例,但所有列均左对齐。
\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
\usepackage{mathtools}
\usepackage{amssymb}
\begin{document}
\begin{alignat}{3}
&\prod a+bm &&\quad \text{is a square in} &&\quad\mathbb{R}\\
&\prod a+b\theta &&\quad \text{is a square in} &&\quad\mathbb{R}[\theta]
\end{alignat}
\end{document}
答案2
\documentclass{article}
\usepackage{amsmath, amssymb}
\begin{document}
\begin{align}
\prod a+bm &\phantom{=} \text{is a square in}\quad \mathbb{R}\\
\prod a+b\theta &\phantom{=} \text{is a square in}\quad \mathbb{R}[\theta]
\end{align}
\end{document}
按要求向左冲洗:
\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
\makeatletter
\newenvironment{lflalign}{%
\def\align@preamble{%
&\strut@
\setboxz@h{\@lign$\m@th\displaystyle{####}$}%
\ifmeasuring@\savefieldlength@\fi
\set@field
\hfil
\tabskip\z@skip
&\setboxz@h{\@lign$\m@th\displaystyle{{}####}$}%
\ifmeasuring@\savefieldlength@\fi
\set@field
\hfil
\tabskip\alignsep@
}
\flalign}
{\endflalign}
\makeatother
\begin{document}
\begin{align}
\prod a+bm & \phantom{=}\text{is a square in}\quad \mathbb{R}\\
\prod a+b\theta & \phantom{=}\text{is a square in}\quad \mathbb{R}[\theta]
\end{align}
\begin{lflalign}
\prod a+bm & \phantom{=}\text{is a square in}\quad \mathbb{R}\\
\prod a+b\theta & \phantom{=}\text{is a square in}\quad \mathbb{R}[\theta]
\end{lflalign}
\end{document}