Posts mit dem Label LaTeX werden angezeigt. Alle Posts anzeigen
Posts mit dem Label LaTeX werden angezeigt. Alle Posts anzeigen

Dienstag, 23. Juni 2015

LibreOffice: Adding a draft watermark to exported PDFs

When distributing documents that have not reached final state yet, it may be a good idea to mark them as draft. LibreOffice supports watermarks for this purpose and others (File > Export as PDF... > Watermark). However, the implemenation has some downsides: The color of the watermark text is a green that not everybody may like and the text is vertical, which also does not look too good if you compare it to the watermarks that LaTeX packages produce. Moreover, the user cannot adjust the watermark to his needs, as the settings are hard-coded in LibreOffice's source code...
So, as LaTeX does the job very well, one workaround is to generate a draft watermark using LaTeX and then setting it as the background image of an exported PDF from LibreOffice (another one is setting a background image directly in LibreOffice):
The following code uses the draftwatermark package to adjust and generate a watermark:

\documentclass[a4paper]{article}

\usepackage{lmodern}    % Latin Modern
%\usepackage{tgheros}   % Helvetica
%\usepackage{tgtermes}  % Times
%\usepackage{tgcursor}  % Courier

% adapt default font
%  * serif:      \rmdefault
%  * sans-serif: \sfdefault
%  * monospace:  \ttdefault
%\renewcommand*\familydefault{\sfdefault}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\usepackage{draftwatermark}
% see package documentation for further configuration options
\SetWatermarkText{Draft}
\SetWatermarkLightness{0.75}
\SetWatermarkScale{1.2}


\begin{document}
\pagenumbering{gobble} % remove page numbers
\mbox{}                % pdflatex refuses to emit an empty page otherwise
\end{document}

After building the PDF file using pdflatex, you can use the pdftk command line tool to add it as background/watermark to a PDF document exported from LibreOffice (stamp instead of background places the LaTeX document in front of the other):

pdflatex watermark.tex
pdftk in.pdf background watermark.pdf output out.pdf

The source code and some generated PDFs can be found in this tar archive. It also contains a script draft.sh which adds a draft watermark to a PDF document:

./draft.sh in.pdf out.pdf

Montag, 22. Juni 2015

LibreOffice u. a.: (Entwurfs-)Wasserzeichen in exportierte PDF-Dokumente einfügen

Gelegentlich ist es sinnvoll, ein für die Weitergabe bestimmtes Dokument als Entwurf zu kennzeichnen, indem ein entsprechender Text als Wasserzeichen im Hintergrund platziert wird. In LibreOffice ist zwar eine entsprechende Funktion eingebaut: Über das Menü für den PDF-Export (Datei > Als PDF exportieren… > Wasserzeichen) kann ein Text angegeben werden, welcher als Wasserzeichen verwendet wird. Das Ergebnis ist allerdings nicht sonderlich schön: Zum Einen wird als Farbe ein sehr aufdringliches Grün verwendet, zum Anderen ist der Text nicht schräg über das Dokument gelegt, sondern vertikal.  Beide Eigenschaften sind nicht veränderbar.
Abhilfe lässt sich schaffen, indem man eine leere Seite mit dem Entwurfswasserzeichen erstellt und dieses dann nachträglich unter das exportierte PDF-Dokument legt (alternativ könnte auch eine Bilddatei als Hintergrundgraphik in LibreOffice verwendet werden):
Hierzu wird zunächst das PDF mit dem Wasserzeichen mit LaTeX (oder natürlich auch LibreOffice o. Ä.) erstellt (z. B. mit dem Paket draftwatermark) und anschließend mittels pdftk unter den Text gelegt (um es darüber zu legen, kann stamp statt background verwendet werden):

pdflatex wasserzeichen.tex
pdftk in.pdf background wasserzeichen.pdf output out.pdf

Als LaTeX-Quelltext wird folgender verwendet:

\documentclass[a4paper]{article}

\usepackage{lmodern}    % Latin Modern
%\usepackage{tgheros}   % Helvetica
%\usepackage{tgtermes}  % Times
%\usepackage{tgcursor}  % Monospace
% adapt default font -- only necessary for monospace (\ttdefault) or sans-serif
% (\sfdefault) font, as article's default is roman.
%\renewcommand*\familydefault{\sfdefault}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\usepackage{draftwatermark}
% see package documentation for further configuration options
\SetWatermarkText{Entwurf}
\SetWatermarkLightness{0.75}
\SetWatermarkScale{1.2}


\begin{document}
\pagenumbering{gobble} % remove page numbers
\mbox{}                % pdflatex refuses to emit an empty page otherwise
\end{document}

Der Quelltext und Wasserzeichen in verschiedenen Schriftarten findet sich auch in dieser Archivdatei. Zusätzlich ist ein Skript entwurf.sh enthalten, welches eine PDF-Datei mit einem Entwurfswasserzeichen versieht:

./entwurf.sh in.pdf out.pdf

Freitag, 28. Februar 2014

Lebenslauf-Vorlage für LibreOffice/OpenOffice

Vor Kurzem habe ich eine weitere Vorlage für LibreOffice/OpenOffice erstellt. Es handelt sich dabei um eine Lebenslauf-Vorlage in Anlehnung an das LaTeX-Paket moderncv (genauer: den darin enthaltenen "casual"-Stil). Anlass war, dass mein aktuelles LaTeX-Lebenslaufdokument sich nicht mehr problemlos mit der in der aktuellen Debian-Version "Wheezy" enthaltenen Version des Pakets verträgt. Nebenbei ist es mit OpenOffice natürlich auch etwas einfacher und schneller möglich, kleine Änderungen am Aussehen des Dokuments durchzuführen als mit einer LaTeX-Klasse.
Aktualisierung 2014-06-01: Die Vorlage gibt es inzwischen auch auf den Vorlagenseiten von Apache OpenOffice: ArialLatin Modern Sans

Donnerstag, 27. Dezember 2012

Briefvorlage im LaTeX-Stil für OpenOffice

Bisher habe ich meine Briefe meistens mit LaTeX und der scrlttr2-Klasse aus dem Koma-Script-Paket verfasst. Vorteile sind die typischen eines LaTeX-Dokuments:
  • vorgegebenes, gutes Gesamtbild des Dokuments
  • automatische Silbentrennung für ein angenehmes Erscheinen der Absätze: Zeilen werden bis zum Ende ausgefüllt bei nicht zu großen Wortabständen (im Gegensatz zu einem Blocksatz ohne Silbentrennung)
  • bei einmalig erstellter Vorlage muss nur noch der eigentliche Brieftext eingegeben werden
  • letztlich das typische LaTeX-Aussehen, also auch die Schriftart (wenn man diese mag)
Ein Nachteil ist jedoch der hohe Aufwand, auch nur eine kleine Änderung am Dokumentaufbau durchzuführen, die ausnahmsweise mal benötigt wird. Daher habe ich nun für OpenOffice eine Briefvorlage erstellt, die die obigen Vorteile mit der leichten Durchführbarkeit kleinerer Änderungen am Dokumentaufbau verbindet. Besonderheiten sind dabei:
  • Verwendung der Schriftart Latin Modern Roman (Debian-Paket lmodern oder manuelle Installation)
  • Verwendung der Benutzerdaten in den Einstellungen für die Absenderangaben (Extras > Optionen... > OpenOffice.org > Benutzerdaten)
  • Blocksatz mit automatischer Silbentrennung im Fließtext für gleichmäßiges Schriftbild (erfordert ein deutsches Wörterbuch)
Einen Beispielbrief, der mit der Vorlage erstellt wurde, ist hier verfügbar, die Vorlage ist auf templates.openoffice.org zu finden. Außerdem gibt es die Vorlage dort auch noch ohne zusätzlich zu installierende Schriftarten: ohne Serifen/mit Serifen

Aktualisierung 2013-03-22: Die Vorlagen gibt es jetzt auch bei templates.libreoffice.org.