Есть ли простой способ получить оставшееся место на листе для выравнивания текста?

Есть ли простой способ получить оставшееся место на листе для выравнивания текста?

Есть ли простой способ получить оставшееся пространство на листе, чтобы выровнять текст? Что-то вроде того, [0.5/remainingVerticalSpace]чтобы выровнять текст на 50% оставшегося вертикального пространства, оставить его как белое пространство или что-то в этом роде.

Вот решениекак получить информацию об оставшемся свободном местеОднако, учитывая, как это делается, это кажется немного чрезмерным. Есть ли более простой способ или в латексе все делается именно так?

решение1

Вам не нужно использовать оставшееся пространство, просто добавьте одинаковые вертикальные интервалы до и после текста, который вы хотите выровнять по центру:

\documentclass{article}
\usepackage{lipsum}

\begin{document}
\lipsum[2-3]

\vspace*{\fill}

This is at 50\% of the remaining space.

\vspace*{\fill}

\clearpage

\end{document}

Макрос \vspace*гарантирует, что вертикальный интервал будет вставлен, даже если он находится в начале или конце страницы.

Чтобы обобщить это, вы можете использовать \stretchмакрос, чтобы разделить оставшееся пространство на неравные части. Например, \vspace*{\stretch{2}}какой-то текст \vspace*{\stretch{1}}сделает первый пробел в два раза длиннее второго.

Связанный контент