Simple letters tend to look very much alike. They are either determined by a standard eg. window envelope style or writer’s preferences. Since the layout is fixed, letters can be written perfectly in R Markdown.
The KOMA-Script LaTeX Bundle provides layouts for many common window envelope types (German, US, French, Japanese, …) and the possibility to define your own layout. The komaletter package also provides it’s own default letter layout loosely based on DIN 5008B.
The skeleton provided by
komaletter creates a very simple letter as a starting point for your own writing. Several formatting defaults such as font, fontsize, indentation are in use. See
vignette('intro', 'komaletter') and
help(komaletter) for a complete list and their default values. The following figure shows the
rmarkdown source on the left and the rendered
To start a new letter you can take advantage of the komaletter skeleton via
rmarkdown::draft() or the RStudio menu: File > New File > R Markdown… > From Template > komaletter (PDF). When finished writing your letter the RMarkdown document can be rendered to PDF via
rmarkdown::render() or the RStudio Knit button.
Some PDF viewers do not realize that the document already has a blank margin and scale or ‘fit to page’ for printing. This generally results in smaller fonts, overly large margins, broken layout and most importantly a misplaced address. In the worst case, parts of the address are not visible in the window of the envelope.
komaletter’s default layout signals the PDF viewer to print the document at its actual size. Unfortunately, not many PDF viewers heed this hint.
Thus, before printing the document, you should check that the document is not shrunk or ‘fit to page’. The document must be printed at its actual size / 100% so that the positions of the elements are correct.
You can install the released version of komaletter from CRAN with
and the development version from GitHub using the package
Beyond the R package dependency
rmarkdown, a working
pandoc binary and a
LaTeX distribution including
KOMA-Script is needed. RStudio installs it’s own copy of
pandoc, otherwise do what is needed on your OS. As for LaTeX look for
texlive which is included in most Linux distributions. KOMA-Script is part of all but the most bare bone LaTeX distributions. Something like
sudo apt install pandoc pandoc-citeproc texlive should provide everything needed on Debian/Ubuntu. To get a working LaTeX on Windows it is recommended to use the service of the R package
If you plan to write non-english letters, make sure you have the necessary language packs, i.e.
GPL-3 for this package, the work in pandoc-letter, as well as the underlying Pandoc template.