如何减少班级页面顶部的空白letter
?我添加了一些文本作为信头,所有内容都对齐了...但起始位置太低了!有人能建议如何让我的第一行文本与顶部对齐吗?
\documentclass{letter}
\begin{document}
\thispagestyle{empty}
\signature{Nathan S. Lachenmyer}
\longindentation=0pt
\let\raggedleft\raggedright
\vfill
\begin{letter}{
Senior Staff Recruiter \\
XYZ Corporation \\
Rt. 56 \\
Anytown, New Jersey 05867}
%This is my header
\centerline{\huge \bf \sc Nathan S. Lachenmyer}
\begin{center}
\line(1,0){450}
\end{center}
%letter begins here
\opening{Dear Person:}
Letter goes here
\closing{Sincerely Yours,}
\end{letter}
\end{document}
答案1
这里最简单的方法是插入垂直重新调整,无需对页面尺寸进行修改,\vspace*{<len>}
其中<len>
是某个负值。例如,在下面的 MWE 中,我曾经\vspace*{-10\baselineskip}
垂直“后退” 10 行:
\documentclass{letter}
\usepackage{showframe}% http://ctan.org/pkg/showframe
\begin{document}
\thispagestyle{empty}
\signature{Nathan S. Lachenmyer}
\longindentation=0pt
\let\raggedleft\raggedright
\begin{letter}{%
Senior Staff Recruiter \\
XYZ Corporation \\
Rt. 56 \\
Anytown, New Jersey 05867}
\vspace*{-10\baselineskip}% Correct for vertical displacement
%This is my header
\centerline{\huge \bf \sc Nathan S. Lachenmyer} \par
%\begin{center}
%\line(1,0){450}
%\end{center}
\hrulefill
%letter begins here
\opening{Dear Person:}
Letter goes here
\closing{Sincerely Yours,}
\end{letter}
\end{document}
我已经添加了showframe
包裹使用文档类突出显示页面/类型块尺寸设置letter
。如果您希望更改这些以占用更多的页面空间,请使用geometry
包裹。
附言:不要使用\line
某些固定测量值来绘制水平线,而要使用\hrulefill
,这样可以填充整个文本块而不会引起过多的\hbox
警告。
答案2
插入负空间将会出现问题,因为所需的空间量取决于信件的长度。letter
当信件的长度只有 1 页长时,该类会将文本居中放在第一页。请参阅 letter.cls 中的第 414 行
\def\@texttop{\ifnum\c@page=1\vskip \z@ plus.00006fil\relax\fi}
您可以通过添加来获得顶部对齐的字母
\makeatletter
\def\@texttop{}
\makeatother
到您的 MWE。
您还应该考虑是否要将“页眉”信息添加到的实际页眉中ps@firstpage
(您可以使用 执行此操作fancyhdr
)。然后,您可以获得垂直居中的 1 页信件,页眉位于顶部。
答案3
我找到了一个简单的方法。只需使用 来\vspace{-xxpt}
减少信件开头的空间。此命令应插入显示大间隙的文本行之前。例如。我的信件中我的联系信息和日期之间有很大的间隙。因此,在我的联系信息之后,我插入了命令\vspace{-40pt}
。您可能需要调整文本高度(\textheight{10 in}
如果信件长度为两行以适合一页。它就像一个魔法一样有效 :)。