AA_chairs_sundstrom_sxc_1199487.jpg

© Sundstrom, sxc.hu

Neue Ordnung

Mit Pdfpages und Gummi PDF-Dokumente reformatieren

31.05.2011
Mit Pdfpages sagen Sie großvolumigen Dokumenten und exotischen Formaten kinderleicht den Kampf an: Mit wenigen Befehlen erzeugen Sie aus jeder Vorlage die PDF-Datei.

PDF hat sich weitgehend als plattformübergreifendes Format durchgesetzt: Ein Problem tritt allerdings immer wieder auf: Sie haben ein PDF-Dokument, das Sie ausdrucken möchten. Allerdings führt das Originalformat zu einem mittleren Papierberg. Möchten Sie nicht auf den Ausdruck verzichten, da das Verstehen von Zusammenhängen beim Lesen (inklusive Markieren oder Unterstreichen) auf Papier am schnellsten und einfachsten funktioniert, dann bleibt nur eine Möglichkeit: die relevanten Teile des Dokuments ausschneiden und neu zusammensetzen, bevor Sie sie zu Papier bringen.

Eigentlich wäre das eine einfache Aufgabe, für die es viele Tools gibt, aber der Teufel steckt – wie so oft – im Detail. In diesem Artikel dient als Beispiel ein eigentlich als Online-Dokumentation konzipierter Teil des ConTeXt-Handbuchs (Abbildung 1).

Abbildung 1: So sehen die Seiten der Dokumentation aus: Links ist zu viel Rand, rechts erst recht, ebenso oben und unten. Dazu ist die Seite noch falsch ausgerichtet (gedreht).

Zu den passenden Tools für die anstehenden Aufgaben zählt das LaTeX-Paket Pdfpages [1]. Es extrahiert auf Wunsch einzelne Seiten aus unverschlüsselten PDF-Dokumenten und bearbeitet sie bei Bedarf mit allen Optionen, die das Graphicx-Paket [2] bietet. Es gibt schon ein kleines Programm, das auf Pdfpages aufbaut: Pdfjam [3].

Im Regelfall erstellen Sie eine kleine Manteldatei, in die Sie das PDF-Dokument in der gewünschten Art einlesen. Dann übersetzen Sie diese Datei und korrigieren die Parameter solange, bis Ihnen das Ergebnis zusagt. Das Verfahren nutzen Sie jetzt – aber automatisiert. Denn ein Nachteil hat das manuelle Anwenden von Pdfpages: Es braucht normalerweise viele Versuche, um die richtigen Einstellungen zu ermitteln, und das kostet Zeit. Hier kommt der Editor Gummi ([4],[5]) ins Spiel.

Gummi erzeugt on-the-fly PDF-Ausgaben eines im Editor geladenen Quelltexts. So sehen Sie das Ergebnis jeder Korrektur fast sofort, ohne zuvor das Neuübersetzen manuell anzustoßen – das geschieht automatisch. Listing 1 zeigt einen Beispielquelltext.

Listing 1

\documentclass[a4paper]{article}
\usepackage{pdfpages}
\begin{document}
\includepdf[pages=-,
 %noautoscale,scale=.58,
 nup=2x3,
 column,columnstrict,
 %angle=90,
 landscape,
 trim=25mm 23mm 95mm 20mm,
 frame,clip,
 %pagecommand=
 ]{/tmp/ms-cb-en.pdf}
\end{document}

Die Zeilen lesen Sie wie folgt: \documentclass[a4paper]{article} definiert den Typ des erzeugten Ausgabedokuments. Hier legen Sie das Papierformat A4 (a4paper) fest. Die Dokumentenklasse article stellt ein sehr einfach gehaltenes Format bereit, das ausreicht, da im Beispiel keine besonderen Features zum Einsatz kommen.

Über \usepackage{pdfpages} laden Sie das Pdfpages-Paket, mehr benötigen wir nicht. Zwischen \begin{document} und \end{document} steht der im Ausgabedokument dargestellte Code. Da Sie keinen Text schreiben wollen, sondern quasi nur Bilder einbinden – genau das macht Pdfpages nämlich – brauchen Sie sich weder um die Kodierung von Eingabezeichen noch um Fonts kümmern. Es gibt daher nur genau einen Befehl:

\includepdf[Optionen↩
]{Eingabedatei}

Zwischen den geschweiften Klammern steht die Eingabedatei mit Pfad. Weder Dateiname noch Pfad dürfen Leerzeichen- oder Sonderzeichen enthalten. Zwischen den eckigen definieren Sie über die Optionen, wie die Ausgabe aussieht. Es hat sich bewährt, mehrere Optionen nicht in eine Zeile, sondern untereinander zu schreiben, um den Überblick zu behalten und um gezielt einzelne Optionen auszuschalten. Das geschieht mit einem Prozentzeichen, das in LaTeX Kommentare kennzeichnet.

Es ist unbedingt notwendig, Optionen mit Kommata zu verbinden, die Liste der Optionen darf keine Leerzeilen enthalten, Längenangaben müssen Einheiten haben. Leerzeichen sind in jeder Form und Anzahl erlaubt. Die Reihenfolge von Pdfpages-Optionen spielt eine Rolle. Es macht einen Unterschied, ob eine Seite zunächst um 90 Grad gedreht (turn wäre eine alternative Option) und Sie diese dann beschneiden oder umgekehrt.

Pdfpages verfügt über zwei Arten von Optionen: Es gibt ganz primitive Optionen wie das Drehen einer Seite (angle=Winkel) und das Beschneiden (trim=links unten rechts oben). Die Koordinaten trennen Sie durch Leerzeichen. Sie beschreiben ein Fenster auf der Eingabeseite. Die ersten beiden legen den Punkt links unten fest, die folgenden den rechts oben. In diesem Kontext kommt die Option clip zum Zug: Sie bewirkt, dass Pdfpages Teile außerhalb des Trim-Bereichs abschneidet. Diese Gruppe von Optionen reicht Pdfpages an das Makropaket Graphicx weiter.

Die weiteren Optionen wertet Pdfpages selbst aus. Sie steuern, wie das Makropaket die Eingabeseiten zusammenfasst und damit die Ausgabeseiten konstruiert. Ein typisches Beispiel ist nup=Eingabeseiten-pro-ZeilexZeilen-pro-Seite, für das Sie zwei Ganzzahlen verwenden.

Dank der Option pages=- bearbeitet die Software alle Eingabeseiten. Alternativ wählen Sie einzelne Seiten aus (in der Form: {1,3,7-9}), um sie in die Ausgabe zu übernehmen. Die geschweiften Klammern um die Seitenzahlen sind notwendig, ebenso wie die Kommata. Eine leere Gruppe {} in diesem Argument interpretiert das Makro als Leerseite. Das Minuszeichen steht für einem Bereich: -9 nimmt alle bis einschließlich der Seite 9 auf, 11- alle ab (einschließlich) Seite 11 bis zum Ende der Eingabedatei.

Abbildung 2: Beim Trimmen mit Gummi passen Sie die Parameter der Optionen schrittweise an.

Die Optionen landscape (Querformat) und portrait (Hochformat) steuern das Ausrichten der Seite. Mittels frame legen Sie einen Rahmen um die Eingabeseiten. Über column erzeugen Sie eine spaltenweise Ausgabe; columnstrict steuert die Reihenfolge der Eingabeseiten in diesem Layout.

Es gibt weitere Optionen, die Pdfpages unterstützt. So beispielsweise noautoscale, die das automatische Anpassen der Seitengröße steuert. In diesem Beispiel ist die Option nicht erforderlich. Der Einsatz hängt von Format und Ausrichtung der Eingabeseiten sowie deren Anordnung auf den Ausgabeseiten ab. Gegebenenfalls stellen Sie über scale=Faktor die Größe manuell ein. In diesem Zusammenhang ist die Option fitpaper interessant. Sie passt die Größe der Ausgabeseiten an die der Eingabeseiten an.

Eine weitere wichtig Option heißt pagecommand={LaTeX-Code}. Sie erlaubt beliebigen LaTeX-Code beim Satz der Ausgabeseiten auszuführen. Voreingestellt ist der Code \thispagestyle{empty}. Um die Wirkungsweise zu verstehen, fügen Sie testweise pagecommand={\Huge\LaTeX} ein.

Fazit

Das hier beschriebene Verfahren erweist sich als einfach und dank Pdfpages sehr leistungsfähig. Dank Gummi testen Sie Optionen recht schnell aus und passen Parameter dann ebenso schnell an. Ein kurze Einführung in LaTeX und Pdfpages findet sich ebenfalls im Web [6].

Das beschriebene Verfahren funktioniert übrigens nur mit dem Pdflatex-Kompiler, da Xetex den Operator clip noch nicht unterstützt. Die hier beschriebene Methode benötigt nur Makropakete die bereits in einer kleinen LaTeX-Installation vorhanden sind. 

Infos

[1] Pdfpages: http://www.ctan.org/pkg/pdfpages

[2] Graphicx: http://www.ctan.org/pkg/graphicx

[3] Pdfjam: http://www2.warwick.ac.uk/fac/sci/statistics/staff/academic-research/firth/software/pdfjam

[4] Gummi: http://gummi.midnightcoding.org

[5] LaTeX-Editor Gummi: Karsten Günther, "Strapazierfähig", LU 07/2010, S. 58, http://www.linux-community.de/21113

[6] Taschen-Handbuch LaTeX: K.Dalheimer/K.Günther, "LaTeX kurz & gut", O'Reilly 2008, ISBN 978-3-89721-542-9, http://www.oreilly.de/catalog/latextb3ger/

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

title_2014_10

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 4 Antworten
Hallo Leute, also, ich bin auf folgendes Problem gestoßen: Ich habe Ubuntu 14.04 auf meiner...
Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...
Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...
o2 surfstick software für ubuntu?
daniel soltek, 15.07.2014 18:27, 1 Antworten
hallo zusammen, habe mir einen o2 surfstick huawei bestellt und gerade festgestellt, das der nic...