我需要将右侧地址以不同的方式放置在 .tex 文件中,但我不知道该怎么做。我希望右侧地址的最后一行与左侧地址的第一行位于同一行。这怎么可能呢?
这是我的片段代码:
% !TeX encoding = utf8
\documentclass[a4paper]{letter}
\usepackage[lmargin=20mm, rmargin=20mm]{geometry}
\begin{document}
\begin{letter}{
Nom\\
Adresse 1\\
Adresse 2\\
Ville\\
Pays\\
Code Postal\\
\vspace{0.5cm}
Date}
\address{
Nom\\
Adresse 1\\
Adresse 2\\
Ville\\
Pays\\
Code Postal\\}
\date{}
\opening{Opening}
\closing{\mbox{}}
\end{letter}
\end{document}
当我编译它时,我有两个不同的地址块(一个在左边,一个在右边),但我想通过调整它的位置来拉下右边的地址块。
有什么想法我该怎么做吗?
谢谢。
答案1
没有用于改变垂直空间的参数,所以唯一的方法是重新定义命令\opening
;要采取行动的地方以 为标记<-----
。
\documentclass[a4paper]{letter}
\usepackage[lmargin=20mm, rmargin=20mm]{geometry}
\usepackage{lipsum}
\makeatletter
\renewcommand*{\opening}[1]{\ifx\@empty\fromaddress
\thispagestyle{firstpage}%
{\raggedleft\@date\par}%
\else % home address
\thispagestyle{empty}%
{\raggedleft\begin{tabular}{l@{}}\ignorespaces
\fromaddress \\*[2\parskip]%
\@date \end{tabular}\par}%
\fi
\vspace{-5\parskip}% <------- was 2\parskip
{\raggedright \toname \\ \toaddress \par}%
\vspace{2\parskip}%
#1\par\nobreak}
\makeatother
% the following definitions are just for showing the spaces
\protected\def\rightrule{\leavevmode\rlap{\vrule width \textwidth height 0.1pt depth 0.1pt}}
\protected\def\leftrule{\leavevmode\llap{\vrule width \textwidth height 0.1pt depth 0.1pt}}
\begin{document}
\begin{letter}{
\rightrule Nom\\
Adresse 1\\
Adresse 2\\
Ville\\
Pays\\
Code Postal\\
\vspace{0.5cm}
Date}
\address{
Nom\\
Adresse 1\\
Adresse 2\\
Ville\\
Pays\\
\leftrule Code Postal\\}
\date{}
\opening{Opening}
\lipsum
\closing{\mbox{}}
\end{letter}
\end{document}
这两个命令\rightrule
仅\leftrule
用于显示相对位置,对于正常工作而言并非必需。
您可以尝试scrlettr2
或lettre
。