GS(1)

BEZEICHNUNG
gs - Ghostscript (PostScript- und PDF-Sprachinterpreter und -Vorschauprogramm)

ÜBERSICHT
gs [ Optionen ] [ Dateien ] …

BESCHREIBUNG
Der Befehl gs ruft Ghostscript, einen Interpreter der Sprachen PostScript™ und Portable Document Format (PDF) von Adobe Systems auf. gs liest »Dateien« der Reihe nach ein und führt sie als Ghostscript-Programme aus. Danach liest es weitere Eingaben aus dem Standardeingabe-Strom (üblicherweise der Tastatur), interpretiert jede Zeile getrennt und gibt das Ergebnis an ein Ausgabegerät (vielleicht eine Datei oder ein X11-Vorschauprogramm, siehe unten) aus. Der Interpreter beendet sich sauber, wenn er auf einen »quit«-Befehl trifft (entweder in einer Datei oder von der Tastatur), bei Dateiende, oder bei einem Unterbrechungssignal (wie Strg-C von der Tastatur).

Der Interpreter erkennt viele Optionsschalter, einige davon sind unten beschrieben. Bitte schauen Sie für eine komplette Hilfe in die Anwenderdokumentation. Schalter können an jeder Stelle in der Befehlszeile erscheinen und werden auf alle folgenden Dateien angewendet. Der Aufruf von Ghostscript mit den Schaltern -h oder -? generiert eine Meldung, die viele nützliche Schalter anzeigt, alle Geräte, die dem Programm bekannt sind, sowie der Suchpfad für Schriftarten; unter UNIX wird auch angezeigt, wo die ausführliche Dokumentation abgelegt ist.

Ghostscript kann zur Verwendung vieler verschiedener Ausgabegeräte gebaut werden. Um zu sehen, welche Geräte in Ihrer Version eingebunden sind, führen Sie »gs -h« aus.

Wenn Sie kein bestimmtes Gerät angeben, öffnet Ghostscript normalerweise davon das erste Gerät und leitet die Ausgabe zu ihm.

Wenn Sie das Debian-Paket »ghostscript-x« installiert haben, und sich unter X befinden, ist das Standardgerät ein X11-Fenster (Vorschau), ansonsten verwendet Ghostscript üblicherweise das »Bbox«-Gerät und gibt die Maße der Postscript-Datei auf der Standardausgabe aus.

Wenn also das erste in der Liste das Gerät ist, das Sie verwenden wollen, rufen Sie den folgenden Befehl auf:

	gs meineDatei.ps

Sie könne auch den Satz der verfügbaren Geräte von Ghostscript aus kontrollieren: rufen Sie Ghostscript auf und tippen

	devicenames ==

allerdings muss das erste Gerät der resultierenden Liste nicht das standardmäßige Gerät sein, dass Sie mit »gs -h« bestimmen können. Um »AbcXyz« als das initiale Ausgabegerät festzulegen, verwenden Sie den Schalter

	-sDEVICE=AbcXyz

Um beispielsweise auf einen Epson-Drucker auszugeben, verwenden Sie den Befehl

	gs -sDEVICE=epson meineDatei.ps

Der Schalter »-sDEVICE=« muss vor der ersten zu druckenden Datei vorkommen, und nur die erste Verwendung des Schalters hat eine Auswirkung.

Letztendlich können Sie das standardmäßige Gerät auch mit der Umgebungsvariablen GS_DEVICE festlegen. Die Reihenfolge der Alternativen ist von hoch zu niedrig (Ghostscript verwendet das Gerät, was als höchstes in der Liste definiert ist).

Einige Geräte können verschiedene Auflösungen unterstützen. Um die Auflösung eines solchen Gerätes festzulegen, verwenden Sie den Schalter »-r«:

	gs -sDEVICE=<Gerät> -r<xPunkte>x<yPunkte>

Zum Beispiel setzen Sie einen Epson-kompatiblen 9-Nadel-Drucker auf den (schnellsten) Modus mit der niedrigsten Auflösung mit

	gs -sDEVICE=epson -r60x72

und der höchsten Auflösung (beste Ausgabequalität) mit

	gs -sDEVICE=epson -r240x72.

Wenn Sie einen Drucker als Ausgabegerät auswählen, erlaubt Ghostscript Ihnen auch auszuwählen, wohin Ghostscript die Ausgabe schicken soll, auf UNIX-Systemen üblicherweise in eine temporäre Datei. Um die Ausgabe in eine Datei »foo.xyz« zu schicken, verwenden Sie den Schalter

	-sOutputFile=foo.xyz

Möglicherweise möchten Sie jede Seite einzeln drucken. Um das zu tun, schicken Sie die Ausgabe an eine Reihe von Dateien »foo1.xyz, foo2.xyz, …« durch Verwendung des Schalters »-sOutputFile=« mit »%d« in einer Vorlage für die Dateinamen:

	-sOutputFile=foo%d.xyz

Jede erzeugte Datei erhält eine Seite der Ausgabe, und die Dateien sind der Reihe nach nummeriert. »%d« ist eine Formatangabe von »printf«; Sie können also auch eine Variante wie »%02d« verwenden.

Sie können die Ausgabe auch in eine Pipe schicken. Um beispielsweise die Ausgabe an den Befehl »lpr« weiterzuleiten (der auf viele UNIX-Systemen auf einen Drucker verweist), verwenden Sie die Option

	-sOutputFile=%pipe%lpr

Sie können die Ausgabe auch an die Standardausgabe schicken:

	-sOutputFile=-
oder
	-sOutputFile=%stdout%

In diesem Fall müssen Sie auch den Schalter »-q« verwenden um zu verhindern, dass Ghostscript Meldungen auf die Standardausgabe schreibt.

Um ein bestimmtes Papierformat auszuwählen, verwenden Sie in der Befehlszeile den Schalter

	-sPAPERSIZE=<Papierformat>

beispielsweise

	-sPAPERSIZE=a4
oder
	-sPAPERSIZE=legal

Die meisten ISO- und US-Papierformate werden erkannt. Schauen Sie in die Anwenderdokumentation, um eine vollständige Liste zu erhalten, oder in die Definitionen in der Initialisierungsdatei »gs_statd.ps«.

Ghostscript kann außer dem Drucken oder Ansehen von PostScript- und PDF-Dateien auch viele andere Dinge. Wenn Sie zum Beispiel die »Bounding Box« einer PostScript- (oder EPS-)Datei wissen möchten, stellt Ghostscript ein spezielles »Gerät« bereit, das nur diese Information ausgibt.

Unter Verwendung der mit Ghostscript vertriebenen Beispieldatei gibt beispielsweise

	gs -sDEVICE=bbox golfer.ps

folgendes aus

	%%BoundingBox: 0 25 583 732
	%%HiResBoundingBox: 0.808497 25.009496 582.994503 731.809445

OPTIONEN

-- Dateiname Arg1 …
    Nimmt das nächste Argument wie üblich als Dateinamen, nimmt aber alle übrigen Argumente (selbst wenn sie die Syntax von Schaltern haben) und definiert den Namen »ARGUMENTS« in »userdict« (nicht »systemdict«) als ein Feld solcher Zeichenketten vor Ausführung der Datei. Wenn Ghostscript die Ausführung der Datei beendet, kehrt es in die Shell zurück.

-DName=Markierung
-dName=Markierung
    Definiert einen Namen in »systemdict« mit der angegebenen Definition. Die Markierung muss genau eine Markierung sein (wie durch den Operator »token« definiert) und darf keine Leerräume enthalten.

-DName
-dName
    Definiert einen Namen in »systemdict« mit »Wert=null«.

-SName=Zeichenkette
-sName=Zeichenkette
    Definiert einen Namen in »systemdict« mit der angegebenen Zeichenkette als Wert. Das ist anders als bei -d. Zum Beispiel entspricht -dname=35 dem Programmabschnitt
      /name 35 def
    wogegen -sname=35 äquivalent ist zu
      /name (35) def

-P  Bewirkt, dass Ghostscript zuerst im aktuellen Verzeichnis nach Bibliotheksdateien sucht. Standardmäßig sucht Ghostscript nicht mehr im aktuellen Verzeichnis, selbstverständlich nur, falls das erste ausdrücklich angegebene Verzeichnis in -I nicht ».« ist. Siehe auch weiter unten im Abschnitt INITIALISIERUNGSDATEIEN und dem beigefügtem Use.htm zu ausführlichen Ausführungen zu Suchpfaden und wie Ghostscript Dateien findet.

-q  Stiller Start: unterdrückt normale Startmeldungen; es bewirkt auch das selbe wie -dQUIET.

-gZahl1xZahl2
    Entspricht -dDEVICEWIDTH=Zahl1 und -dDEVICEHEIGHT=Zahl2. Dies ist bei Geräten (wie X11-Fenstern) hilfreich, die verlangen (oder erlauben), dass Breite und Höhe angegeben werden.

-rZahl
-rZahl1xZahl2
    Entspricht -dDEVICEXRESOLUTION=Zahl1 und -dDEVICEYRESOLUTION=Zahl2. Dies ist bei Geräten wie Druckern hilfreich, die unterschiedliche X- und Y-Auflösungen unterstützen. Wenn nur eine Zahl angegeben ist, wird sie sowohl für die X- als auch für die Y-Auflösung verwendet.

-IVerzeichnisse
    Fügt die angegebene Liste von Verzeichnissen am Anfang des Suchpfades für Bibliotheksdateien ein.

-   Dies ist nicht wirklich ein Schalter, zeigt aber Ghostscript an, dass die Standardeingabe aus einer Datei oder einer Pipe kommt, und nicht interaktiv aus der Befehlszeile. Ghostscript liest von der Standardeingabe bis es das Dateiende erreicht, führt es wie jede andere Datei aus, und fährt dann mit der Bearbeitung der Befehlszeile fort. Wenn die gesamte Befehlszeile verarbeitet ist, beendet sich Ghostscript, anstatt in seinen interaktiven Modus zu wechseln.

Beachten Sie, dass die normale Initialisierungsdatei »gs_init.ps« »systemdict« mit Schreibschutz versieht, so dass die Werte der Namen, die mit -D, -d, -S oder -s angegeben werden, nicht geändert werden können (wobei sie selbstverständlich durch Festlegungen in »userdict« oder anderen Bibliotheken ersetzt werden können.)

BESONDERE NAMEN

-dNOCACHE
    Deaktiviert das Zwischenspeichern von Zeichen. Nur zur Fehlersuche geeignet.

-dNOBIND
    Deaktiviert den »bind«-Operator. Nur zur Fehlersuche geeignet.

-dNODISPLAY
    Unterdrückt die normale Initialisierung des Ausgabegerätes. Dies kann zur Fehlersuche geeignet sein.

-dNOPAUSE
    Deaktiviert die Eingabeaufforderung und pausiert am Ende jeder Seite. Das kann für Fälle erwünscht sein, in denen ein anderes Programm Ghostscript ansteuert.

-dNOPLATFONTS
    Deaktiviert die Verwendung von Schriftarten, die von der zugrundeliegenden Plattform (zum Beispiel X11) bereit gestellt werden. Das kann notwendig sein, wenn die Schriftarten der Plattform inakzeptabel anders aussehen, als die skalierbaren Schriftarten.

-dSAFER
    Beschränkt die Dateiaktionen, die der Auftrag ausführen kann. Das ist jetzt die Voreinstellung.

-dWRITESYSTEMDICT
    Belässt »systemdict« beschreibbar. Das ist notwendig, wenn besondere Hilfsprogramme ausgeführt werden. Davon wird aber stark abgeraten, weil es normale Sicherheitsmaßnahmen von Postscript umgeht.

-sDEVICE=Gerät
    Wählt ein alternatives Ausgabegerät wie oben beschrieben aus.

-sOutputFile=Dateiname
    Wählt ein alternatives Ausgabegerät (oder Pipe) als initiales Ausgabegerät wie oben beschrieben aus.

SICHERER MODUS

Die Option -dSAFER beschränkt Dateisystemzugriffe auf jene Dateien und Verzeichnisse, die mittels der relevanten Umgebungsvariablen (wie GS_LIB) oder über Befehlszeilenparameter (Details sind in https://ghostscript.com/doc/current/Use.htm zu finden) freigegeben wurden.

Der »SAFER«-Modus ist jetzt die Voreinstellung. Wenn also Programme ausgeführt werden, die Dateien öffnen oder eingeschränkte Parameter setzen müssen, sollten Sie die Befehlszeilenoption -NOSAFER oder ihr Synonym -DELAYSAFER übergeben.

Das Ausführen unter »NOSAFER«/»DELAYSAFER« lockert (wie der Name annehmen lässt) die Sicherheit und ist deshalb NUR zur Fehlersuche oder in SEHR kontrollierten Abläufen empfohlen; unter anderen Umständen wird davon STARK abgeraten.

DATEIEN

Die Orte von vielen Laufzeit-Dateien von Ghostscript werden während des Kompilierens in die ausführbare Datei eingebaut. Führen Sie »gs -h« aus, um den Ort der Ghostscript-Dokumentation auf Ihrem System zu finden, der Sie weitere Details entnehmen können. Auf einem Debian-System befindet sie sich in /usr.

/usr/share/ghostscript/[0-9]*.[0.9]*/*
    Start-Dateien, Hilfswerkzeuge und grundlegende Schriftart-Definitionen (wobei [0-9]*.[0.9]* die Versionsnummer von Ghostscript darstellt)

/usr/share/fonts/type1/gsfonts/*
    Weitere Definitionen von Schriftarten vom Paket »gsfonts«

/usr/share/doc/ghostscript/examples/*
    Ghostscript-Beispieldateien (falls das Paket »ghostscript-doc« installiert ist)

/usr/share/doc/ghostscript/*
    Verschiedene Dokumente (eventuell muss das Paket »ghostscript-doc« installiert werden)

INITIALISIERUNGSDATEIEN
Bei der Suche nach Initialisierungsdateien »gs_*.ps«, den Dateien zu Schriftarten, oder der Datei für den Operator »run«, versucht Ghostscript zunächst, die Datei mit dem angegebenen Namen im aktuellen Verzeichnis zu öffnen, wenn kein Verzeichnis angegeben ist. Wenn das fehlschlägt, und der Dateiname kein explizites Verzeichnis oder Laufwerk angibt (zum Beispiel, wenn es auf UNIX-Systemen kein »/« enthält), prüft Ghostscript Verzeichnisse in der folgenden Reihenfolge:

1.  die Verzeichnisse, die gegebenfalls mit dem Schalter -I auf der Befehlszeile (siehe unten) angegeben wurden;

2.  die Verzeichnisse, die gegebenfalls mit der Umgebungsvariable GS_LIB angegeben wurden;

3.  die Verzeichnisse, die im Makro GS_LIB_DEFAULT zur Bauzeit des ausführbaren Programms in dem »makefile« von Ghostscript angegeben wurden. GS_LIB_DEFAULT ist auf einem Debian-System »/usr/share/ghostscript/[0-9]*.[0-9]*/lib«, wobei »[0-9]*.[0-9]*« die Versionsnummer von Ghostscript darstellt.

Jeder von ihnen (GS_LIB_DEFAULT, GS_LIB, und der Parameter -I) kann entweder ein einzelnes Verzeichnis oder eine durch »:« getrennte Liste von Verzeichnissen sein.

UMGEBUNGSVARIABLEN

GS_OPTIONS
    Zeichenkette von Optionen, die vor den Optionen der Befehlszeile verarbeitet werden

GS_DEVICE
    Verwendet, um ein Ausgabegerät anzugeben

GS_FONTPATH
    Pfadnamen zur Suche nach Schriftarten

GS_LIB
    Pfadnamen für Initialisierungsdateien und Schriftarten

TEMP
    Wo temporäre Dateien abgelegt werden

X-RESSOURCEN
Ghostscript, oder genauer das X11-Anzeigegerät, suchen unter dem Programmnamen »Ghostscript« nach den folgenden Ressourcen:

borderWidth
    Die Breite von Grenzlinien in Pixeln (Voreinstellung = 1).

borderColor
    Der englische Name der Farbe für Grenzlinien (Voreinstellung = black).

geometry
    Die Fenstergröße und -Platzierung, BxH+X+Y (standardmäßig NULL).

xResolution
    Die Anzahl der Pixel in x-Richtung pro Zoll (standardmäßig aus WidthOfScreen und WidthMMOfScreen berechnet).

yResolution
    Die Anzahl der Pixel in y-Richtung pro Zoll (standardmäßig aus HeightOfScreen und HeightMMOfScreen berechnet).

useBackingPixmap
    Gibt an, ob Speicherplatz verwendet wird, um Anzeigefenster abzuspeichern (Voreinstellung = true (wahr)).

Sehen Sie in die Anwenderdokumentation für eine umfangreichere Auflistung der Ressourcen. Um die Ressources unter UNIX zu setzen, schreiben Sie sie im folgenden Format in eine Datei wie ~/.Xresources:

	Ghostscript*geometry:	 612x792-0+0
	Ghostscript*xResolution: 72
	Ghostscript*yResolution: 72

Dann fügen Sie diese Ressourcen mit denen des X-Servers zusammen:

	% xrdb -merge ~/.Xresources

SIEHE AUCH
Die verschiedenen Ghostscript-Dokumentationsdateien (oben), im besonderen use.htm. Unter Debian müssen Sie möglicherweise vor dem Lesen der Dokumentation das Paket »ghostscript-doc« installieren.

FEHLER
Siehe http://bugs.ghostscript.com/ und die Usenet-News-Gruppe comp.lang.postscript.

VERSION
Dieses Dokument wurde letztmalig für Ghostscript Version 10.04.0 überarbeitet.

AUTOR
Artifex Software, Inc. sind die Hauptbetreuer von Ghostscript. Russell J. Lang, gsview at ghostgum.com.au, ist der Autor vom Großteil des Codes für MS Windows.

ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Christoph Brinkhaus <c.brinkhaus@t-online.de> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html) oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer (debian-l10n-german@lists.debian.org).