Most sites point to the options below for formal letters:
- akletter for German business letters;
- newlfm for US-centric letters, faxes and memos;
- dinbrief for German letters;
- brief in the Dutch ntgclass bundle;
- scrlttr2 in the KOMA-Script bundle.
Here is my .tex code for a formal letter or an invoice based on scrlttr2 (part of KOMA-script). I found the package flexible enough for my needs.
\documentclass[brief]{scrlttr2}
\setkomavar{yourref}{Microspino \\Address XX }
\setkomavar{yourmail}{mail@microspino.com}
\setkomavar{myref}{Your Refn. XXX}
\setkomavar{customer}{Client Name \\ Comapny name}
\setkomavar{invoice}{VAT NUMBER \\ IBAN}
\setkomavar{date}{\today}
\setkomavar{subject}{The very true reason I'm writing this thing}
\begin{document}
\begin{letter}
{FirstNameTO LastNameTO\\
Address. XX\\
00100 Siena, Italy
}
\opening{Your majesty,}
Bla bla bla ....
\closing{All the best,}
\end{letter}
\end{document}
I'd like to add another tex letter source with a logo on the top-left and rulers, based on newlfm Remember to put a logo.pdf in the same folder of it otherwise it will complain:
\documentclass[10pt,stdletter]{newlfm}
\usepackage{charter}
\widowpenalty=1000
\clubpenalty=1000
\newsavebox{\Luiuc}
\sbox{\Luiuc}{%
\parbox[b]{1.75in}{%
\vspace{0.5in}%
\includegraphics[scale=1.0,ext=.pdf]
{logo.pdf}%
}%
}%
\makeletterhead{Uiuc}{\Lheader{\usebox{\Luiuc}}}
\newlfmP{headermarginskip=20pt}
\newlfmP{sigsize=50pt}
\newlfmP{dateskipafter=20pt}
\newlfmP{addrfromphone}
\newlfmP{addrfromemail}
\PhrPhone{Phone}
\PhrEmail{Email}
\lthUiuc
\namefrom{Daniele Spinosa}
\addrfrom{%
Polyfunctional Laboratory\\
Casal dei Pazzi\\
Siena, SI Italy 53100
}
\phonefrom{000-000-0000}
\emailfrom{nnnn@nnn.edu}
\addrto{%
Faculty of Somewhere\\
Department of Null and Nothing\\
Vacuum University\\
NoLand, XX 0000-0000}
\greetto{To Whom It May Concern,}
\closeline{Sincerely,}
\begin{document}
\begin{newlfm}
Let's talk about Italian developers...\\
Let's assume they are talented...\\
Let's assume they are skilled...\\
Let's assume they have a good government...\\
Ok Let's talk about real things.
\end{newlfm}
\end{document}