After a successful penetration test, I wanted to publish a detailed writeup about it, but the template we use at the company that includes a logo and some text in the footer was created using Microsoft Word, and I prefer using LaTeX for typesetting. It would have been possible to recreate the template from scratch, but I preferred to do it quick and, as it turned out, not so dirty.
First, I saved a document written using the template from Word to PDF, opened
it up in Inkscape and removed the body (e.g. everything except the header
and the footer). Depending on the internals of the PDF saving mechanism, it
might be necessary to use ungroup one or more times to avoid removing more
than needed. After this simple editing, I saved the result as another PDF,
called s2bg.pdf
.
Next, I created a file named s2.sty
with the following lines.
\ProvidesPackage{s2}
\RequirePackage[top=4cm, bottom=2.8cm, left=2.5cm, right=2.5cm]{geometry}
\RequirePackage{wallpaper}
\CenterWallPaper{1}{s2bg.pdf}
The first line sets the package name, while the next three adjust the margins (which I calculated by using the ones set in Word and some trial and error) and put the PDF saved in Inkscape to the background of every page. The wallpaper package is available in the texlive-latex-extra package on Debian systems.
As our company uses a specific shade of orange as a primary color, I also
changed the \section
command to use this color for section headings.
\RequirePackage{color}
\definecolor{s2col}{RGB}{240, 56, 31}
\makeatletter
\renewcommand{\section}{\@startsection{section}{1}{0mm}
{\baselineskip}%
{\baselineskip}{\normalfont\Large\sffamily\bfseries\color{s2col}}}%
\makeatother
Creating a package comes with the advantage, that only a single line needs
to be added to a document to use all the formatting described above, just
like with CSS. The following two documents only differ such that the one
on the right has an extra \usepackage{s2}
line in the header.
Two documents published with this technique (although written in Hungarian) can be downloaded: the aforementioned writeup about client-side attacks and another one about things we did in 2011.