我只是想将信件的日期移动到页面的左上角。
最小工作示例(MWE):
\documentclass[english]{scrlttr2}
\usepackage{babel}
\newkomavar{fromplace}
\setkomavar{fromname}{Alice Alison}
\setkomavar{fromaddress}{Fairytail-Lane 1}
\setkomavar{fromplace}{12345 Cologne}
\setkomavar{firsthead}{%
\parbox{\textwidth}{%
\raggedleft
{\usekomafont{fromname}\strut\ignorespaces{\usekomavar{fromname}\\\usekomavar{fromaddress}\\\usekomavar{fromplace}}}\\
}
}
% \KOMAoptions{refline=dateleft} <--- To move the date to the left edge
\begin{document}
\begin{letter}{Bob Bobson\\40 Michigan Street\\US-1234 Oklahoma}
\opening{Hello Bob,}
\closing{Best wishes}
\end{letter}
\end{document}
结果截图:
问题说明:
我想将日期移至页面的左上角。该怎么做?
解决方法:
和\KOMAoptions{refline=dateleft}
我可以完美地将日期与左边缘对齐,但如何将其移至顶部?类似方法\vspace{2\baselineskip}
不起作用,因为它只会增加与正文主体的垂直距离(同时将文本向下移动)。
在最佳情况下,日期应与(Alice Alison)fromname
中的日期处于相同的垂直位置。firsthead
答案1
您可以将日期设置为firsthead
区块的一部分,方法是将其添加到名称前面,即\today\usekomavar{fromname}
。为了将日期与页面左侧对齐,将名称与页面右侧对齐,您可以\hfill
在两者之间放置(水平填充)。
然后您需要使用 关闭正常日期refline=nodate
。
如果您认为收件人和开头之间的空间太大,您可以在地址末尾留出负空间,从而稍微作弊。
梅威瑟:
\documentclass[english]{scrlttr2}
\usepackage{babel}
\newkomavar{fromplace}
\setkomavar{fromname}{Alice Alison}
\setkomavar{fromaddress}{Fairytail-Lane 1}
\setkomavar{fromplace}{12345 Cologne}
\KOMAoptions{refline=nodate}
\setkomavar{firsthead}{%
\parbox{\textwidth}{%
\raggedleft
{\usekomafont{fromname}\strut\ignorespaces{\today\hfill\usekomavar{fromname}\\\usekomavar{fromaddress}\\\usekomavar{fromplace}}}\\
}
}
\begin{document}
\begin{letter}{Bob Bobson\\40 Michigan Street\\US-1234 Oklahoma\vspace{-2cm}}
\opening{Hello Bob,}
\closing{Best wishes}
\end{letter}
\end{document}
结果: