It’s not common I have to write some “professional” looking letters, but it happen from time to time, like to cancel some service subscription.
As for years now I prefer to write in Markdown, I wanted something that could convert my markdown content to a nice looking Pdf output.
Aaron Wolen and Andrew Dunning are sharing on Github a template we can customize to our needs.
Install
👉 git clone https://github.com/aaronwolen/pandoc-letter
👉 cd pandoc-letter/
👉 tree
.
├── Dockerfile
├── example
│ ├── letterhead.pdf
│ ├── letter.md
│ ├── letter.pdf
│ └── signature.pdf
├── LICENSE
├── README.md
└── template-letter.tex
Create signature
It includes by default Aaron signature we need to modify
- Download and install some “handwritten” fonts you like
👉 convert -list font
Font: Arista-Signature
family: Arista Signature
glyphs: /home/yannick/.local/share/fonts/Arista Signature.ttf
Font: Autograf-PERSONAL-USE-ONLY
family: Autograf PERSONAL USE ONLY
glyphs: /home/yannick/.local/share/fonts/Autograf_PersonalUseOnly.ttf
- Create signature
I’m using convert
command from imagemagick
software
👉 convert -background transparent -rotate -2 -fill darkblue -font Arista-Signature -size 500x200 -gravity center 'caption:Firstname Lastname' out.pdf
👉 convert -background transparent -rotate -2 -fill darkblue -font Autograf-PERSONAL-USE-ONLY -size 900x200 -gravity center 'caption:Firstname Lastname' out.pdf
Edit TEX template
Edit template-letter.tex
if required
\usepackage[french]{babel}
\newmdenv[rightline=true,bottomline=false,topline=false,linewidth=3pt,linecolor=greyborder,skipabove=\parskip]{blockquote}
Write the letter in Markdown
Write your letter.md
file from the one into the example/
folder
---
author:
- Firstname Lastname
- My Organization
opening: To whom it may concern,
closing: Sincerely,
date:
subject: 'Objet: **Résiliation abonnement** '
address:
- Recipient adress
- 123 Street Rd
- Chicago, IL
return-address:
- My Home
- 456 Road St.
- Paris
cc:
encl:
ps: |
fontfamily: mathpazo
fontsize: 12pt
geometry: margin=1in
blockquote: true
#letterhead: example/letterhead.pdf
signature: signature1.pdf
signature-before: -5ex
signature-after: 1ex
#signature-width: 30ex
signature-width: 40ex
closing-indentation: 50pt
links-as-notes: true
colorlinks: true
...
On plaisante, on plaisante… On construit un barrage, après on lance de la caillasse de l'autre côté de la rivière pour faire croire aux autres qu'on a traversé dans l'autre sens, une fois qu'ils sont au milieu, on casse le barrage et on les noie.
- De toute façon le chevalier de Provence il faudrait déjà mettre la main dessus.
- Y en a marre de se comporter comme des sagouins avec tout le monde sous prétexte qu’on a des responsabilités.
- Vous avez dit que ça devait être vexant! Ben voilà! Vous êtes vexé!
> A genoux, pas à genoux c’est une chose...
> Enfin en attendant je vous donne pas tout notre or.
Mais arrêtez bon sang! C’est la salle du trône. Il ferait beau voir que je puisse pas y rentrer! Ben je suis pas mystérieux moi! J’suis même pas solitaire.
Pandoc
Use pandoc
to create the PDF
👉 sudo apt install pandoc
👉 pandoc --template=template-letter.tex example/letter.md -o myletter.pdf
-
Let the
date
empty into the.md
so it will be automatically set. -
Using
\usepackage[french]{babel}
you can notice the date is in French language which may requiresudo apt-get install texlive-lang-french texlive-extra-utils