*

Allgemeines

Was sind Postscript-Dateien?

Postscript ist eine von Adobe entwickelte stackbasierte Programmiersprache, die vor allem dazu genutzt wird, um Seiten zu beschreiben. Zur Verarbeitung der Kommandos zu Rasterdaten wird ein Postscript-Interpreter (engl. RIP, Raster Image Processor) gebraucht. Postscript wird vor allem im Druck eingesetzt, professionelle Drucker und Belichter haben dafür einen Hardware-Postscript-Interpreter eingebaut oder vorgeschalten, der diese Dateien direkt verarbeiten kann.

Es gibt mehrere Level von Postscript, die untereinander abwärts kompatibel sind. (In Klammern steht das Jahr der Veröffentlichung der Spzifikation.)

  • Postscript Level 1 (1985)
  • Postscript Level 2 (1991)
  • Postscript Level 3 (1997)

D.h. ein PS Level 2 Drucker kann Dateien in PS Level 1 und Level 2 verarbeiten. Bei PS Level 3 gibt er eine Fehlerseite mit der Meldung aus, dass diese Postscript-Version nicht unterstützt wird.

Eine spezielle Form von PostScript (Endung .ps) ist das Format Encapsulated PostScript (Endung .eps), das zum Austausch einzelner Grafiken zwischen Programmen dient (z.B. Verwendung von Illustrationen oder Diagrammen in der Textverarbeitung).

Ein Nutzer hat in der Regel in folgender Form Kontakt mit Postscript:

  1. Eine Postscript-Datei muss zunächst erzeugt werden.
  2. Dann sollte die erzeugte Postscript-Datei zur Vermeidung von Fehldrucken mit einem Previewer am Bildschirm kontrolliert werden.
  3. Schließlich wird die Postscript-Datei gedruckt.

Was sind PDF-Dateien?

PDF ist ein Format zur Beschreibung von Seiteninhalten mit dem Ziel der Anwendung im Dokumentenaustausch. Es basiert (wie auch SVG) auf dem gleichen "Adobe Grafik-Modell" wie Postscript, hat aber folgende Eigenschaften:

  • PDF hat intern eine klare baumartige Struktur von Objekten mit Referenzen.
  • PDF ist keine Programmiersprache (es gibt keine Schleifen oder andere Kontrollstrukturen, keine Makrodefinitionen etc.), zur Anzeige ist kein Interpreter nötig.
  • Kompakte Repräsentation durch Nutzung von Kompressionsalgorithmen für Datenobjekte.
  • PDF enthält in der Regel keine gerätespezifischen Informationen. Dies wurde aber mit steigender Popularität von PDF immer mehr aufgeweicht.

Auch von PDF gibt es mehrere Versionen. Heute noch relevant sind:

  • PDF 1.2 (Acrobat 3.0, 1996)
  • PDF 1.3 (Acrobat 4.0, 1999)
  • PDF 1.4 (Acrobat 5.0, 2001)
  • PDF 1.5 (Acrobat 6.0, 2003)

Aufgrund seiner Vorzüge ist PDF seit einiger Zeit das Standardformat für die Veröffentlichung von elektronischen Dokumenten. Dazu hat nicht zuletzt auch das Marketing der Firma Adobe und die auf allen Rechnerplattformen kostenfrei nutzbaren Viewer beigetragen.

Erzeugen

Wie kann ich Postscript-Dateien erzeugen?

  • Über eine Anwendung

Die Erzeugung eines PostScript-Dokuments erfolgt üblicherweise über die Anwendung mit der Funktion "Drucken" und Anklicken des Kästchens "Ausgabe in Datei" (evtl. mit Auswahl eines URZ-Druckers wie z.B. zille, raffael oder nolde) und Angabe eines geeigneten Dateinamens (name.ps).

Besonders unter MS Windows kann es erforderlich werden, einen geeigneten Treiber für einen PostScript-Drucker zu installieren.

Weitere anwendungsspezifische Ausgabemöglichkeiten ("Speichern unter", "Exportieren" usw.) mit Auswahl des Ausgabeformates .ps oder .eps sind in den Dokumentationen der entsprechenden Anwendungen nachzulesen.

  • Über Konvertierungswerkzeuge

Hier nur eine grobe Übersicht. Achtung: die angegebenen Kommandos müssen nicht auf allen Rechnerplattformen verfügbar sein. In den Manuals sind die Verwendungsmöglichkeiten beschrieben (z.B. man a2ps).

Konvertierung ...

    • von ASCII-Texten nach ps: a2ps, text2ps, enscript, prtpost, lptops
    • von ps nach ps: ps2ps
    • von HTML nach ps: html2ps
    • von DVI nach ps: dvips
    • Es gibt noch universelle Konvertierungswerkzeuge wie z.B. convert

  • Spezialisten können natürlich auch in der PostScript-Sprache Dokumente programmieren.

Wie kann ich PDF-Dateien erzeugen?

Vorbemerkungen:

Es gibt mittlerweile viele Programme, die PDF erzeugen können. Wichtig ist aber, dass man ein Werkzeug benutzt, dass gutes PDF generiert.

Was heißt nun gutes PDF? Das PDF-File muss

  • syntaktisch richtig sein und eine Gültigkeitsprüfung passieren,
  • mit allen üblichen PDF-Viewern auf verschiedenen Plattformen problemlos anzeigbar sein,
  • mit allen üblichen PDF-Viewern auf üblichen Druckern ausdruckbar sein und
  • alle benutzten Nicht-Standard-Zeichensätze eingebettet haben.

Grundsätzlich gibt es zwei Wege, PDF zu erstellen:

  1. Über Postscript: Anwendung -> Postscript -> PDF. Dieser Weg steckt auch hinter den meisten Software-PDF-Druckern.
  2. Direkt: Anwendung -> PDF.

Folgende Programme sind deshalb geeignet zur Erzeugung von PDF:

Windows XP!

  • FreePDF XP: sollte "erste Wahl" für die PDF-Erzeugung sein. Die Software stellt ein Frontend zu Ghostscript dar, die PDF-Files sind daher "sauber" und auf verschiedenen Plattformen stabil auswertbar. Über die Ausgabeprofile von FreePDF XP kann man auch viele erweiterte Optionen einstellen. Für Windows-Versionen bis Windows 2000 gibt es FreePDF 2.0.

  • Acrobat Distiller: Bestandteil des kommerziellen Produkts Adobe Acrobat. Dieses Programm hat vielfältige Einstellungsmöglichkeiten, z.B. Auswahl von eingebetteten Schriften.

Zu beachten ist jedoch, dass die jeweils aktuelle Version Features enthält, die auf anderen Plattformen bzw. durch Druckertreiber unbekannt sind und damit zu Problemen führen. Stellen Sie beim Speichern in Acrobat die zu verwendende Version auf eine niedrigere als die aktuellel, z.B. in Acrobat 6 speichern sie in PDF 1.3 oder 1.4.

Zusätzlich gibt es im Acrobat-Paket den PDFWriter. Dieser stellt eine Makrosammlung für Microsoft Office dar und ermöglicht so die Erhaltung von Links und anderen spezifischen Elementen, die ein Postscript-Treiber ignorieren würde.

  • PDFLaTeX oder LaTeX + dvips + ps2pdf): die so erzeugten PDF-Dateien sind hervorragend zur Präsentation im Internet und zur Weiterverarbeitung (Drucken) geeignet. Zum Umgang mit LaTeX siehe weitere Frage.

  • Der direkte Export von PDF aus den meisten Programmen, die dies anbieten (OpenOffice, Sodipodi, ...) produziert oft Dateien von geringerer Qualität, als Ghostscript und Acrobat Distiller. Dies betrifft z.B. die Umwandlung von Schriften in Vektorgrafiken, Darstellung von Kreisen als Linienstücke etc.

Fedora Core 1!

ps2pdf file.ps

Dieses Werkzeug aus dem Ghostscript-Paket kann als Standard betrachtet werden.

Werden PDF-Dokumente für die öffentliche Nutzung bereitgestellt (z.B. per WWW), so sollte unbedingt überprüft werden, ob sich diese Dokumente auf öffentlichen Druckern innerhalb der TU ausgeben lassen - und zwar sowohl unter Linux als auch unter Windows. Es sollte dabei wenigstens versucht werden, 2 Seiten mit der Option duplex (Papier vorn und hinten bedruckt) zu drucken.

Dabei sollten bei Web-Dokumenten möglichst neben der PDF-Version zusätzlich eine spezielle Druckversion des Dokuments in einem geräteunabhängigen Postscriptformat angeboten werden. Insbesondere dann, wenn die PDF-Datei mittels Distiller erzeugt wurde, liegt ja schon eine fertige Postscriptdatei vor.

Häufig werden innerhalb der TU Vorlesungsskripte zum Download (und Druck) angeboten, wobei die Seiten bezüglich Layout und Inhalt den "Folien" der Vorlesung entsprechen (wenig Text, große Schrift). Hierbei wäre es aus Ressourcengründen unbedingt sinnvoll, dass die Druckversion in der Form erzeugt wird, dass mehrere Folien auf einer Seite zusammengefasst werden.

Erzeugung von PDF-Dokumenten mit Textverarbeitungsprogrammen

Aus Erfahrung müssen wir aber feststellen, dass die Verwendung von PDF-Dokumenten problembehaftet sein kann, insbesondere beim Drucken. Der Autor eines Dokuments sollte deshalb bei der Erzeugung des PDF-Formats einige wichtige Regeln beachten bzw. nur einen sicheren, erprobten Weg begehen. Der Autor sollte vor allem immer bedenken, dass die Ausgabe des Dokument möglichst auf allen relevanten Rechnerarchitekturen und mit den Werkzeugen des "Lesers" funktionieren muss! Das heisst, die Erzeugung des PDF-Dokuments muss so ablaufen, dass das Ergebnis streng plattform- und softwareunabhängig ist.

Die Benutzung des bei Installation des Programmes Adobe Acrobat (unter Windows) erzeugten Druckers Acrobat Distiller bzw. PDF-Writer und der entsprechenden Macros ist deshalb problematisch. Auch die programminterne Wandlung in PDF-Dateien aus einigen Anwendungsprogrammen sollte nicht genutzt werden.

Die sichere Methode ist, in zwei Schritten zu arbeiten:

  1. Die gewünschte Datei aus dem Programm heraus in eine Postscript-Datei zu wandeln. Das erfolgt mittels der Funktion "Drucken in Datei" unter Auswahl eines URZ-Druckers (z.B. zille, bosch oder nolde [HP Laserjet 5M]). Gegebenfalls sollten die erzeugten Seiten (möglichst auch die letzte Seite) zunächst am Bildschirm mit einem Postscript-Viewer (Ghostview/Ghostscript) betrachtet werden.
  2. Die Postscript-Datei wird mit der aktuellsten Version des Adobe Acrobat Distillers (Windows) bzw. mit dem Ghostscript-basierten Skript ps2pdf (Linux, Windows, Solaris) gewandelt.

OpenOffice, MS Office bzw. WordPerfect Office für Windows

  1. Im jeweiligen Programm die Datei einlesen. Im Menü "Drucken" den URZ-Drucker nolde o.ä. auswählen. Mittels Anhaken des Kästchens "Ausgabe in Datei umleiten" eine Postscript-Datei (name.ps) erzeugen.
  2. Mittels gsview das Aussehen der Postscript-Datei kontrollieren.
  3. Adobe Acrobat Distiller aufrufen. Unter Menü "Datei - Öffnen" die Postscript-Datei auswählen, den Namen der gewünschten PDF-Datei angeben. Im Fenster "Optimierung" gewünschte Optimierung wählen (im Normalfall reicht eBook, Optimierung ist jedoch relativ unkritisch).

StarOffice für Linux (und Solaris)

  1. In StarOffice die Datei einlesen. Im Datei-Menü unter "Drucken" den URZ-Drucker nolde o.ä. auswählen. Durch Anhaken des Kästchens "Ausdruck in Datei" eine Postscript-Datei name.ps erzeugen.
  2. Mittels gv name.ps das Aussehen der Postscript-Datei kontrollieren.
  3. Eingabe: ps2pdf name.ps name.pdf

Worauf ist beim Erzeugen von PDF generell zu achten?

  • Die Auflösung von Grafiken und Bildern sollte nicht unnötig groß sein.
  • Je nach Zielstellung ist abzuwägen, ob die Erzeugung von PDF in einer älteren Version nicht ausreicht (z.B. Kompatibilität zu Acrobat 5 anstelle von Acrobat 6 einstellen).

Worauf ist zu achten, wenn mittels LaTeX ein PDF-File erzeugt werden soll?

Direkter Weg (empfohlen)

pdflatex file (für file.tex)

Dabei ist zu beachten:

  1. Fontauswahl
    • unbedingt T1-Fonts benutzen! (\usepackage[T1]{fontenc})
    • zusätzlich dazu: Einbinden des Zusatzpakets ae
    • ODER: ausschließlich Postscript-Fonts benutzen (Times, Helvetica o.a.), z.B. \usepackage{helvet}

  1. Einbindung von Bildern und Grafiken

Bilder müssen im PDF-, PNG- oder JPG-Format vorliegen (PDFLaTeX kann EPS-Bilder nicht verarbeiten). Zur Einbindung selbst sollte das Kommando \includegraphics aus dem Zusatzpaket graphicx benutzt werden.

Alternativer Weg

  1. Schritt: latex file (für file.tex)
  2. Schritt: dvips -Ppdf -G0 -o file.ps file
  3. Schritt: ps2pdf file.ps file.pdf

Bei dieser Verarbeitungsweise können weiterhin Bilder im EPS-Format benutzt werden, die Problematik der Fontauswahl ist aber die gleiche wie bei dem oben beschriebenen "direkten" Weg.

Eine ausführliche englischsprachige Darstellung des Problems qualitativ schlechter PDF-Files findet sich in der FAQ der UK TeX-Nutzer.

Anzeigen

Anzeigen von Postscript-Dateien

Der Software-Postscript-Interpreter: Ghostscript

  • Ghostscript ist das Standardprogramm zum Anzeigen von Postscript-Files am Bildschirm. Ab der Version 3.3 können auch PDF-Dateien (Portable Document Format) dargestellt werden und ab Version 4 kann Ghostscript neben vielen anderen Funktionen Postscript-Dateien in PDF konvertieren und ist mit wenigen Einschränkungen als Ersatz für den Acrobat Distiller geeignet. Aktuell installierte Versionen sind 7.07 und 8.11.

Grafische Benutzeroberflächen für Ghostscript

  • Ghostview ist ein Nutzerinterface für Ghostscript und vereinfacht durch die grafische Oberfläche die Bedienung.
  • GV basiert auf Ghostview und hat ein verbessertes Nutzerinterface. Es gibt Varianten namens ggv (Gnome gv) und kghostview (KDE gv).
  • GSview ist ähnlich GV, aber nicht von Ghostview abgeleitet und wird vom Hersteller für die Plattformen Linux, MS Windows and OS/2 angeboten.
  • Weitere Informationen findet man auf der Ghostscript-Homepage.

  • Die meisten Dateimanager und Browser sind so konfiguriert, dass automatisch durch Auswertung des Datei-Suffix (.ps) das PostScript-Dokument sofort angezeigt wird (zum Beispiel nutzt der Konqueror unter Linux/KDE das Programm kghostview). Der Nutzer braucht dann nicht explizit einen PostScript-Viewer zu aktivieren.

  • Sollte dieser direkte Aufruf des Postscript-Viewers einmal nicht funktionieren, so können Sie die Datei auch auf die Platte speichern und dann das Programme auch aus einer Shell starten. Die Produkte können für die von uns betreuten Plattformen folgendermaßen aufgerufen werden:

  • UNIX (Linux, Solaris, andere)
    • gv oder
    • ghostview oder
    • ggv oder
    • kghostview

  • Windows
    • Startmenü - Programme - URZ Software - Tools - Ghostscript Tools - GhostView

Anzeigen von PDF-Dateien

Es können grundsätzlich folgende Viewer genutzt werden:

  • Windows
    • Acrobat Reader (seit Version 6.0 heißt der Adobe Reader), aktuelle Version 6.0 (PDF 1.5)
    • GSView
  • Linux und andere Unix-Varianten
    • acroread Version 5.05, eine aktuellere ist nicht in Sicht.
    • xpdf (unterstützt wird PDF 1.4, vgl. mit Acrobat 5.0)
    • gv (unterstützt wird PDF 1.4, vgl. mit Acrobat 5.0)

Konfiguration des Acrobat Readers unter Linux

Beim ersten Aufruf des Acrobat Readers wird ein Konfigurationsfile geschrieben ($HOME/.acrobat/prefs), das der Nutzer durch Angabe von Optionen innerhalb des Programms indirekt modifiziert. Leider werden aber einige Standardwerte eingestellt, die für den praktischen Betrieb innerhalb unserer Infrastruktur zumindest hinderlich sind. Konkret bezieht sich diese Aussage auf zwei Angaben:

  • PaperSize (Papierformat)
    • Standard: Letter
    • Sinnvoll: A4, es gibt in Europa kein Letter-Papier

  • OptimizeForSpeed (Optimierung der Druckgeschwindigkeit, intern wird damit das Handling von Fonts beeinflusst)
    • Standard: true - bestimmte Fonts werden nicht zum Drucker übertragen
    • Sinnvoll: false - alle Fonts sollen zum Drucker übertragen werden, sonst kann es zu Druckproblemen kommen, wenn der Drucker den betreffenden Font doch nicht kennt

Damit nicht jeder Nutzer diese Einstellungen selbst vornehmen muss, haben wir uns entschlossen, diesen Schritt pauschal vorzubereiten: beim Aufruf von [/usr/local/bin/]acroread unter Linux wird der Nutzer gefragt, ob er mit der Anpassung seiner Konfiguration einverstanden ist. Wenn er zustimmt, wird das Konfigurationsfile geändert. Diese Anfrage erfolgt nur ein einziges Mal!

Drucken

Drucken von Postscript-Dateien

Hinweise zum Umgang mit PostScript-Dokumenten

Viele Dokumente, von deren gedruckten Exemplaren man sich hohe Qualität verspricht, werden im PostScript-Format entweder auf dem Umweg über eine Plattendatei, oder direkt auf einen PS-fähigen Drucker ausgegeben. Nicht immer kann der Ausdruck mit den Erwartungen Schritt halten, speziell wenn er gar nicht oder nur in Bruchstücken aus dem Drucker quellen mag. Die Ursachen können vielfältig sein, einige sollen hier näher untersucht und Methoden zur Lösung gegeben werden. Diese beruhen darauf, dass PostScript-Dateien Klartextprogramme im ASCII-Format enthalten, die verändert werden können, um den Druck erfolgreich abzuschließen.

Unterschied zwischen PS und EPS

Einige unerwartete Effekte können vermieden werden, wenn man sich über den prinzipiellen Unterschied zwischen PS und EPS (Encapsulated PostScript) im Klaren ist. Er ist sehr subtil und oftmals kaum zu erkennen. Grundsätzlich ist PS dazu gedacht, komplette Dokumente zu erzeugen, während EPS jeweils einen Teil eines Dokumentes (z. B. eine Abbildung) enthält, der kein eigenständiges Leben führt und nur durch die Einfügung in eine PS-Datei sinnvoll wird.

Betrachten wir den Vorgang etwas genauer: Ein Autor bastelt an einem Dokument, lädt einige EPS-Illustrationen ein und druckt das Ganze als PS aus.

Sowohl die EPS- als auch die PS-Dateien sind in derselben Programmiersprache, eben PostScript, geschrieben. Das EPS-Programm beschreibt jeweils eine (kleinere oder größere) Illustration und enthält zusätzlich zu dieser Beschreibung jedoch noch die wesentlichen Zeilen

%!PS-Adobe-3.0 EPSF-1.2
%%BoundingBox: 100 120 340 234

unmittelbar zu Beginn. Die Bounding Box ist ein Rechteck, das die Illustration engstmöglich umschließt und so eindeutig deren Lage und Ausdehnung beschreibt. Die vier Zahlen sind die Koordinaten der linken unteren und der rechten oberen Ecke dieses Rechtecks in Einheiten von 1/72 Zoll. Wenn Sie eine solche EPS-Abbildung einladen, kann Ihr Programm anhand dieser Zahlen die Abbildung korrekt zentrieren und hinreichend Platz für sie vorsehen.

Beim Druck als PS werden solche Abbildungen komplett in das PS-File übernommen. PS-Dateien dagegen sind nicht dazu gedacht, in ein anderes Dokument eingeladen zu werden (sie sind ja schon abgeschlossene Dokumente) und enthalten daher weder den Zusatz EPSF-1.2 noch die Bounding Box-Info. Dafür können PS-Dateien mehrseitige Dokumente beschreiben.

Genau genommen kann eine EPS-Datei nicht einmal eine einzige Seite erzeugen: Der Versuch, ein EPS-Bild direkt zu drucken, bringt zwar keinen Fehler, dafür aber meistens nur ein leeres Blatt. Dies beruht darauf, dass der Befehl, der eine fertige Seite druckt (showpage), in EPS verboten ist oder zumindest beim Einladen von EPS durch die Textverarbeitung unwirksam gemacht werden muss.

Viele Programmierer schreiben daher diesen Befehl gar nicht erst in die EPS-Datei, so dass deren Druck kein sichtbares Ergebnis bringt. Nur wenn der showpage-Befehl vorhanden ist, kann die EPS-Datei auch separat ausgedruckt werden. Möchten Sie daher eine EPS-Illustration zu Kontrollzwecken drucken und erhalten nur leeres Papier, fügen Sie am Ende der Datei den PostScript-Befehl

showpage

an!

Praxis

Aus den Charakteristika der beiden PS-Varianten können nun einige Schlüsse für die Praxis gezogen werden:

  • Ganze (mehrseitige) Dokumente werden NICHT als EPS gedruckt, falls Ihr Programm Ihnen das gestatten sollte. Es ist zwar kein Fehler, verführt aber leicht zu falscher Anwendung, speziell später, wenn man die Herkunft ominöser EPS-Dateien vergessen hat.

  • PS-Dateien können in der Regel nicht in andere Dokumente übernommen werden. Dazu sind sie nicht geschaffen und enthalten meist auch unzweckmäßige Informationen dazu. Verwenden Sie hierzu das EPS-Format.

  • Bloßes Umbenennen der Dateien (rename *.ps *.eps) bringt keineswegs die erhoffte Konvertierung zwischen beiden Formaten. Hierfür existieren allerdings Hilfsprogramme, wobei die Richtung EPS -> PS ohnehin von einer Applikation (Textsatzsystem etc.) beim Drucken durchgeführt wird.

Umwandlung von PS in EPS

Um aus einer Postscript-Datei eine Datei im EPS-Format zu erzeugen, benutzen Sie das Skript ps2epsi, das Bestandteil von Ghostscript ist. Die Postscript-Datei darf nur genau eine Seite enthalten. Mit dem Befehl

ps2epsi test.ps test.eps

erhalten Sie eine EPS-Datei mit automatisch gesetzter Bounding Box und einem eingebetteten Thumbnail als Vorschau-Bildchen.

Zeilenumbrüche

In der Vergangenheit waren insbesondere die PostScript-Treiber von manchen Windows-Produkten recht erfindungsreich beim Erzeugen von seltsamen PS-Dateien. Oft gelingt es, 10 von 20 Seiten zu drucken, um dann ratlos vor einem Fehlerblatt zu stehen. "/undefined in xyz" steht dann meist noch zu lesen, bevor der Druckvorgang (oder die Anzeige in Ghostview) abgebrochen wurde. Hier hilft oft ein kleiner Trick in der PS-Datei weiter.

Laden Sie die Datei in einen Editor und suchen nach der Zeichenfolge "xyz" aus der Fehlermeldung. Vielleicht haben Sie Glück und Ihr PS-Treiber hat einen der folgenden Fehler gemacht:

  • "xyz" ist normalerweise ein sinnvoll lesbarer Name (zum Beispiel "setcolorscreen"); an einer Stelle hat der Treiber einen Zeilenumbruch inmitten des Begriffes plaziert (wie bei "setco lorscreen"), so dass der PS-Interpreter den Befehl nicht mehr erkennen kann. Löschen Sie dann den Umbruch und fügen Sie somit das Befehlswort wieder zusammen.

  • Manchmal werden in einem Vorspann verschiedene Parametersätze in Tabellen gespeichert, zum Beispiel Abmessungen für die Papierformate A3, A4, A5, B4 und B5, obwohl das Dokument nur in einer einzigen, bestimmten Größe gedruckt werden soll. Nun kommt es zuweilen vor, dass in der Tabelle zwar die verschiedenen Formatkennbuchstaben (A5 etc.) stehen, aber ohne zugehörige Daten. Beim Versuch des Druckers, alle Kennbuchstaben mit Daten zu verbinden, scheitert er am Fehlen der an sich auch unnötigen Parameter. Fehler "invalid access in ---put--" und kurz darauf "--dicttype-- /a5": Hier kann es helfen, im Editor nach dem erwähnten Begriff (a5) zu suchen und ersatzlos zu streichen. Wohlgemerkt, je nach genauer Natur des Fehlers kann dies natürlich auch zu einer Verschlimmbesserung führen!

Multimode-Drucker

Normalerweise kann eine PS-Datei erwarten, auch auf einem PS-Drucker ausgegeben zu werden. Was aber, wenn der Drucker, wie etwa der HP Laserjet, u. a. auch den PCL-Modus beherrscht? Viele solcher Drucker können so konfiguriert werden, dass sie standardmäßig in Modus A laufen und durch Senden einiger Daten vor der eigentlichen Druckdatei in Modus B umgestellt werden. Drucken Sie aus einem echten Betriebssystem heraus (Unix, VMS ...), kann ein Druckerfilter anhand der ersten Zeile der Druckdatei erkennen, um welches Format es sich handelt. PS-Dateien sollten immer mit

%!PS-Adobe-3.0

(ggf. auch andere Zahlen) beginnen. Je nach dem aktuellen Drukkermodus und dem Format der Datei wird die korrekte Umschaltung gesendet.

PCs unter Windows schaffen es zuweilen, beim Erzeugen von PS für einen solchen Multi-Mode-Drucker jedesmal vor einem PS-Programm die Umschaltsequenz PCL-;gt;PostScript vorauszusenden (wohl zur Sicherheit). Viele Drucker, die sich bereits im richtigen PS-Modus befinden und auf PostScript-Befehle hoffen, reagieren mit Unverständnis auf die binären Steuerzeichen. Als Resultat wird oftmals gar nichts gedruckt, bestenfalls ein end of job-Blatt.

Lösung: Falls Sie das Dokument in eine PS-Datei gedruckt haben, können Sie mit einem Editor die ersten kryptischen Zeilen manuell löschen. Die erste sinnvolle Zeile eines PS-Programm muss die oben erwähnte %!PS-Zeile sein. Das Prozentzeichen muss dabei das allererste Zeichen des Files sein.

Das Control-D

Eng verwandt mit dem vorigen ist folgendes Problem: Einige Druckertreiber (hier speziell Windows-Druckertreiber) wollen immer sicherstellen, dass jede Druckdatei auf einer eigenen Seite beginnt, und fügen deshalb ein Control-D (Ascii 4) als allererstes Zeichen in die Ausgabedatei ein. Nach dem soeben Gesagten kann ein PS-Filter dann allerdings kein %!PS mehr finden, wenn dieses an zweiter statt erster Stelle im File steht. Die Lösung besteht wiederum darin, sämtliche Zeichen (auch wenn diese von Ihrem Lieblingseditor nicht sichtbar, z. B. nur durch ein scheinbares Leerzeichen, dargestellt werden) vor dem %!PS zu löschen.

Seiten extrahieren

Gelegentlich hat man eine Druckdatei vorliegen, von der man nur einige wenige Seiten erneut drucken möchte (etwa, um gezielt Seiten mit einzelnen Rechtschreibfehlern korrekt auszugeben). Kein Problem, wenn man gerade auch die passende Textverarbeitung dabei hat, man macht eben eine neue Druckdatei. Aber es geht auch, falls nur die Gesamtdatei vorliegt: Rufen Sie diese mit einem Texteditor auf und suchen Sie nach dem Begriff %%Page: # #, wobei # für die gewünschte Seitenzahl steht. Soll nur die Seite 34 ausgegeben werden, müssen Sie alles ab %%Page: 1 1, der ersten Seite, bis %%Page: 34 35 löschen und weiterhin alles von %%Page: 35 35 bis zum abschließenden Kommentar %%Trailer.

Ebenso können durch Kopieren des fraglichen Abschnittes einzelne Seiten(bereiche) verdoppelt werden, falls man bestimmte Seiten mehrfach benötigt.

Achtung: das Verfahren funktioniert nur, wenn die Textverarbeitung sich auch an die PostScript Document Structure-Konventionen hält - nicht jeder Windows-Treiber tut dies auch! Nutzer von LaTeX/DVIPS haben hier klare Vorteile.

Seiten vergrößern

Möchten Sie Ihre A4-Broschüre zu einem DIN A2-Plakat machen? Kein Problem, suchen Sie nach dem Auftreten von %%Page und fügen Sie unmittelbar danach den Befehl

2 2 scale

ein, um sowohl die horizontale wie auch die vertikale Achse auf das Doppelte zu strecken. Mit den Zahlen "2 2" erreichen Sie eine Vergrösserung von A4 auf A2 oder A5 auf A3 etc. Für andere Stufen müssen Sie die entsprechenden Vielfachen von Wurzel(2)=1,41 einsetzen:

von A4 auf Skalierungsfaktoren
A5 0.707 0.707
A4 nicht nötig
A3 1.41 1.41
A2 2 2
A1 2.82 2.82
A0 4 4

Das Verfahren ist wiederum für LaTeX/DVIPS am besten einsetzbar, da PS-Dateien von anderen PS-Treibern Ihnen häufig misstrauen und hintergründig sicherstellen, dass tatsächlich ein A4-Ausdruck erscheint.

Kopien

Zum Erzeugen von Kopien gibt es unterschiedliche Methoden. In der Regel findet man in der Datei Anweisungen, die die Zeichenfolge copies enthalten. Zwei typische Beispiele dafür (StarOffice) sind die Zeilen:

/#copies 1 def << /NumCopies null /Policies << /NumCopies 1 >> >> setpagedevice

Sind diese Zeilen in der zu druckenden Datei enthalten, dann wird IMMER nur eine Kopie erzeugt, auch wenn mit verschiedenen Werkzeugen oder Druckertreibern versucht wird, davon mehrere Kopien zu erzeugen. Man kann in diesem Falle lediglich die Datei editieren und diese Zeilen entfernen.

Andere kompliziertere Postscript-Anweisungen zum Erzeugen von Kopien lassen sich allerdings schwerer entfernen und sollten vom Nutzer lieber nicht modifiziert werden, da dabei in der Regel ein korruptes Postscriptdokument entsteht, das dann nicht mehr druckbar ist !

Duplex-Druck

Unter Duplex-Druck versteht man das Drucken auf Vorder- und Rückseite eines Blattes Papier. Das setzt natürlich die entsprechende Fähigkeit des Druckers voraus (Duplexeinheit). Dazu werden im Postscript-Programm Anweisungen der Form

=statusdict begin true setduplexmode false settumble end=  ODER
=statusdict begin true settumble end = ODER
=true statusdict /setduplexmode get exec false statusdict /settumble get exec= ODER
=<> setpagedevice=

verwendet, wobei Tumble für "kopfstehend" verwendet wird, d.h. die Rückseite wird dann seitenverkehrt ausgegeben, d.h. beim Drucken wird das Papier an der kurzen Seite gedreht (sinnvoll z.B. bei Buchdruck). Die letzte Anweisung wird von Druckertreibern für spezielle Drucker benutzt, diese sind also auch nicht übertragbar auf Drucker verschiedenen Typs.

Ob Duplex gedruckt wird oder nicht entscheidet die Option true ode false (in Stackschreibweise vor der Modusangabe!). Hat ein Drucker keine Duplexeinheit, dann werden diese Anweisungen einfach ignoriert.

Farbdokumente

Es gibt verschiedene Möglichkeiten in einem Postscriptdokument Farbseiten zu erzeugen. In den Dokumenten erscheinen dann solche Operatoren wie setcolor, setrgbcolor, setgray, DeviceRGB, DeviceCMYK, DeviceGray usw. Ein Farbdokument kann man auf einem Farbdrucker i. allg. mit folgender Anweisung (nach der 1. Zeile) schwarz/weiß ausdrucken:

<< /ProcessColorModel /DeviceGray >> setpagedevice

Resumee

Zusammenfassend kann man sagen, dass PS-Druckfiles durch ihr ASCII-Format erlauben, in einem Texteditor nach dem Fehler verursachenden Begriff zu fahnden und mit manchmal nur geringen Kenntnissen von PostScript Fehler, die vom Treiber verursacht wurden, manuell zu beheben und doch noch einen Ausdruck zu erhalten. Am häufigsten dürften wohl Zeilenumbrüche inmitten von Befehlsworten auftreten sowie ungewollte Steuersequenzen unmittelbar zu Beginn des Druckfiles.

Drucken von PDF-Dateien

Durch die aktuellen Drucker im URZ werden in der Regel noch keine PDF-Dokumente direkt verarbeitet, so dass die Umwandlung in andere Formate notwendig ist. Im URZ der TU Chemnitz wird aus Abrechnungsgründen nur Postscript gedruckt. Das bedeutet, dass zum Ausdrucken von PDF-Dateien diese vorher in Postscript gewandelt werden müssen. Diese Aufgabe übernimmt der PDF-Viewer (siehe Anzeigen von PDF).

Probleme beim Drucken von PDF-Dateien

Es gibt folgende bekannte Problemklassen, die beim Drucken zu Fehlern führen:

  1. Die erzeugte Postscript-Datei ist (zumindest aus der Sicht des Postscriptinterpreters im betreffenden Drucker) syntaktisch fehlerhaft, das führt in der Regel zum Abbruch des Jobs mit einer Fehlermeldung.
  2. Die Datei wird vom Drucker verarbeitet aber nicht gedruckt bzw. der Drucker braucht zu lange zum Drucken. Hierbei handelt es sich in der Regel um Ressourcenprobleme, die der Drucker nicht meistern kann, das heißt die Komplexität der Postscript-Datei übersteigt die Resourcen (CPU-Leistung, verfügbarer Speicher) des Druckers.

Was kann man tun:

  1. Wird der Druck mit unerklärlichen Fehlern abgebrochen, so sollte auf alle Fälle das zu druckende Dokument (oder einen Auszug einiger Seiten) als Postscript-Datei abgespeichert und dieses zunächst am Rechner mit einem geeigneten Postscript-Viewer betrachtet werden. Unter Windows kann man dazu gsview nutzen, unter Linux gv oder gs.
  2. Werden bei dieser Anzeige Fehler gemeldet, müssen die vorhandenen Probleme geklärt werden. Dazu sollte - sofern das möglich ist - der Autor des Dokumentes hinzugezogen und die unten stehenden Hinweise zur Erzeugung von PDF-Dokumenten berücksichtigt werden. Unter Linux sollten darüberhinaus die Eignung alternativer PDF-Werkzeuge wie xpdf oder convert erprobt werden.
  3. Große oder/und komplizierte Dokumente (Ressourcen-Problem) sollten auf alle Fälle auf den leistungsfähigen Stapeldruckern ausgegeben werden (raffael, degas, leonardo, tizian). Die in den öffentlichen Pools der TU aufgestellten Drucker sind in der Regel nur für den Ausdruck kleinerer Papiermengen und unkomplizierter Dokumente (also keine aufwendigen Farbdokumente) ausgelegt. Die Informationen dazu sind im Web zu finden unter:
  4. http://www.tu-chemnitz.de/urz/drucken/
  5. Zur Anzeige von PDF-Dateien und zur Umwandlung in Postscript sollte zunächst immer der Acrobat-Reader acroread genutzt werden. Gibt es damit Probleme, empfiehlt sich der Versuch alternativer Acrobat-Reader, z.B. unter den verschiedenen Betriebssystemen Windows-XXX, Linux (odoaker.hrz, janus.hrz) oder Solaris (gulliver.hrz). Auch die verschiedenen Versionen der Postscriptviewer sind hier interessant: gv, gs, xpdf
  6. In UNIX-Systemen sind in der Regel Konvertierungswerkzeuge vorhanden, evtl. bringt die Umwandlung mittels
    pdf2ps <pdf_datei>.pdf <postscript_datei>.ps
    bereits eine Lösung. Bitte nach der Erzeugung einer Postscriptdatei möglichst immer im gv kontrollieren (das wird auch beim Drucken zur Auswertung benutzt). Alternativ gibt es in neueren Linux-Versionen das Kommando
    pdftops -duplex -paper A4 datei.pdf datei.ps
    Dieses Kommando erzeugt in der Regel qualitativ bessere Postscript-Ausgaben.
  7. ACHTUNG: bei Anwendung von mpage (UNIX) zur Anordnung mehrerer Seiten auf einem Blatt gibt es erhebliche Kompatibilitätsprobleme. Das von mpage erzeugte Postscript-File sollte unbedingt vor dem Ausdrucken mittels gv kontrolliert werden.

Hinweise zur Arbeit mit dem Acrobat Distiller unter Windows

Es gibt einen bekannten Bug, der bei Verwendung von transparenten Bildern (.gif u.a.) komplizierte PDF-Files erzeugt, mit denen Drucker überfordert sind. Bei Arbeit mit PDF sollte auf transparente Bilder verzichtet werden - geeignet ist hier z.B. das Bildformat .bmp (convert). Eine detaillierte Beschreibung des Problems ist hier zu finden.

Weitere Hinweise zum Drucken aus dem Acrobat-Reader

* Einstellen Postscript-Level im Druckmenü:

* durch Einstellen von "Language Level 1" unter Postscript Options wird der Druckvorgang "sicherer", d.h. es treten dabei vor allem bei älteren Druckern weniger Probleme auf

* Einstellen Seitengröße A4 im Menü PageSetup:

* es sollte unbedingt darauf geachtet werden, dass als Seitenformat "A4" eingestellt ist (leider benutzt der Acrobat Reader als Standard "Letter") in Europa wird als Seitenformat in der Regel mit A4 gearbeitet. Da häufig Software aus den USA eingesetzt wird und dort das Standardformat Letter benutzt wird, entstehen Probleme durch inkonsistente Papierformate. Darauf sollte man bei den Einstellungen im Acrobat Reader achten.

* Weitere Einstellungen im Druckmenü wie "Shrink/Expand page" (Anpassung an Seitengröße) oder "Optimize Speed" / "Save Memory" u.a. wirken sich ggf. auf das Format und Größe der erzeugten Dokumente aus und können bei falscher Einstellung eine zusätzliche Fehlerquelle sein.

Wo kann ich Fragen stellen:

* Mit Problemen kann man sich immer an den Helpdesk des URZ wenden.

* Dabei bitte unbedingt Drucker-Queue und Zeitpunkt des Ausdrucks nennen und die Angabe, wie der Druck gestartet wurde, also aus Acrobat-Reader, Netscape, Word, ...

* Das zu druckende Dokument (PDF) und die daraus erzeugte Postscriptdatei (oder besser 1-2 betreffende Seiten Auszug daraus) müssen für den Druckadministrator im URZ lesbar sein, sie sollten deshalb sinnvollerweise im Unterverzeichnis (Ordner) PUBLIC des HOME-Verzeichnisses (H:) abgelegt werden

Druckproblem aus Acrobat Reader-Plugin unter Mozilla siehe Software-FAQ

Editieren/Analyse

Editieren/Analyse von Postscript-Dateien

Text-Editor.

Editieren/Analyse von PDF-Dateien

Uncompress, Text-Editor, Compress.

Windows XP!
  • Das Programm Adobe Acrobat/Adobe Acrobat Professional erlaubt die nachträgliche Bearbeitung fertiger PDF-Files, über die Exportfunktion kann man in editierbare Dateien wandeln, allerdings evtl. mit Formatierungsverlusten.
  • Das OCR-Programm OmniPage wandelt PDF-Files in editierbare Textdateien, z. B. im MS Word-Format.

Fedora Core 1! pdftotext
pdf2ps
pdftops

Links

Postscript-bezogene Links

PDF-bezogene Links