align과 alignat 환경 사이의 수직 공간

align과 alignat 환경 사이의 수직 공간

align(1)과 (2) 사이의 수직 공간에 문제가 있습니다 alignat. 이 공간을 이전(1)과 동일한 수직 공간으로 어떻게 줄일 수 있나요? 수직 공간을 어떻게 완전히 지울 수 있나요? 나는 abovedisplayskipand 를 사용하여 이 작업을 전역적으로 수행할 수 있다는 것을 알고 있지만 belowdisplayskip이러한 환경에서는 단순히 작동하지 않으며 전역적으로 아무것도 변경하고 싶지 않습니다.

MWE는 다음과 같습니다.

\documentclass[a4paper, 12pt, headsepline]{scrreprt}
\usepackage[onehalfspacing]{setspace}
\usepackage{amsmath, amssymb, mathtools}
\usepackage{mathptmx}
\usepackage[a4paper]{geometry}
\geometry{left=2cm,right=5cm,top=2cm,bottom=2cm}


\begin{document}
Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text
\begin{align}
X_{t+1} &=  \frac{Z_{t+1}+X_{t+1}}{Y_M}  \\
N_{t}  &=  \frac{X_{t+1}+X_{t+1}}{T_{t+1}} \notag 
\end{align} 
% Reduce the vertical space here. Ideally to the same distance as from align to the above text, or whatever there is (eg other environments?)
\begin{alignat}{3}
&\text{as:} \quad & \gamma_{xyz} = \frac{a} {b} \qquad & \text{and}  & \qquad      \gamma_{zhk} = \frac{b}{a} \notag
\end{alignat}
Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text Text text
\end{document}

보시다시피 align와 사이에 바람직하지 않은 너무 큰 수직 공간이 있습니다 alignat.

답변1

나는 그것을 망치지 않을 것입니다. as:두 환경 사이에 배치하면 괜찮아 보입니다 .

\documentclass{scrreprt}

\usepackage{amsmath}

\begin{document}

\noindent Text before.
\begin{align}
  X_{t+1} &= \frac{Z_{t+1} + X_{t+1}}{Y_{M}}\\
  N_{t}   &= \frac{X_{t+1} + X_{t+1}}{T_{t+1}}\notag
\end{align}
as
\begin{equation*}
  \gamma_{xyz} = \frac{a}{b}
  \qquad \text{and} \qquad
  \gamma_{zhk} = \frac{b}{a}
\end{equation*}
Text after.

\end{document}

산출

답변2

두 개의 별도 표시 환경을 텍스트로 구분하지 않고 차례로 설정할 때 그 사이의 간격은 \belowdisplayskip과 의 합이 됩니다 \abovedisplayskip. 둘 다 꽤 많은 양의 신축성을 갖고 있기 때문에 일반적으로 원하는 것보다 둘 사이의 수직 공간이 훨씬 더 커집니다.

별도의 부분을 구성하는 등 gather의 보조 디스플레이 환경을 사용하여 단일 환경으로 결합하는 것이 좋습니다 . 예를 들어,alignedalignedat

\begin{gather}
 \begin{aligned}
  X_{t+1} &=  \frac{Z_{t+1}+X_{t+1}}{Y_M}  \\
  N_{t}  &=  \frac{X_{t+1}+X_{t+1}}{T_{t+1}}
 \end{aligned} \\[6pt]
 \begin{alignedat}{3}
  &\text{as:} \quad & \gamma_{xyz} = \frac{a} {b} \qquad & \text{and}
  & \qquad      \gamma_{zhk} = \frac{b}{a} \notag
 \end{alignedat}
\end{gather}

두 부분(여기) 사이에 약간의 수직 공간을 [6pt]추가할 수 있습니다.

이 경우에는 사용할 필요조차 없습니다 alignedat. 간단한 수학 코딩만으로 충분합니다.

\text{as:\quad} \gamma_{xyz} = \frac{a}{b} \text{\qquad and\qquad}
                \gamma_{zhk} = \frac{b}{a}

\intertext해당 줄을 소개하는 초기 텍스트에 사용하는 것이 더 좋습니다 .

\intertext{as:}
\gamma_{xyz} = \frac{a}{b} \text{\qquad and\qquad} \gamma_{zhk} = \frac{b}{a}

모두 둘러싸는 gather. 사용되는 경우 \intertext부분 사이에 선택적 공백을 추가하지 마십시오. \intertext그 일을 처리할 것입니다.

답변3

나는 또한 (하위 방정식에서도) 동일한 문제를 겪었고 다음을 사용했습니다.

\setlength{\abovedisplayskip}{1pt}
\setlength{\belowdisplayskip}{1pt}

다른 어떤 것도 원활하게 작동하는 것 같지 않았습니다. (이것은 완벽하지는 않지만 실제로 꽤 잘 작동하는 것으로 내가 찾은 유일한 것입니다). 보유한 레이아웃과 보기에 따라 {1pt} 값을 조정할 수 있습니다. 그냥 align이나 alignat 사이에 넣으세요.

관련 정보