[Tex/LaTex] Adding/subtracting vertical space in »letter« class

lettersvertical alignment

Is there a way to move the to-address up (or, respectively, the date down) in the »letter« document class? With the to-address on the left and date on the right, I wish for the vertical alignment of the top row of the to-address to be the same as that of the date. Does anyone know a way of doing this?

Best Answer

Use the source, Luke. The letter.cls file is actually not that hard to read compared to article.cls :-)

If you redefine \opening you should be able to get what you want:

\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{2\parskip}%
%  {\raggedright \toname \\ \toaddress \par}%
  \begin{minipage}[t]{0.5\textwidth}%
    \toname \\ 
    \toaddress
  \end{minipage}\hfill\@date\par
  \vspace{2\parskip}%
  #1\par\nobreak}
\makeatother

The commented-out part is a switch based on whether a from-address is given. I'm assuming you aren't using a from-address since otherwise you would have specified where you wanted it.