ЗаКак избежать пустого места в конце страницы при использовании scrlttr2?Я пробовал добавлять предложенные опции в scrlttr2
, но, по крайней мере, в следующем примере это не работает. Я получаю большой блок пустого пространства внизу первой страницы. Кто-нибудь знает, почему?
\documentclass[12pt,headheight=30pt,headinclude,firstfoot=false,
enlargefirstpage=true,foldmarks=false,foldmarks=blmtP,
fromalign=center,fromphone,fromemail,version=last,
backaddress=false, subject=titled]{scrlttr2}
\usepackage{scrpage2}
\pagestyle{scrheadings}
\rohead{\jobname.tex\hspace{0.5cm}\today}
\usepackage[T1]{fontenc}
\usepackage{fouriernc}
\begin{document}
\setkomavar{fromname}{Xxxxxxxxxx Xx Xxxxx}
\setkomavar{fromaddress}{Xxxxx Xxxxxx xxx Xxxxx\\ xx Xxxxxxxx Xxxxx Xxxx\\ Xxxxxx xxxxxx}
\setkomavar{fromphone}{xxxxxxxx}
\setkomavar{fromemail}{xxxxxxxxxxxxxxxxxx}
\setkomavar{signature}{(\usekomavar{fromname})}
\setkomavar{subject}{xxxxx}
\setkomavar{date}{\today}
\setkomavar{firsthead}{%
\parbox{\linewidth}{\centering
\textbf{\jobname.tex}\\
{\fontfamily{pzc}\selectfont
\hspace{\textwidth}
\usekomavar{fromname}\\
\usekomavar{fromaddress}\\
\usekomavar*{phoneseparator}\usekomavar{phoneseparator}\usekomavar{fromphone}\\
\usekomavar*{emailseparator}\usekomavar{emailseparator}\usekomavar{fromemail}
}
}%
}
\makeatletter
\@addtoplength{firstheadvpos}{30pt}
\@addtoplength{toaddrvpos}{40pt}
\@addtoplength{sigbeforevskip}{20pt}
\@setplength{sigindent}{0.5\linewidth}
\makeatother
\def\today{30th April, 2015}
\begin{letter}{
Xxx Xxxxxx Xxxx Xx Xx Xxxxxx\\
Xxxxx Xxxxxx\\
Xxxxxxxx Xxxxx Xxxxxxx\\
Xxx Xxxx Xxxxxxxxx Xxxxx\\
Xxxxxx Xxxxxx xxx xxx\\
}
\opening{xxxxxxxxx,}
X xxxxxxxx xxxxxxx xxx xxxxxx Xxxxxxxxx xx Xxxxxxxx Xxxxx Xxxxxxx X
xxx xxxxxxxx xx Xxx Xxxxx Xxxxxx xxxx xxx Xxxxxxxxx xxxx xx xxxxxx xxx
xx xxxx xx xxxxxxx xxx xxxx xxx xxxx xxx xxxx xxx xxxx xxxxxx Xxxxxxxx
xx xxxxxxx xxxx xxxxx xxxxx xx xxxx
Xxxxxxxxxxxxx X xxxxxxxx xxxx xxx xxxxxxxx Xxxxxxxxxx xxx xxxxxx
xxxxxxxxxx xxxxxxxxxx Xxxxxx X xxx xxxxxxxx xxxx xxx xxxx xxx xxxx xxx
xxxx xx xxxxxx X xxx xxxx xxxxxxxx xxxx x xxxxxxxx xxx xxxx xxxxx xx x
Xxx Xxxxx Xxxxxxxx xxx xxxxxxxxxxxxxx xx xxx Xxxxxxxxxxx Xxxxxxxx xx
xxxxxxxxxxxx xxx xxxxx xxxxx xx xxxx
Xxxx Xxxxxxxxxx xxx xxxxx xxx xxxxxxxxxx xxxxxxxx xx xxx xxxxxxxxxx
xxx xxxxxxxx xx xx xx xxxx xxx xxxxxxxxx xxxxx xx xxxx xxxxxxx X xxxx
xx xxx xx xxxxxxxx xxx xxxxxxx xxxx xxxxxxxx xxxx xxxxxx
Xxxxxxxxxx xxxxxx xxxxxx xx xx xxx xxxxxxx xxxxxx xx xxx
xxxxxxxxxxxxxxxxxx xx xxx Xxxxxxxxx xxx xxx Xxxxxxxxxxx xxxxxxxxxx xxx
xxx xxxxxxxxxx xxx xxx xxxx xxxxxxxxx xx xxxxxxxxxx xxxxxxxx xx xxx
xxxxxxxxx xxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxx xxxxxx xxxx xx xxxxxx xx
xxx xxxxxxxxxx xxxx Xxx Xxxxx Xxxxxxxx xxxx xxxxxxx xx xxx Xxxxxxxxxx
xxxxxxxxxxxxx X xxxxx xxxx xx xxxxx xx xxxx xxxx xxx xxxxx Xxxxxxxx
xxx xxxx xxxxxxxxxxx xxxxx xxxxx xxxxxxxx
\closing{Yours Sincerely,\\ Xxx Xxxx Xxxxxxx Xxxxx}
\cc{
Xxx Xx Xxxxxxx Xx Xxxxxxxxx\\
Xxxxxxxx Xxxxx xXxxxxxx\\
Xxxxxxxx Xxxxx Xxxxxxx\\
Xxx Xxxx Xxxxxxxxx Xxxxx\\
Xxxxxx Xxxxxx xxx xxx}
\end{letter}
\end{document}
решение1
Давайте добавимshowframe
упаковкав преамбулу и посмотрите, как будет выглядеть вывод:
Очевидно, что места достаточно, так как текстовый блок имеет большую пустую секцию внизу первой страницы. Однако, глядя на содержимое на странице 2, мы видим одно предложение, за которым следует «закрытие» (указанное \closing
).
Вопросы \closing
, чтобы \nobreak
избежать разрыва закрытия с текстом письма, предшествующим ему. И, чтобы избежать любых вдов, последняя строка последнего абзаца переносится с закрытием на следующую страницу, так как само закрытие не поместится в оставшееся место на странице 1.
Как от этого избавиться? Это действительно зависит от того, на что вы готовы пойти... Удаление \nobreak
все равно оставит большой зазор, но этого можно добиться с помощьюetoolbox
патч. Другие варианты включают корректировку полей, перефразирование или избеганиеscrlttr2
в целом, article
это дает вам свободу менять вещи в соответствии с вашими потребностями.
Лучшим решением, которое я нашел, кажется, было немного растянуть текст. Например, добавить
\usepackage{setspace}
\setstretch{1.25}
к вашей преамбуле раскрывается
Конечно, игра с «идеальным» фактором интервала может помочь. Я бы также предложил сохранять интервалы постоянными. То есть не используйте один интервал здесь, другой там, а третий где-то еще.