quarto install tool tinytex
Vor ein paar Wochen wurde quarto
als Next-Level-RMarkdown-Nachfolger veröffentlicht.
In diesem Blogpost zeige ich, wie ich mir eine Briefvorlage für quarto
erstellt habe, die den Brief als PDF-Datei erzeugt.
Um mit quarto PDF-Dateien erzeugen zu können, muss eine -Distribution installiert sein. Sollte auf Ihrem System nicht installiert sein, kann dies über folgenden Befehl nachgeholt werden:
Mit dieser Methode installiert quarto alle weiteren benötigten Pakete automatisch, sofern diese benötigt werden. Sollten Sie bereits eine -Distribution installiert haben, müssen Sie das Paket fontawesome
installieren.
Quarto ermöglicht es, zusätzlichen LaTeX-Code einzufügen (siehe https://quarto.org/docs/output-formats/pdf-basics.html#latex-includes) oder nur einzelne Teile des Templates auszutauschen (siehe https://quarto.org/docs/journals/templates.html#template-partials).
Es können aber auch eigene vollständige Vorlagen erzeugt werden. Folgende Punkte sind hierbei zu bedenken:
Möchten Sie alle Funktionen von
quarto
verfügbar und Ihre Vorlage so flexibel wie möglich machen, sollten Sie diequarto
-Vorlage kopieren (siehe https://github.com/quarto-dev/quarto-cli/tree/main/src/resources/formats/pdf/pandoc) und Ihre Änderungen direkt dort einfügen.Möchten Sie sich z.B. eine Briefvorlage erstellen, deren wesentlichen Parameter (Dokumentenklasse, Schriftgröße, Geomtery, etc.) sich eh nie ändern werden, ist es durchaus legitim, eine eigene “rudimentäre” -Datei zu erstellen.
Und das geht so…
Quick and Dirty Vorlage
Unsere Briefvorlage besteht aus zwei Teilen:
eine -Datei
brieftamplate.tex
, in welcher das Aussehen des Briefes festgelegt wird.eine quarto-Markdown-Datei
MeinBrief.qmd
, in welcher der eigentliche Brief geschrieben wird.
- zudem benötigen Sie Ihre Unterschrift als Bilddatei.
LaTeX-Datei
Es bietet sich an, die -Datei an einem “zentralen Ort” abzulegen, von wo aus sie für die Briefe.qmd
erreichbar ist, z.B. Dokumente/Vorlagen/Quarto
. Am besten kopieren Sie Ihre Unterschriftenbilddatei auch dorthin.
Kopieren Sie folgenden Inhalt in die Datei brieftamplate.tex
:
\documentclass[DIN,
fontsize=11pt, % fontsize
paper=a4, % page size a4
firsthead=on, % display header on first page
firstfoot=on, % display footer on first page
pagenumber=off, % position of the page number
parskip=half, % Use indent instead of skip, half, false
enlargefirstpage=on, % more space on first page
fromalign=locationright, % placement of name in letter head
fromrule=afteraddress,
addrfield=on, % address field for envelope with window, on or true
subject=titled, % placement of subject, beforeopening or titled
foldmarks=on, % print foldmarks
numericaldate=off, % display date in numbers only
KOMAold]{scrlttr2}
\usepackage[dvips]{graphicx}
\usepackage[ngerman]{babel}
\usepackage{lipsum}
\usepackage[utf8]{inputenc}
\usepackage{times}
% \usepackage{lmodern}
\usepackage{longtable}
\usepackage{booktabs}
\usepackage{lastpage}
\usepackage[rgb]{xcolor}
\usepackage{hyperref}
\hypersetup{%
pdfborder=0 0 0,
pdfauthor={},
pdftitle={},
pdfsubject={},
pdfkeywords={},
pdfpagemode={UseOutlines},
bookmarksopen,
pdfstartview={FitH},
colorlinks,
linkcolor={black},
citecolor={black},
urlcolor={black}
}
\urlstyle{same}
\usepackage{geometry}
\geometry{a4paper,left=25mm,right=20mm}
\usepackage{lastpage}
\usepackage{marvosym}
\usepackage{blindtext}
\newcommand{\myFirstname}{$myFirstname$}
\newcommand{\myFamilyname}{$myFamilyname$}
\newcommand{\myStreet}{$myStreet$}
\newcommand{\myTown}{$myTown$}
\setkomavar{date}{\today}
\setkomavar{fromname}{\flushright\normalfont\textbf{\myFirstname\ \myFamilyname}}
\setkomavar{signature}{\myFirstname\ \myFamilyname}
\setkomavar{fromaddress}{\flushright\normalfont\scriptsize%
$myGrads$ \myFirstname\ \myFamilyname\\
\myStreet\\\myTown\\%
$myTelefon$\\%
\normalfont $myMail$\\[2mm]
$myBank$\\
$myIBAN$\\[2mm]
Aktenzeichen:\quad\ $myAktenzeichen$\\
Datum:\quad \today}
\setkomavar{backaddress}{\myFamilyname\ | \myStreet\ | \myTown}
\setkomavar{signature}{\includegraphics[width=4cm]{$Unterschrift$}\\\myFirstname\ \myFamilyname}
\renewcommand*\familydefault{\sfdefault}
\setkomavar{firsthead}{}
\setkomavar{location}{%
\raggedleft
\usekomavar{fromname}\\
\usekomavar{fromaddress}
}
% LOGO--------------kopf/fusszeile----------------
\usepackage{scrlayer-scrpage}
\clearmainofpairofpagestyles
\cfoot{\flushright\scriptsize\normalfont Seite \thepage\ von \pageref{LastPage} }
\RedeclarePageStyleAlias{empty}{scrheadings}
%----------------------------------------------
\setkomavar{date}{}
\setkomavar{subject}{$myBetreff$}
\setlength{\parindent}{0pt}
\makeatletter
\@setplength{backaddrheight}{0pt}% because backaddress=off
\@setplength{toaddrhpos}{2.5cm}%distance from left
\@setplength{toaddrvpos}{5cm}%distance from top
\@setplength{toaddrheight}{3.5cm}%height of the addressbox
\@setplength{toaddrwidth}{10cm}% width of the addressbox
\@addtoplength{locwidth}{45mm} % width of ABSENDERbox
\@setplength{lochpos}{2cm}%distance from top
\@setplength{locvpos}{32mm}%distance from top
\@setplength{refvpos}{11cm}
\makeatother
$if(highlighting-macros)$
$highlighting-macros$
$endif$
\begin{document}
%
\begin{letter}{$toAdressName$\\
$toAdressHost$\\
$toAdressStr$\\
$toAdressCity$\\
$toAdressLand$
}
%
\opening{$opening$,}
%
%\setstretch{$spacing$}
$body$
%
\closing{$closing$,
}
$if(Anlagen)$
Anlage(n):
\begin{itemize}
$for(Anlagen)$\item $Anlagen$ %
$endfor$
\end{itemize}
$endif$
\end{letter}
\end{document}
quarto-Datei
Kopieren Sie folgenden Inhalt in die Datei MeinBrief.qmd
. Beachten Sie, dass in Zeile 4 der Pfad zur brieftamplate.tex
korrekt angegeben werden muss. Ebenso erwartet die Vorlage in Zeile 14 den Pfad zu einer Unterschrift.png
-Bilddatei.
---
format:
pdf:
template: /pfad/zu/brieftamplate.tex
myFirstname: Andreas
myFamilyname: Absendermann
myStreet: Wegschickstraße 13
myTown: 45899 Abschickstadt
myGrads: Herr
myTelefon: +49 555 0815 2342
myMail: meinemail@adresse.de
myBank: Sparkasse Reibachstadt
myIBAN: DE06 555 0815 2342
Unterschrift: /pfad/zu/Unterschrift.png
myAktenzeichen: 2021-A
myBetreff: Betreff
toAdressName: Erna Empfängerin
toAdressHost: Empfangs GMBH
toAdressStr: Empfänger-Straße 12
toAdressCity: 45887 Empfangdorf
toAdressLand: Germany
opening: "Sehr geehrte Frau Empfängerin,"
closing: "Mit freundlichen Grüßen"
Anlagen:
- "Lebenslauf"
- "Anwaltsschreiben"
- "Schulzeugnis"
---
dies ist ein Testbrief.
Wenn Sie beide Pfade korrekt ersetzt haben, können Sie den Render
-Button drücken. Das Ergebnis sieht dann so aus:
Für jeden weiteren Brief können Sie nun die MeinBrief.qmd
duplizieren, umbenennen, bearbeiten und ein PDF erzeugen.
siehe auch
Mittlerweile habe ich die Vorlage auch für Typst vorbereitet, siehe diesen Blogeintrag.
Weblinks
https://quarto.org/docs/output-formats/pdf-basics.html#latex-includes
https://quarto.org/docs/journals/templates.html#template-partials
https://github.com/quarto-dev/quarto-cli/tree/main/src/resources/formats/pdf/pandoc
https://www.produnis.de/R/will-quarto.html#sec-quartoLaTeXtemplate
https://www.produnis.de/blog/posts/2024-11-16-quarto-typst-extension/