Home / LinuxUser / 2001 / 02 / The Answer Girl

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Eingedost
(161 Punkte bei 4 Stimmen)
Aufteiler
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.

Geheftet

The Answer Girl

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

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

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

Abbildung 5: Falsch: Verkleinern der Seitenabmessungen um die Hälfte

Abbildung 6

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

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

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.

Tip a friend    Druckansicht Bookmark and Share
Kommentare

Hits
Wertung: 108 Punkte (5 Stimmen)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 05/2014

Aktuelle Ausgabe kaufen:

Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,95 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 60,60) können Sie im Medialinx-Shop bestellen.

Tipp der Woche

Bilder vergleichen mit diffimg
Bilder vergleichen mit diffimg
Tim Schürmann, 01.04.2014 12:40, 1 Kommentare

Das kleine Werkzeug diffimg kann zwei (scheinbar) identische Bilder miteinander vergleichen und die Unterschiede optisch hervorheben. Damit lassen sich nicht nur Rätsel a la „Orignial und Fäls...

Aktuelle Fragen

programm suche
Hans-Joachim Köpke, 13.04.2014 10:43, 8 Antworten
suche noch programme die zu windows gibt, die auch unter linux laufen bzw sich ähneln sozusagen a...
Funknetz (Web-Stick)
Hans-Joachim Köpke, 04.04.2014 07:31, 2 Antworten
Bei Windows7 brauche ich den Stick nur ins USB-Fach schieben dann erkennt Windows7 Automatisch, a...
Ubuntu 13.10 überschreibt immer Windows 8 Bootmanager
Thomas Weiss, 15.03.2014 19:20, 8 Antworten
Hallo Leute, ich hoffe das ich richtig bin. Ich habe einen Dell Insipron 660 Ich möchte gerne Ub...
USB-PTP-Class Kamera wird nicht erkannt (Windows-only)
Wimpy *, 14.03.2014 13:04, 15 Antworten
ich habe meiner Frau eine Digitalkamera, AGFA Optima 103, gekauft und wir sind sehr zufrieden dam...
Treiber
Michael Kristahn, 12.03.2014 08:28, 5 Antworten
Habe mir ein Scanner gebraucht gekauft von Canon CanoScan LiDE 70 kein Treiber wie bekomme ich de...