나는 alignat
실제로 동일한 것을 설명하지만 수량은 다른 일련의 방정식을 정렬하기 위해 환경을 사용하고 있습니다. 그래서 공통적인 부분은 건너뛰고 로 대체하기로 했는데 \cdots
중앙에 정렬이 안되는 것 같습니다.
점들을 중앙에 맞추는 아이디어가 있나요?
샘플 코드는 다음과 같습니다
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{alignat*}{4}
&\sigma(E) &=& \vec{\sigma(E)} = \big\{\sigma(E_1), \sigma(E_2), \cdots, \sigma(E_n)\big\} &=& \big\{\sigma_1, \sigma_2, \cdots, \sigma_n\big\}&\\
&C(E) &=&{\cdots}&=& \big\{C_1, C_2, \cdots, C_n\big\}&\\
\end{alignat*}
\end{document}
답변1
\omit
현재 형식을 벗어나기 위해 낮은 수준의 TeX을 만들 수 있습니다 .
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{alignat*}{2}
\sigma(E) &={}& \vec{\sigma(E)}
= \bigl\{\sigma(E_1), \sigma(E_2), \dots, \sigma(E_n)\bigr\}
&= \bigl\{\sigma_1, \sigma_2, \dots, \sigma_n\bigr\}\\
C(E) &={}&\omit\hfill$\cdots$\hfill
&= \bigl\{C_1, C_2, \dots, C_n\bigr\}
\end{alignat*}
\end{document}
{}
참고 또한 등호에서 올바른 간격을 얻고 \bigl...\bigr
대신 사용하기 위해 그룹을 추가했습니다 \big
. 또한 쉼표 사이에는 \dots
(또는 ) 만 사용해야 합니다 \dotsc
.
여기서 앰퍼샌드 사용에 주의하세요 &
. 에서 alignat
정렬은 암시적으로 rlrl...
첫 번째 그룹은 오른쪽 정렬, 두 번째 그룹은 왼쪽 정렬 등으로 수행 됩니다.
답변2
패키지 가 포함된 솔루션입니다 eqparbox
. 정렬 열은 2개면 충분합니다.
\documentclass{article}
\usepackage{amsmath}
\usepackage{eqparbox}
\newcommand{\eqmathbox}[2][M]{\eqmakebox[#1]{$\displaystyle#2$}}
\begin{document}
\begin{alignat*}{2}
\sigma(E) &= {}& \eqmathbox{\vec{\sigma(E)} = \big\{\sigma(E_1), \sigma(E_2), \cdots, \sigma(E_n)\big\}} &= \big\{\sigma_1, \sigma_2, \cdots, \sigma_n\big\}\\
C(E) &= {}& \eqmathbox{\cdots\cdots}&= \big\{C_1, C_2, \cdots, C_n\big\}\\
\end{alignat*}
\end{document}
답변3
array
방정식 정렬을 위해 만들어진 것은 아니지만 이 경우 몇 가지 트릭을 사용하면( 첫 번째/마지막 등호 뒤/앞에 올바른 간격을 원하는 경우) 편리할 수 있습니다 @{}
.{}
\documentclass{article}
\usepackage{amsmath}
\usepackage{array}
\begin{document}
\[
\begin{array}{r@{}c@{}l}
\sigma(E) ={} & \vec{\sigma(E)} = \big\{\sigma(E_1), \sigma(E_2), \cdots, \sigma(E_n)\big\} & {}= \big\{\sigma_1, \sigma_2, \cdots, \sigma_n\big\}\\
C(E) ={} &\cdots& {}= \big\{C_1, C_2, \cdots, C_n\big\}\\
\end{array}
\]
\end{document}