
У меня проблема с вертикальным пространством между align
(1) и alignat
(2). Как мне уменьшить это пространство до того же вертикального пространства, что и до (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:
между двумя средами:
\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
среду, используя вспомогательные среды отображения, такие как 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}
[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.