AA_Mainz_Gutenbergdenkmal_Relief_2.JPG

© e.peiffer@gmx.net

Bücher, Broschüren und Booklets

Werkzeuge für PDF und Postscript (Teil 4)

20.10.2009
Im vierten Teil unserer Reihe zur effektiven Nutzung von Postscript und PDF geht es um das clevere Erzeugen von Büchern, Broschüren und Booklets.

Serie Postscript/PDF-Tools

Teil 1 Anzeigen und Konvertieren http://www.linux-community.de/artikel/19014
Teil 2 Zerlegen und Zusammensetzen http://www.linux-community.de/artikel/17410
Teil 3 Mehrfachdruck und Poster http://www.linux-community.de/artikel/19376

Als Verfasser eines Textdokuments schenken wir dem Druck erst einmal relativ wenig Aufmerksamkeit. Wir konzentrieren uns lediglich auf den Inhalt und hoffen darauf, dass am Ende das Papier sauber aus dem Drucker purzelt. Bei vielseitigen Dokumenten wie Broschüren und Büchern erahnen wir vielleicht, dass in der Druckerei unser Text einen hochkomplexen Prozess durchläuft, bis er als fertiges Exemplar geheftet oder gebunden vor uns liegt.

Um die Schwierigkeiten zu verstehen, betrachten wir die Seitenverteilung eines Dokuments aus mehreren DIN-A5-Seiten beim Ausdruck auf A4-Blätter, beispielsweise für eine Broschüre. Abbildung 1 verdeutlicht, wie die einzelnen Seiten dazu auf dem beziehungsweise den Papierbögen angeordnet werden müssen. Die erste und dritte Spalte entsprechen der Vorderseite, die zweite und vierte Spalte der Rückseite eines Bogens, den es beidseitig zu bedrucken gilt. Von oben nach unten steigt die Anzahl der Seiten in der Broschüre – die erste Zeile zeigt eine einseitige, die zweite eine zweiseitige Broschüre und so fort.

Abbildung 1: Anordnung der Einzelseiten auf Druckbögen bei einer DIN-A5-Broschüre (Druck auf DIN-A4-Bögen).

Abbildung 2 demonstriert die Anordnung bei einem vierseitigen Textdokument. Dieser Papierbogen faltet man anschließend in der Mitte und heftet (Fadenbindung), klammert oder klebt (Klebebindung) ihn dann mit den anderen Seiten zusammen. Zu guter Letzt wird der überstehende Rand abgeschnitten, sodass eine gerade Kante entsteht.

Abbildung 2: Seitenanordnung in einem vierseitigen Dokument.

Druckbogen erstellen

Beim Erstellen von Druckbögen hilft uns im Fall von Postscript wieder einmal das bereits in den vorigen Teilen diese Reihe eingesetzte Paket Psutils [1]: Diesmal kommen die Kommandos psbook und psnup zum Einsatz.

Mithilfe von Psbook sortieren Sie die Seiten in einem Postscript-Dokument so um, dass sie anstatt in Lese-Reihenfolge in der richtigen Abfolge für die gewünschte Bindung im Dokument erscheinen. Danach setzen Sie psnup mit dem Parameter -2 ein, um zwei Seiten auf einem Blatt abzubilden. Nach Ablauf der folgenden Kommandosequenz befindet sich die druckfertige Broschüre in der Datei flyer.ps:

$ psbook original.ps bogen.ps
$ psnup -2 bogen.ps flyer.ps

Wie Patrick T. Chmielewski in seiner äußerst lesenswerten Abhandlung zum Buchdruck unter Linux/Unix [3] treffend bemerkt, führt diese Schrittfolge nur für solche Broschüren zu einem perfekten Ergebnis, die aus einer relativ überschaubaren Menge einzelner Seiten bestehen. Je mehr Blätter zusammenkommen, um so unhandlicher gestaltet sich das Falten und Verbinden der Blätter. Im Buchdruck behilft man sich damit, dass man einzelne Heftchen erstellt, die man am Schluss zu einem Buch bindet. Psbook bietet dazu den Parameter -s, mit der sich diese Heftchen ("Stückchen") generieren lassen. Die Zahl bestimmt die Blattanzahl, für 16 Seiten pro Stückchen lautet der Aufruf:

$ psbook -s16 bogen.ps flyer.ps

Als besonders angenehm erweist sich dabei, dass Psbook auch Sonderfälle berücksichtigt. Bei unserer Broschüre tritt ein solcher Fall ein, wenn sich die Seitenanzahl nicht restlos durch Vier teilen lässt (also jeweils zwei Seiten für Vorder- und Rückseite). Psbook ergänzt die fehlenden Leerseiten automatisch und fügt sie an den notwendigen Stellen im Dokument ein.

PDF-Bücher

Die Anzahl der Buchdruck-Assistenten für PDF-Dokumente hält sich in überschaubarem Rahmen: Das einzige Werkzeug, das als Analogon zu Psbook gelten könnte, ist Bookbinder ([2], Abbildung 3). Es basiert auf Java Swing und läuft laut Angabe seines Autors stabil auf den Plattformen Windows, Mac und Linux.

Abbildung 3: Die aufgeräumte Benutzeroberfläche von Bookbinder.

Tests unter aktuellen Debian- und Ubuntu-Versionen verliefen allerdings unerwartet negativ: Die fehlerhafte Referenzierung von Bibliotheken und Darstellungsfehler in der Benutzeroberfläche behindern die Arbeit. Sobald der Entwickler diese Fehler beseitigt, wird das praktische Bookbinder den Alltag für viele Anwender deutlich erleichtern.

Bis es soweit ist, heißt es wieder einmal auf die Kommandozeile zurückzugreifen. Dazu benötigen Sie alle Werkzeuge, die wie in den bisherigen Teilen dieser Beitragsserie bereits vorgestellt haben – Listing 1 zeigt, wie es funktioniert.

Listing 1
$ pdfjoin vorlage.pdf --paper a5paper --fitpaper false --outfile vorlage-a5.pdf
$ pdftops -paperw 420 -paperh 595 vorlage-a5.pdf vorlage-a5.ps
$ psbook vorlage-a5.ps vorlage-a5-book.ps
$ psnup -Pa4 -pa5 -2 vorlage-a5-book.ps vorlage-a5-book-zweiseitig.ps
$ ps2pdf14 vorlage-a5-book-zweiseitig.ps broschuere.pdf

Zunächst erzeugt pdfjoin aus der Vorlage im Format DIN A4 ein Dokument im Format DIN A5 (Zeile 1). Die Option --paper a5paper sorgt dabei für die Umwandlung nach DIN A5. Der Schalter --fitpaper false gibt an, dass das Seitenformat der Eingabedatei nicht dem Seitenformat des Ausgabefiles entspricht.

In Zeile 2 wandelt pdftops die DIN-A5-Vorlage von PDF nach Postscript um. Dabei legt der Parameter -paperw 420 -paperh 595 für Postscript die exakte Größe der Seite auf 420 x 595 pt fest. Das Psbook-Kommando in Zeile 3 sortiert die enthaltenen Seiten danach so um, wie man sie für den Broschürendruck benötigt. Der nachfolgenden psnup-Aufruf in Zeile 4 ordnet zwei Seiten pro Blatt an (Option -2). Die zusätzlichen Parameter -Pa4 und -pa5 setzen die Seitengröße für die Eingabedatei auf DIN A5 (-Pa5) und die Blattgröße für die Ausgabe auf DIN A4 (-Pa4).

Das letzte Kommando wandelt schließlich die Postscript-Datei wieder in ein PDF-Dokument um. Dabei stellt das verwendete Kommando ps2pdf14 sicher, dass die neueste, unterstützte PDF-Spezifikation (hier: Version 1.4) zum Einsatz kommt.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • PostScript-Dateien erzeugen und bearbeiten
    Unter Linux beginnt das Publishing schon auf der Kommandozeile: Mit "a2ps" erzeugen Sie Postscript-Dateien, mit den PSUtils bringen Sie die generierten Dokumente nahezu beliebig in Form.
  • Zu Befehl: gs & psutils
    PostScript ist eine plattformunabhängige Programmiersprache, in der Texte und Grafiken an Drucker übermittelt werden. Neben den bekannten Viewern für diese Formate gibt es auch auf der Kommandozeile viele nützliche und schnelle Tools, die .ps-Dateien bearbeiten und anzeigen. Wir zeigen, wie Sie mit Ghostscript und den PSUtils "geistreich" arbeiten.
  • Blattweise
    Mit Linux-Bordmitteln bringen Sie nicht nur problemlos mehrseitige Postscript- oder PDF-Dokumente auf nur einem Blatt unter, sondern setzen auch großformatige Poster aus mehreren Druckseiten zusammen.
  • Software
  • Nicht nur zum Drucken
    PDF und PostScript sind in der Linux-Welt zwei wichtige Dateiformate. In diesem Artikel erfahren Sie, wie Sie diese Formate erzeugen, betrachten, konvertieren und ausdrucken.
Kommentare
Aktuelle Verbesserung (2014)
M. N. (unangemeldet), Sonntag, 22. Juni 2014 20:57:00
Ein/Ausklappen

Da sich 'pdfjoin' nicht unter den (aktuellen) 'psutils' findet, komme ich unter Verwendung von 'psresize' mit einer Verbesserung bei dem 'psnup'-Befehl zu folgender Bash-Datei, die ich MAKEBROCHURE genannt habe:

---------------------------
#!/bin/bash

if [[ ${1} != "" && ${2} != "" && ${3} == "" ]]; then
if [[ -e "/usr/bin/pdftops" && -e "/usr/bin/psresize" && -e "/usr/bin/psbook" && -e "/usr/bin/psnup" && -e "/usr/bin/ps2pdf14" ]]; then
pdftops -paperw 595 -paperh 840 "${1}" .vorlage.ps
psresize -pa5 .vorlage.ps .vorlage-a5.ps
psbook .vorlage-a5.ps .vorlage-a5-book.ps
psnup -Pa5 -2 .vorlage-a5-book.ps .vorlage-a5-book-zweiseitig.ps
ps2pdf14 .vorlage-a5-book-zweiseitig.ps "${2}"
rm .vorlage.ps
rm .vorlage-a5.ps
rm .vorlage-a5-book.ps
rm .vorlage-a5-book-zweiseitig.ps
else
echo Eines der benötigten Programme ist nicht installiert.
echo Installieren Sie ggf. das Paket psutils.
echo
fi
else
echo $0: MAKEBROCHURE
echo Erstellt eine PDF-Datei im Broschürenformat aus einer PDF-Datei im DIN-A4-Format.
echo
echo Syntax: Eingabe-PDF-Datei Ausgabe-PDF-Datei
echo
fi
---------------------------


Bewertung: 49 Punkte bei 3 Stimmen.
Den Beitrag bewerten: Gut / Schlecht
-
Anmerkung zu „Aktuelle Verbesserung (2014)“
M. N. (unangemeldet), Sonntag, 22. Juni 2014 21:20:55
Ein/Ausklappen

In dem Befehl 'pdftops -paperw 595 -paperh 840 "${1}" .vorlage.ps' scheint die Angabe von Papierbreite und -höhe nicht unbedingt erforderlich zu sein, sodass das Ergebnis auch ohne die Angabe recht ähnlich zum ursprünglichen Ergebnis ist, während das „DIN-A4-Format” der Eingabedatei ebenfalls optional zu sein scheint.


Bewertung: 92 Punkte bei 3 Stimmen.
Den Beitrag bewerten: Gut / Schlecht
Script erstellt zu kleine Bilder
Christian Knorr (unangemeldet), Samstag, 30. April 2011 20:03:26
Ein/Ausklappen

Hallo und vielen Dank für die Informationen zum Buchdruck.
Ihr Listing 1 verursacht bei mir (ubuntu 10.10) den Fehler, dass ab Zeile 4 (psnup) die Einzelseiten zu klein dargestellt werden. Soll heißen, das Format ist richtiger Weise A4, darauf aber zu kleine Seiten mit zu viel weißem Nichts oben und rechts. Die Falz ist auch nicht mittig.
Die Abwandlung des Scripts bringt in meinem Fall genau das gewünschte Ergebnis. Bei psnup habe ich "-Pa4 -pa5" gänzlich entfernt (Ergebnis ist A4) und -s1 (scale) hinzugefügt:

[code]
#!/bin/bash

pdfjoin $1 --paper a5paper --fitpaper false --outfile 1-vorlage-a5.pdf || {
echo "Fehler pdfjoin"
exit 1
}

pdftops -paperw 420 -paperh 595 1-vorlage-a5.pdf 2-vorlage-a5.ps || {
echo "Fehler pdftops"
exit 2
}

psbook 2-vorlage-a5.ps 3-vorlage-a5-book.ps || {
echo "Fehler psbook"
exit 3
}

psnup -s1 -2 3-vorlage-a5-book.ps 4-vorlage-a5-book-zweiseitig.ps || {
echo "Fehler psnup"
exit 4
}

ps2pdf14 4-vorlage-a5-book-zweiseitig.ps 5-broschuere.pdf || {
echo "Fehler ps2pdf14"
exit 5
}

echo "Erfolgreich"
exit 0
[/code]

Das Ganze als ~/bin/makebook gespeichert und ausführbar (chmod +x ~/bin/makebook) gemacht, ist der Aufruf einfach mit
[code]
makebook Anleitung.pdf
[/code]
möglich.

MfG, Christian Knorr


Bewertung: 162 Punkte bei 13 Stimmen.
Den Beitrag bewerten: Gut / Schlecht

Infos zur Publikation

LU 11/2014: VIDEOS BEARBEITEN

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

Artikelsuche
Erwin Ruitenberg, 09.10.2014 07:51, 1 Antworten
Ich habe seit einige Jahre ein Dugisub LinuxUser. Dann weiß ich das irgendwann ein bestimmtes Art...
Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 6 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...