
align
(1) と(2)の間の垂直スペースに問題がありますalignat
。このスペースを (1) 以前と同じ垂直スペースにするにはどうすればよいでしょうか。垂直スペースを完全に消去するにはどうすればよいでしょうか。 と を使用してこれをグローバルに実行できることはわかっていますabovedisplayskip
が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:
私はそれをいじらないでしょう。2つの環境の間に置けば、問題なく見えます:
\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
2 つの別々の表示環境がテキストで区切られずに次々に設定されている場合、それらの間の間隔は\belowdisplayskip
とそれに続く の 合計になります\abovedisplayskip
。どちらもかなり大きな伸縮性があるため、通常、それらの間の垂直方向の間隔は必要以上に大きくなります。
gather
やなどの補助的な表示環境を使用して、個別の部分を構造化し、それらを単一の環境aligned
に統合する方がよいでしょうalignedat
。たとえば、
\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}
2 つの部分の間に少し余分な垂直方向のスペース (ここ[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} 値を調整できます。aligns または alignats の間に配置します。