[Tex/LaTex] Place the sender address on the left side in moderncv cover letter

horizontal alignmentmoderncv

In Germany it's common to place both the sender and recipient on the left side of a letter and the date on the right side.

Is there a possibility that I can change the cover letter layout accordingly?

\recipient{Stack Overflow GmbH}{Stack Überflut Straße-71234-Codehausen}

\date{04 Oktober 2013}
\opening{Sehr geehrte Frau XYZ,}
\closing{Mit freundlichen Grüßen}
\makelettertitle

bla bla bla blu blu blu

\makeletterclosing

So that my address appears over the recipient address on the left side?

Best Answer

Under the classic style, moderncv sets the letter opening in a specific way. Consider the following visual:

enter image description here

The sender address (top right) is contained in a minipage that is flush-right, set in \raggedleft and spans 50% of the \textwidth. This is followed by a 1em vertical gap, and then the recipient address (bottom left), set in a minipage that is flush-left, set in \raggedright and spans 50% of the \textwidth. Finally, an \hfill pushes the "date box" flush-right.

Depending on where you want these boxes to be located, they're pretty easy to move around and/or reformat in terms of their layout. Here's one example:

enter image description here

which stems from adding

\usepackage{etoolbox}% http://ctan.org/pkg/etoolbox
% \patchcmd{<cmd>}{<search>}{<replace>}{<success>}{<failure>}
\patchcmd{\makelettertitle}{\hfill}{}{}{}% Sender address flush-left
\patchcmd{\makelettertitle}{\raggedleft}{\raggedright}{}{}% Sender address \raggedright

to your document preamble. The above adjustment is dependent on the classic style as it directly patches \makelettertitle as its defined in moderncvstyleclassic.sty. Other options also exist, depending on where you want the date to be placed (vertically or otherwise).