Drehen, schubsen, klein machen

Das ist schon einmal sehr schön, doch wie bekommen wir überhaupt zwei logische A4-Seiten auf eine? Ganz einfach, werden Sie sagen: Sie müssen lediglich um 90 Grad gedreht, um die Hälfte verkleinert und auf den richtigen Platz verschoben werden.

Leider entnehmen wir der Manpage zu pstops, dass diese Operationen immer in der Reihenfolge

  • Verschiebung um xoff in x-Richtung und yoff in y-Richtung,
  • 90-Grad-Rotation entgegen dem Uhrzeigersinn (L wie "links"), im Uhrzeigersinn (R – "rechts") oder 180-Grad-Rotation ("Umkehrung" – U) und ggf.
  • Skalierung auf scale der Ausgangsgröße ausgeführt werden.

Damit nehmen wir uns am besten ein paar Blatt A4-Papier zur Hand und spielen ein wenig mit den geometrischen Operationen.

Abbildung 3: 1. Schritt: horizontales Verschieben der A4-Seite

Legen wir das Blatt hochkant hin, wie es bei den meisten Druckern üblich ist: In diesem Format und an dieser Stelle müssen wir auch nach all den Transformationen wieder landen. Wenn wir uns entscheiden, das Blatt entgegen dem Uhrzeigersinn um die linke untere Ecke zu drehen, bleibt der linken unteren Ecke der zukünftigen linken Blatthälfte demnach nichts anderes übrig, als rechts unten zu landen. Dazu müssen wir das hochformatige Blatt zunächst horizontal verschieben, und zwar so weit, wie es breit ist (Abbildung 3).

Da ein A4-Blatt 21 cm breit und 29.7 cm hoch ist, erweitern wir unsere pagespecs für Vorderseiten zu

4:-3(21cm,0)+0

und für Rückseiten auf

4:1(21cm,0)+-2

Dann können wir ungestört wie in Abbildung 4 links herum um 90 Grad rotieren, was unsere pagespecs wie folgt erweitert:

4:-3L(21cm,0)+0
 4:1L(21cm,0)+-2
Abbildung 4: 2. Schritt: Rotation entgegen dem Uhrzeigersinn

Jetzt liegt die jeweils linke Seite so da, dass wir sie nur noch verkleinern müssen, damit sie am passenden Ort mit der passenden Größe zu liegen kommt. A5, die Zielgröße, ist halb so groß wie A4. Wer jetzt allerdings einfach Höhe und Breite halbiert, kommt – wie Abbildung 5 zeigt – zu einem falschen, da zu kleinen Ergebnis.

Das ist nicht verwunderlich, denn die Halbierung bezieht sich nicht auf die Seitenabmessungen, sondern auf den Flächeninhalt. Dummerweise interessiert sich pstops bei der Skalierung nicht um das Verhältnis der Flächeninhalte und will tatsächlich Seitenverhältnisse sehen, wobei unterschiedliche Skalierungen in x- und y-Richtung nicht möglich sind.

Ein Blick auf Abbildung 5 oder das "lebende Papier-Objekt" verrät zum Glück, dass die gedrehte Seite soweit verkleinert werden muss, dass die längere Seite der alten A4-Breite entspricht. Die Breite einer A5-Seite wiederum entspricht der Hälfte der A4-Länge, mithin 29.7/2 cm = 14.85 cm.

Setzt man die Breiten von A5 und A4 (14.85 cm : 21 cm) oder auch die Längen (21 cm : 29.7 cm) miteinander ins Verhältnis, so erhält man den Skalierungsfaktor 0.7. Abbildung 6 zeigt, dass wir damit genau richtig liegen und unsere Seitenspezifikationen somit wie folgt ergänzen können:

4:-3L@0.7(21cm,0)+0
 4:1L@0.7(21cm,0)+-2
Abbildung 5: Falsch: Verkleinern der Seitenabmessungen um die Hälfte
Abbildung 6: 3. Schritt: Verkleinern des Flächeninhalts um die Hälfte

Bleiben die rechten Seiten: Was Rotation und Skalierung betrifft, können wir alles beim Alten lassen:

4:-3L@0.7(21cm,0)+0L@0.7
 4:1L@0.7(21cm,0)+-2L@0.7

Wir müssen dazu lediglich unser A4-Blatt zu Beginn ein bisschen anders verschieben: nicht nur die 21 horizontalen Zentimeter, sondern auch noch um die Hälfte der A4-Länge (mithin 14.85 cm) nach oben (Abbildung 7).

Damit sehen unsere finalen pagespecs so aus:

4:-3L@0.7(21cm,0)+0L@0.7(21cm,14.85cm)
 4:1L@0.7(21cm,0)+-2L@0.7(21cm,14.85cm)
Abbildung 7: Die Schritte 1 bis 3 für zukünftige rechte Seitenhälften

Gut gedruckt, Löwe

Menschen mit Druckern, die von sich aus doppelseitig ausdrucken, haben es jetzt gut, denn sie dürfen alle Seiten auf einmal in eine Datei schreiben:

pstops -pa4 "4:-3L@0.7(21cm,0)+0L@0.7(21cm,14.85cm),4:1L@0.7(21cm,0)+-2L@0.7(21cm,14.85cm)" gedichte.ps gedichteheft.ps

Als Seitengröße geben wir mit -p (wie "page") a4 an. Die Fehlermeldung

pstops: page specification error:
   <pagespecs> = [modulo:]<spec>
   <spec>      = [-]pageno[@scale][L|R|U][(xoff,yoff)][,spec|+spec]
                 modulo<=1, 0<=pageno<modulo

lässt uns jedoch aufschrecken und noch einmal gründlich die Manpage studieren. Tatsächlich, zum Kombinieren der Spezifikationen für Vorder- und Rückseiten in einer einzigen pagespec darf modulo: nur einmal zu Beginn auftauchen:

pstops -pa4 "4:-3L@0.7(21cm,0)+0L@0.7(21cm,14.85cm),1L@0.7(21cm,0)+-2L@0.7(21cm,14.85cm)" gedichte.ps gedichteheft.ps

Die weniger glücklichen Benutzer(innen) einseitiger Drucker generieren zwei Dateien für die Vorderseiten…

pstops -pa4 "4:-3L@0.7(21cm,0)+0L@0.7(21cm,14.85cm)" gedichte.ps gedichteheft-vorder.ps

… und die Rückseiten:

pstops -pa4 "4:1L@0.7(21cm,0)+-2L@0.7(21cm,14.85cm)" gedichte.ps gedichteheft-rueck.ps

… und müssen den Papierstapel des Ausdrucks lpr gedichteheft-vorder.ps noch einmal in den Papierbehälter einlegen. In Mehrbenutzerumgebungen empfiehlt es sich, damit bis zu einem Zeitpunkt zu warten, wo Ausdrucke von Mitbenutzer(innen) unwahrscheinlich sind, um nicht urplötzlich den Geschäftsbrief der Kollegin auf der Rückseite des heißesten Liebesgedichts zu finden.

Doch selbst wenn das Timing stimmt, gilt es, die richtige Lage des Papierbogens heraus zu finden – eine nicht immer einfache Aufgabe, der man am besten so begegnet, dass man gedichteheft-vorder.ps in gv o.ä. lädt, lediglich die erste Seite markiert (Abbildung 8) und nur diese mit Print Marked ausdruckt.

Abbildung 8: Mit dem dritten Markierungsbutton unterhalb von Redisplay markiert man in gv die ausgewählte Seite

Hat man heraus gefunden, wie sich die erste Seite von gedichteheft-rueck.ps auf dem so bedruckten Blatt korrekt abbilden lässt, kann man mit den ersten zwei Seiten den Test fahren, ob die mit gedichteheft-vorder.ps bedruckten Blätter auch wirklich so angeordnet sind, dass die Seiten in gedichteheft-rueck.ps wirklich auf den passenden Vorderseiten landen.

Stellt man hier fest, dass der Drucker die gedichteheft-vorder.ps-Seiten so ausspuckt, dass gedichteheft-rueck.ps besser mit der letzten Rückseite zuerst gedruckt wird, hilft z.B. mpage -r -1 -o.

Glossar

LaTeX

Eine professionelle Textsatzumgebung, bei der die Formatierungshinweise wie bei HTML als Klartext-"Befehle" in den ASCII-Dokumenttext geschrieben und von den Programmen latex resp. tex entsprechend den Regeln des Schriftsatzes umgesetzt werden. Besonders gut für wissenschaftliche Texte nahezu unbegrenzter Länge, aber auch für Briefe oder Folien geeignet.

dvips

Der dvi-nach-PostScript-Konverter erzeugt PostScript-Code aus dem von TeX/LaTeX generierten geräteunabhängigen ("device independent", daher der Name) dvi-Format. Meist ist dvips so vorkonfiguriert, dass ein dvips dateiname.dvi den PostScript-Code direkt an den Standarddrucker schickt. Mit der Option -o dateiname.ps erzwingt man in diesem Fall, dass dvips ihn stattdessen in die Datei dateiname.ps "druckt".

stdin

Die Standardeingabe, in der Shell normalerweise die Tastatur. Hier bei Netscape zeigt sich an dieser Angabe lediglich, dass die Druckaufbereitung nicht direkt von der dargestellten Datei aus-, sondern über Filter geht, deren Ausgabe wie in einer Pipe (|) als Standardeingabe für das nächste Kommando gilt.

[]

In der Backus-Naur-Schreibweise, in der Manpages im Abschnitt Synopsis die gesamte Syntax eines Kommandos auf einen Schlag angeben, sind Argumente in eckigen Klammern optional.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Related content

  • 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.
  • TurboPrint 1.40
    Ob es sich um liebevoll gestaltete Einladungskarten handelt oder eine Bewerbung: nur ein perfekter Ausdruck stellt die Anwender/in am Ende zufrieden. Die Druckertreiber von TurboPrint treten hier mit hohem Anspruch an.
  • 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.
  • Der lange Weg der Druckdaten
    Welche Wege und Umwege nimmt eine Datei, bis ihr Inhalt farbig oder schwarz auf weiß zu Papier gelangt?
  • KDEPrint
    Mit dem neuen Print-Framework KDEPrint macht KDE 2.2 in Drucksachen einen Riesensprung nach vorn – Grund genug für eine Erkundungstour.
Kommentare

Infos zur Publikation

title_2014_08

Digitale Ausgabe: Preis € 5,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

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...
Öhm - wozu Benutzername, wenn man dann hier mit Klarnamen angezeigt wird?
Thomas Kallay, 03.07.2014 20:30, 1 Antworten
Hallo Team von Linux-Community, kleine Zwischenfrage: warum muß man beim Registrieren einen Us...
openSUSE 13.1 - Login-Problem wg. Fehler im Intel-Grafiktreiber?
Thomas Kallay, 03.07.2014 20:26, 8 Antworten
Hallo Linux-Community, habe hier ein sogenanntes Hybrid-Notebook laufen, mit einer Intel-HD460...
Fernwartung für Linux?
Alfred Böllmann, 20.06.2014 15:30, 7 Antworten
Hi liebe Linux-Freunde, bin beim klassischen Probleme googeln auf www.expertiger.de gestoßen, ei...