LaTeX/Letters

Sometimes the mundane things are the most painful. However, it doesn't have to be that way because of evolved, user-friendly templates. Thankfully, LaTeX allows for very quick letter writing, with little hassle.

The letter class
To write letters use the standard document class letter.

You can write multiple letters in one LaTeX file - start each one with and end with. You can leave recipient blank. Each letter consists of four parts.
 * 1) Opening (like  or ).
 * 2) Main body (written as usual in LaTeX). If you want the same body in all the letters, you may want to consider putting the entire body in a new command like  and then using  in all the letters.
 * 3) Closing (like ).
 * LaTeX will leave some space after closing for your hand-written signature; then it will put your name and surname, if you have declared them.
 * 1) Additional elements: post scripta, carbon copy and list of enclosures.

If you want your name, address and telephone number to appear in the letter, you have to declare them first signature, address and telephone.

The output letter will look like this:



Here is the example's code:

To move the closing and signature parts to the left, insert the following before :

The amount of space to the left can be adjusted by increasing the 0pt.

Using the package
The package provides customization to the  command, allowing the user to print on any of an assortment of labels or envelope sizes. For example, beginning your LaTeX file the following way produces a document which includes the letter and a business-size (#10) envelope on the following page.

Refer to the envlab user guide for more information about this capable package. Note that the package has issues displaying characters outside the base ASCII character set, see this bug report for more information.

Using the package
Here is a relatively simple envelope which uses the package which is used because it vastly simplifies the task of rearranging things on the page (and the page itself).



Printing
The above will certainly take care of the spacing but the actual printing is between you and your printer. One user reports that printing envelopes created with is relatively painless. If you use the package, you may find the following commands useful for printing the envelope.

$ pdflatex envelope.tex $ pdf2ps envelope.pdf $ lpr -o landscape envelope.ps

Alternatively, you can use the latex dvi output driver.

In the first line, dvips command converts the .dvi file produced by latex into a .ps (PostScript) file. In the second line, the PostScript file is sent to the printer. $ latex envelope.tex && dvips -t unknown -T 9.5in,4.125in envelope.dvi $ lpr -o landscape envelope.ps

It is reported that pdflatex creates the right page size but not dvips despite what it says in the manual. It will never work though unless your printer settings are adjusted to the correct page style. These settings depend on the printer filter you are using and in CUPS might be available on the lpr command line.

Windowed envelopes
An alternative to separately printing addresses on envelopes is to use the letter class from the KOMA package. It supports additional features like folding marks and the correct address placement for windowed envelopes. Using the document class from the KOMA package the example letter code is:

The output is generated via $ pdflatex koma_env

Folding the print of the resulting file koma_env.pdf according the folding marks it can be placed into standardized windowed envelopes DIN C6/5, DL, C4, C5 or C6.

In addition to the default, the KOMA-package includes predefined format definitions for different standardized Swiss and Japanese letter formats.