blog/content/tips/latex-letterhead.md

43 lines
1.7 KiB
Markdown
Raw Normal View History

2019-04-22 16:27:13 +00:00
---
Title: Use any letterhead in LaTeX
Date: 2019-04-22 20:00
Author: Fabrice
Category: tips
2019-04-22 17:47:58 +00:00
Tags: LaTeX
2019-04-22 16:27:13 +00:00
Slug: latex-letterhead
Header_Cover: images/cover_palace.jpg
---
2019-04-22 16:30:44 +00:00
It sometimes appears that I have to write some official documents from some entities, especially for admin stuff.
2019-04-22 16:27:13 +00:00
However, those letterheads are often provided in some [proprietary format](https://en.wikipedia.org/wiki/Office_Open_XML) with which I do my best to make as few interactions as possible.
2019-04-22 16:30:44 +00:00
Especially, I feel more comfortable editing some LaTeX instead of writing it in [libreoffice](https://libreoffice.org/) (for instance).
2019-04-22 16:27:13 +00:00
Thus, thanks to [Nicolas Trotignon](https://perso.ens-lyon.fr/nicolas.trotignon/) who found a simple workaround, here is a small trick to do it.
As a preliminary, you have to obtain a pdf version of the letterhead (to do so, I'm using [online office 365](https://en.wikipedia.org/wiki/Office_365) as it works in Linux, yes, shame on me).
Once this is done, the core of this method is to use the `wallpaper` package to embed the letterhead as a background image, and then play with margins to make it look nice.
Here follows a minimal example with the [corresponding output](examples/background-latex.pdf). Replace `background.pdf` with your (empty) letterhead of course.
This can also be adapted to other classes, such as [`letter.cls`](https://ctan.org/pkg/letter).
```tex
\documentclass[a4paper]{article}
% Design and encoding stuff
\usepackage[utf8]{inputenc}
\usepackage[UKenglish]{babel}
\usepackage[T1]{fontenc}
\usepackage{libertine}
% The main trick
\usepackage{wallpaper}
\CenterWallPaper{1}{background.pdf}
% margin
\usepackage[inner=4.5cm,top=6cm]{geometry}
\begin{document}
% blabla
Hello, World!
% …
\end{document}
```