對準

對準

考慮以下程式碼及其結果:

\documentclass{article}
\usepackage{amsmath}

\begin{document}

\begin{align}
 A >& B > C &> D \\
 A >& E &>D
\end{align}

\begin{eqnarray}
 A >& B > C &> D \\
 A >& E &> D
\end{eqnarray}

\end{document}

在此輸入影像描述

我希望結果是第二個而不是第一個。但是,我想在對齊環境中實現這一點。

  1. 我可以這樣做嗎?
  2. & 到底是做什麼的?

編輯:感謝迄今為止的幫助。我喜歡(並贊成)所有提議的選項,但如果我希望兩行都編號怎麼辦?所以代替align*, align.

答案1

alignat 與的變體,模仿指令eqmakebox的構造: \documentclass{article}\vdotswithinmathtools

\usepackage{amsmath}
\usepackage{eqparbox}
\begin{document}

\begin{alignat}{3}
 A & > B & & \eqmakebox[A]{$ {}>{} $} C &&> D \\
 A & > & & \eqmakebox[A]{$ E $}& & >D
\end{alignat}

\end{document} 

在此輸入影像描述

關於 & 符號用法的解釋

align和之間的唯一差異alignat是對齊方程式列之間的間距由使用者根據環境情況選擇alignat

為了n列,你必須使用2n – 1 &:從第二個開始,每一個都&標記一個新列的開始,下面&標記其列中的對齊點。

在這裡,我設定了3列,wherence 5&,列之間沒有間距。

答案2

使用數組可以更好地實現這一點:

\documentclass{article}
\usepackage{array}

\begin{document}

\[
\setlength{\arraycolsep}{0pt}
\renewcommand{\arraystretch}{1.5}
\begin{array}{c *{3}{ >{{}}c<{{}} c } }
A &> & B &> & C &> & D \\
A &> & \multicolumn{3}{c}{E} &> & D
\end{array}
\]

\end{document}

在此輸入影像描述

七個對齊點,偶數列為關係符號,因此用空子公式包圍以產生正確的空間。列間填充(局部)設定為零。

答案3

您可以使用alignat而不是align然後使用一些低階命令來獲得居中,或者您可以使用該eqnarray套件。

對準

樣本輸出

\documentclass{article}

\usepackage{amsmath}

\makeatletter
\newcommand{\ccol}[1]{\omit\column@plus\hfill$\m@th\displaystyle #1$\hfill\span}
\makeatother

\begin{document}

\begin{alignat}{2}
 A >{}& B > C &&> D \\
 A >{}&\ccol{E}&>D
\end{alignat}

\end{document}

方程式組

第二個樣品

\documentclass{article}

\usepackage{eqnarray}

\begin{document}

\arraycolsep 0pt
\begin{equationarray}{rcl}
 A >{}& B > C &{}> D \\
 A >{}&E&{}>D
\end{equationarray}

\end{document}

答案4

只要您不需要對各個方程式進行編號,這裡就帶有 TABstack。

\documentclass[a4paper]{article}
\usepackage{tabstackengine}
\TABstackMath
\begin{document}
\[
\setstacktabulargap{0pt}
\TABbinary
\tabularCenterstack{rcl}{
 A >& B > C &> D \\
 A >& E &> D
}
\]
\end{document}

在此輸入影像描述

相關內容