Briefe mit LaTeX
Viele Wege führen zum Ziel, so auch bei der Erstellung eines professionellen Briefs. Die meisten Anwender werden zu Word oder LibreOffice greifen. In der Tat lässt sich damit ein gut anzusehender Brief erstellen.
Der Nachteil von solchen Office-Suites ist ihre Größe. Hat man eine gute Briefvorlage, so möchte man eigentlich nur ein bisschen unformatierten Text schreiben, da kann das ganze Drumherum schnell anstrengend werden. Zudem muss man auch erst einmal eine gute Vorlage finden
Und wie fast immer, wenn es um das Setzen von Text geht, hat LaTeX auch hier eine Lösung parat.
Voraussetzungen
Für diesen Artikel setze ich eine funktionierende LaTeX-Installation voraus. Auch sollte man schon das ein oder andere Mal mit LaTeX gearbeitet haben. (Tipp: Für das Konvertieren ins Ausgabeformat empfehle ich latexmk, ein sehr umfangreiches und bequemes Script.)
scrlttr2 aus KOMA-Script
Es gibt eine ganze Reihe von Paketen und Klassen, die sich um die Brieferstellung unter LaTeX drehen. Mein Favorit ist wie immer im KOMA-Script enthalten: Die Dokumentenklasse scrlttr2.
Diese richtet sich größtenteils an der DIN-Norm für Geschäftsbriefe (siehe DIN 5008), sieht schön aus und lässt sich sehr gut anpassen. Wie immer bei KOMA-Script ist die Dokumentation sehr ausführlich, sodass auch Experten ihren Spaß haben.
Zentrale Definitionen
Einer der Vorteile von scrlttr2 ist es, dass man Voreinstellungen in separaten Dateien speichern kann. Diese werden dann einfach zusammen mit den Klassenoptionen geladen. So kann man sich zentral eine Datei mit seinen Daten und Einstellungen anlegen. (Alternativ könnte man auch eine eigene Klassendatei erstellen, ich bevorzuge aber den ersten Weg. Letztendlich ist es Geschmackssache.)
skg-brief.lco:
\ProvidesFile{skg-brief.lco}[Sven Karsten Greiner]
\KOMAoptions{parskip,locfield=wide,firsthead=false,enlargefirstpage}
\LoadLetterOption{DINmtext}
\setkomavar{fromname}{Sven Karsten Greiner}
\setkomavar{fromaddress}{Brunkhorststra\ss e 59\\29221 Celle}
\setkomavar{fromphone}[Tel./Fax: ]{+49\,5141~22122}
\setkomavar{fromemail}{sven@sammyshp.de}
\setkomavar{fromurl}[Website: ]{www.sammyshp.de}
\newkomavar[Mobile:]{frommobile}
\setkomavar{frommobile}{+49\,176~99143135}
\setkomavar{location}{%
\textbf{\usekomavar{fromname}}\\
\usekomavar{fromaddress}
\scriptsize
\begin{tabular}[t]{@{}l@{\ }l}
\usekomavar*{fromphone} & \usekomavar{fromphone} \\
\usekomavar*{frommobile} & \usekomavar{frommobile}\\
& \\
\usekomavar*{fromemail} & \usekomavar{fromemail} \\
\usekomavar*{fromurl} & \usekomavar{fromurl}
\end{tabular}
\usekomavar{frombank}
}
\renewcommand*{\raggedsignature}{\raggedright}
\@setplength{locvpos}{20mm}
\@setplength{locheight}{50mm}
\@addtoplength{firstfootvpos}{1cm}
Oftmals ist die Bankverbindung wichtig, daher hat sie einen Platz bei den Absenderinformationen erhalten. Aber nicht immer möchte man die Daten teilen. Daher kommen diese Informationen in eine extra Datei und können so später leicht aktiviert bzw. deaktiviert werden.
skg-bank.lco:
\ProvidesFile{skg-bank.lco}[Sven Karsten Greiner (Bankverbindung)]
\setkomavar{frombank}{%
Konto 1\,234\,567\,890\\
Sparkasse Musterstadt\\
BLZ 250\,800\,00
}
Zuletzt noch eine Datei für die Signatur. Es ist zwar etwas unpersönlicher, bei hohem Druckaufkommen erspart eine gedruckte Unterschrift aber viel Aufwand. Für diesen Code muss lediglich die Unterschrift eingescannt und als transparentes PNG in der Datei skg-signatur.png gespeichert werden.
skg-signatur.lco:
\ProvidesFile{skg-signatur.lco}[Sven Karsten Greiner (Unterschrift)]
\setkomavar{signature}{%
\usekomavar{fromname}\\
\vspace{-20mm}\hspace{6mm}\includegraphics[width=25mm]{skg-signatur.png}
}
Beispiel
Zum Schluss noch ein Minimalbeispiel, welches einen vollständigen Brief mit den am meisten gebrauchten Details beinhaltet. Dies nehme ich für neue Briefe als Vorlage.
In den Klassenoptionen sind die Dateinamen der zentralen Definitionen angegeben. Möchte man beispielsweise keine Bankverbindung angeben, so entfernt man einfach das skg-bank
. Genauso kann man nicht benötigte Felder auskommentieren oder löschen.
template.tex:
\documentclass[skg-brief,skg-signatur,skg-bank]{scrlttr2}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{textcomp}
\usepackage{graphicx}
\begin{document}
% \setkomavar{date}{\today}
% \setkomavar{yourref}{~}
% \setkomavar{yourmail}{~}
% \setkomavar{myref}{~}
\setkomavar{subject}{Betreff}
\begin{letter}{%
Herrn\\
Empfänger\\
Straße 123\\
00000 Stadt
}
\opening{Anrede,}
Briefinhalt
\closing{Mit freundlichen Grüßen}
% \ps PS:
% \encl{Anlagen}
% \cc{Verteiler}
\end{letter}
\end{document}
Zum Abschluss noch das PDF eines fertigen Briefs, welcher mit den obigen Dateien (und etwas Inhalt) erstellt wurde.
Der LaTeX-Schriftzug in HTML
Der Schriftzug hat etwas künstlerisches, das wollte ich auch in HTML. Edward O'Connor hat das glücklicherweise bereits gemacht (hier etwas übersichtlicher von Dario Taraborelli), ich habe das Ganze nur nochmal zusammengefasst, sodass man es auch ohne globale CSS-Definitionen nutzen kann.
<span style="text-transform: uppercase;">L<sup style="font-size: 0.85em; vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em;">a</sup>T<sub style="font-size: 1em; vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em;">e</sub>X</span>
Direkt in LaTeX kann man \LaTeX
verwenden.
Update 12.05.2013
Ich habe unter Beachtung dieses Beitrags habe ich den Code ein wenig modifiziert:
<span style="text-transform: uppercase;">
L
<sup style="font-size: 0.85em; vertical-align: 0; position: relative; bottom: 0.25ex; margin-left: -0.36em; margin-right: -0.15em;">a</sup>
T
<sub style="font-size: 1em; vertical-align: 0; position: relative; top: 0.5ex; margin-left: -0.1667em; margin-right: -0.125em;">e</sub>
X
</span>
<!-- Einzeiler -->
<span style="text-transform: uppercase;">L<sup style="font-size: 0.85em; vertical-align: 0; position: relative; bottom: 0.25ex; margin-left: -0.36em; margin-right: -0.15em;">a</sup>T<sub style="font-size: 1em; vertical-align: 0; position: relative; top: 0.5ex; margin-left: -0.1667em; margin-right: -0.125em;">e</sub>X</span>
Dadurch bleiben die Zeilenabstände gleich.