Home / LinuxUser / 2001 / 02 / The Answer Girl

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Mandriva gibt Distribution in die Hände der Community
(268 Punkte bei 24 Stimmen)
Neues vom Systemd
(161 Punkte bei 4 Stimmen)
Mandriva in Nöten
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Geheftet

The Answer Girl

Erstmal die kleineren Brötchen

Ein kurzer Blick auf die Manpages zu pstops und mpage verspricht die Lösung für ambitionierte Heftchenherausgeber/innen zwar mit ersterem Tool, doch wirkt letzteres leichter bedienbar. Da es zudem perfekt auf die Aufgabe "Papierstapelverkleinerung durch Drucken mehrerer logischer Seiten auf einer A4-Seite" zugeschnitten scheint, lassen wir zunächst unsere Faulheit siegen.

mpage ist oft so vorkonfiguriert, dass sein Output direkt an den Defaultdrucker geht. Was später nützlich ist, wollen wir zunächst vermeiden, denn was soll die Papiersparerei, wenn wir auf dem Weg dahin massenweise Probeausdrucke produzieren? Wie es sich für ein ordentliches Unix-Filterprogramm gehört, kann mpage seine PostScript-Ausgabe über den "Pfeil" > in eine Datei umleiten.

Mit altgedienten PostScript-Anzeigeprogrammen wie gv und ghostview oder der (aus dem KDE-Dateimanager auch per Drag&Drop bedienbaren) KDE-Alternative kghostview lässt sich die so erzeugte Testdatei stets inspizieren, bevor man sie auf Papier bannt.

So ausgestattet fällt die erste mpage-Übung nicht schwer: Glaubt man der Manpage, bannt mpage -2 diplomarbeit.ps > korrektur.ps die Datei diplomarbeit.ps so auf's virtuelle Blatt, dass immer eine ungerade und die darauf folgende gerade Seite (also insgesamt 2) auf einer A4-Seite landen.

Netterweise hat mpage um jede logische Seite einen hübschen Rahmen gezogen – doch beim Ausdruck sitzt der und damit der gesamte Blattinhalt alles andere als zentriert auf der A4-Seite. Da stimmt wohl was mit dem Format nicht…

Tatsächlich kennt mpage die Option -b, hinter der ohne Leerzeichen das Papierformat angegeben werden muss. Wenn die mit mpage -x erhältliche Kurzbeschreibung des Programms mit

-b papersize: A4|Letter|Legal (default US letter)

erklärt, dass die einkompilierte Voreinstellung das "US letter"-Format ist, braucht die Verschiebung nicht wundern. Dann bleibt wohl nichts anderes übrig, als das mpage-Kommando um -ba4 anzureichern, sofern wir auf A4 ausdrucken. Gerade wenn man ohnehin unnummerierte Seiten auf Papier bannen will (wie die, die z.B. Netscape 4.x unter File/Save as... produziert, wenn man als Format for saved document PostScript auswählt), hilft ein -X, das den Namen der Datei sowie das Datum in der Kopfzeile verewigt, beim Ordnunghalten. Die Option -o wie "outlines off" schaltet den per Default erzeugten Rahmen um jede einzelne logische Seite ab.

All das lässt sich bei Netscape u.a. natürlich auch ohne das Zwischenspeichern in einer echten PostScript-Datei nutzen: Ein mpage -ba4 -X |lpr als Print Command wie im in Abbildung 1 gezeigten File/Print-Dialog druckt die angezeigte Webseite seitennummeriert und mit der Quelle stdin versehen auf A4-Papier aus, wobei – die Option -4 muss als Standardeinstellung nicht mit angegeben werden – vier logische Seiten auf einer A4-Seite landen.

Abbildung 1: Mit mpage die Druckausgabe von Netscape beeinflussen

Diese werden dabei wie in Abbildung 2 angeordnet – links, wenn Netscape die logischen Seiten im Portrait-Format, rechts in Landscape ausrichtet, bevor mpage zum Zuge kommt. Will man auf einem hochkanten Blatt oben von links nach rechts die logischen Seiten 1 und 2 sowie darunter 3 und 4 haben, muss man die mpage-Option -a einschalten.

Abbildung 2: Defaultanordnung logischer Seiten bei mpage: rechts lag das Ausgangsmaterial im Querformat vor, links im Hochformat

Der aufmerksamen Manpage-Leserin ist inzwischen natürlich längst aufgefallen, dass mpage neben weiteren spannenden Optionen auch eine beherrscht, die das "Pipen" der mpage-Ausgabe ins Druckkommando lpr (so überhaupt nötig) überflüssig macht: mpage -P druckt von sich aus auf dem Standarddrucker aus (wie erwähnt kann man dieses Flag je nach Vorkonfiguration ggf. ganz weglassen), mit -Pdruckername wird wie bei lpr ein anderer eingerichteter Drucker ausgewählt.

Doch bei aller Schwelgerei in mpage-Optionen lässt sich nicht verhehlen, dass sich Enttäuschung breit macht: Heftchen lassen sich nicht mal mit -E (jede 1. und 4. Seite gemeinsam auf einer Seite) und -E (jede 2. und 3. Seite auf einer Seite) erstellen – es sei denn, es handelt sich um ein sehr dünnes Heft, das lediglich aus einem einzigen Bogen Papier besteht.

Ordnung ins Chaos

Da empfiehlt sich pstops schon dem Namen nach als Allheilmittel in Sachen PostScript-interner Umwandlung. Doch auch dieses Tool kann nicht hexen und erwartet, dass die Quelldatei die Konventionen zur Strukturierung von PostScript-Dokumenten ("Document Structuring Conventions" – DSC) des PostScript-Erfinders Adobe einhält.

Leider tun das weder alle PostScript-ausgebende Programme, noch beherrscht pstops sämtliche DSC-Anforderungen von A bis Z, sodass es vorkommen kann, dass pstops' Künste versagen.

Doch das soll nicht als Ausrede dienen! Jetzt heißt es, tapfer zu sein und der pstops-Manpage ins Auge zu sehen. Und damit wir den Wald vor lauter Bäumen auch sehen, tun wir gut daran, erst einmal zu spezifizieren, was wir wollen.

Wir möchten unsere Gedichtsammlung gern so ausdrucken, dass ein Heftchen heraus kommt. Damit das geht, muss die logische Seitenanzahl durch vier teilbar sein – pstops wird am Ende soviel Leerseiten hinzu fügen, dass das passt. Auf der Vorderseite eines A4-Bogens landen dann jeweils die erste (rechts) und die letzte (links), die dritte (rechts) und die vorvorletzte (links) usw. Auf die Rückseite von Bogen 1 kommen Seite 2 (links) und die vorletzte Seite (rechts). Bei einem 12-seitigen Heftchen sieht das aus wie in Tabelle 1a.

Da wir pstops jedoch schlecht mit einer solchen Tabelle füttern können, müssen wir das Ganze ein wenig formalisieren. Wenn wir die zu druckenden Seiten gedanklich so durchzählen, dass wir aller vier Seiten neu mit 0 beginnen (bei zwölf Seiten also 0 1 2 3 0 1 2 3 0 1 2 3), ergibt sich folgendes Schema: Auf die erste zu bedruckende Vorderseite kommt rechts die erste noch nicht gedruckte logische Seite, die beim Durchzählen gedanklich mit 0 markiert wurde. Links daneben wird die letzte ungedruckte Seite, also die erste Seite von hinten, gesetzt, wobei die Division ihrer Seitenzahl minus 1 durch vier den Rest 3 ergibt.

Auf die Rückseite kommt mit dem Rücken zur letzten Seite die zweite Seite von hinten (Rest: 2), links daneben findet die zweite Seite von vorn (Rest 1) ihren Platz.

Das ganze Prozedere – wir teilen Seitenzahl-1 durch 4 und schreiben den Rest auf – nennt sich übrigens modulo-Division.

Die ersten vier logischen Seiten sind damit abgehakt, die alte Seite 3 wird zur neuen logischen Seite 1, und wir beginnen wieder von neuem mit der Modulo-Durchnummerierung: 0 1 2 3 0 1 2 3. Hier – oh Wunder – wiederholt sich das Schema: Auf die nächste Vorderseite gehören die erste Seite von hinten mit Rest 3 und die erste Seite von vorn mit Rest 0. Die Rückseite teilen sich wiederum 1 von vorn und 2 von hinten.

Das selbe Spielchen wiederholt sich mit den verbleibenden vier logischen Seiten, und mit dem so gefundenen Schema (vgl. Tabelle 1b) hätten wir den Anfang der Druckseitenspezifikation gefunden, die in der pstops-Manpage so angegeben ist:

pstops […]
 pagespecs […]
[…]

 pagespecs folgt folgender Syntax:
     pagespecs   = [modulo:]specs
     specs       = spec[+specs][,specs]
     spec        = [-]pageno[L][R][U][@scale][(xoff,yoff)]

Wir haben den Teiler 4 für den modulo-Wert, die Vorderseiten-specs beginnen mit der spec für die linke Seite: einem -, weil wir eine Seite von hinten haben wollen, gefolgt von der pageno 3. Da wir noch eine spec für die rechte Seite dazu wollen, gibt es ein + und eine neue spec: kein Minus diesmal, da wir eine logische Seite von vorn nehmen, als pageno hatten wir die 0 heraus gefunden.

Damit lauten die pagespecs für alle Druckvorderseiten bislang:

4:-3+0

Analog hilft ein Blick in Tabelle 1b dabei, die bislang gefundene Seitenbeschreibung für die Druckrückseite aufzuschreiben:

4:1+-2

Tabelle 1a: Blatteinteilung für ein 12-seitiges A5-Heftchen

A4-Blatt Nr.

Vorderseite

Rückseite

links

rechts

links

rechts

1

12

1

2

11

2

10

3

4

9

3

8

5

6

7

Tabelle 1b: … auf eine Formel gebracht

Noch nicht berücksichtigte Seiten durchgezählt von 0 bis 3:

3

0

1

2

Von vorn (+) oder von hinten (-)?

-

+

+

-

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

Hits
Wertung: 69 Punkte (1 Stimme)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 06/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 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 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Adobe AIR
Adobe-AIR-Programme installieren und (manuell) starten
Tim Schürmann, 14.05.2012 13:09, 0 Kommentare

Es gibt sie noch: neue Anwendungen, die Adobes Integrated Runtime voraussetzen. Aktuellstes und vermutlich auch größtes Beispiel ist das Adventure Botanicula

Aktuelle Fragen

gibt es ein Kommandozeilen Tool, um ein X11-Fenster in ein Anderes einzubetten?
GoaSkin , 21.05.2012 16:44, 0 Antworten
Das XEmbed-Protokoll ist u.A. dazu gedacht, dass man eine X11-Anwendung in eine andere wie ein Wi...
Apache2, Options -Indexes geht nicht
no no, 12.05.2012 19:01, 8 Antworten
Habe in apache2.conf folgendes stehen: Options -Indexes ...
LInux auf Dell LS H500
Andreas Endresl, 09.05.2012 08:54, 2 Antworten
Habe einen alten Dell Latitude LS H500 nur mit ext. Floppy und CD es geht nur immer eines von den...
Datenwiederherstellung unter Ubuntu 12.04 mit "Simple Backup" nach Umzug von Linux Mint
Christian Lottmann, 07.05.2012 13:33, 0 Antworten
Vor dem Umzug auf Ubuntu 12.04 habe ich unter Linux MInt mit "Simple Backup" voll (15.4.2012) und...
DKMS für den propritären NVIDIA-Treiber
Commander Data, 26.04.2012 22:02, 2 Antworten
Hallo an die Gemeinde. Ich habe hier ein interessantes Stück openSuSE gefunden. http://forums.op...