%20%D1%81%D1%80%D0%B5%D0%B4%D1%8B%20%D0%BD%D0%B0%20%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B5.png)
Рассмотрим следующий пример:
\documentclass[
12pt,
landscape
]{article}
\usepackage[
a6paper,
margin = 0cm
]{geometry}
\usepackage{lmodern}
\newenvironment{horse}
{
\topskip0pt
\vspace*{\fill}
\begin{center}
\fontsize{50}{56}\selectfont
}
{
\end{center}
\vspace*{\fill}
%
}
\pagestyle{empty}
\begin{document}
\begin{horse}
Alle lande\\[0.5ex] og\\[0.5ex] deres hovedst{\ae}der
\end{horse}
\end{document}
Я хотел бы, чтобы содержимое окружения horse
было размещено вертикально по центру страницы. Как видно, если код скомпилирован, этого не происходит; как это исправить?
P.S. Я просто "украл" код изhttps://tex.stackexchange.com/a/2327/15874и немного его модифицировал.
решение1
Немного упрощенный пример ( \centering
вместо center
комментариев окружения и концов строк):
\documentclass[
12pt,
landscape
]{article}
\usepackage[
a6paper,
margin = 0cm
]{geometry}
\usepackage{lmodern}
\newenvironment{horse}{%
\setlength{\topskip}{0pt}%
\centering
\vspace*{\fill}%
% \nointerlineskip
\fontsize{50}{56}\selectfont
% \sbox0{Alle lande}%
% \showthe\ht0
}{%
\par
\vspace{\fill}%
% \setlength{\showboxdepth}{\maxdimen}%
% \setlength{\showboxbreadth}{\maxdimen}%
% \tracingonline=1 %
% \showlists
}
\pagestyle{empty}
\begin{document}
\begin{horse}
Alle lande\\[0.5ex] og\\[0.5ex] deres hovedst{\ae}der
\end{horse}
\end{document}
Включение четырех линий с \showlists
раскрывающимися данными:
### current page:
\write-{}
\glue(\topskip) 0.0
\rule(0.0+0.0)x*
\penalty 10000
\glue 0.0 plus 1.0fill
\glue 0.0
\glue(\parskip) 0.0 plus 1.0
\glue(\baselineskip) 21.83911
\hbox(34.16089+0.0)x421.10078, glue set 109.61919fil
.\glue(\leftskip) 0.0 plus 1.0fil
.\hbox(0.0+0.0)x0.0
.\OT1/lmr/m/n/50 A
.\OT1/lmr/m/n/50 l
.\OT1/lmr/m/n/50 l
.\OT1/lmr/m/n/50 e
Все хорошо, за исключением большого вклада \baselineskip
. Высота первой строки 34.16089pt, но межстрочный интервал 56pt. Разница добавляется поверх первой строки:
\glue(\baselineskip) 21.83911
Это можно отключить с помощью \nointerlineskip
. После включения этого в коде выше результат будет следующим: