Druckerspezifisches



Die verschiedenen PostScript Drucker können evtl. zusätzliche Funktionen zur Verfügung stellen, die nur für diesen einen Druckertyp gelten. Das können Funktionen sein für die Kommunikation mit dem Drucker, für die Drucker Administration, für das Papier-Handling, für den Umgang mit Fonts oder andere spezielle Operationsmodi.

Die PostScript-Unterstützung solcher Fähigkeiten beinhaltet das separate Dictionary statusdict. Dieses statusdict unterscheidet sich wesentlich von systemdict, in dem die Standard-Operatoren definiert sind. Um diese Fähigkeiten in einem PostScript-Programm zu benutzen, muß statusdict explizit genannt werden (s. begin).

Der genaue Inhalt und die Semantik der Operatoren in statusdict sind i.d.R. druckerspezifisch und dem Handbuch des jeweiligen Druckers zu entnehmen.

Da die Portabilität eines PostScript-Dokuments gewährleistet sein sollte, sollte man statusdict in seinem Programm nicht verwenden. Es ist eher dazu gedacht Applikationen zu schreiben, die auf einem bestimmten System den Drucker auf eine Weise ansteuern sollen, die für diesen Drucker angebracht ist und evtl. vom Standard abweicht. Ein Beispiel wäre etwa ein Drucker mit einer Duplex-Einheit der je zwei Seiten des PostScript-Dokuments auf eine Papierseite druckt und auf der Rückseite jedes Papierbogens den Ausdruck um 180° dreht. Dies sollte nicht hart in das PostScript-Dokument codiert werden, sondern über einen Filter realisiert werden.

Es ist möglich innerhalb eines PostScript-Programms zu testen, ob eine bestimmte Fähigkeit zur Verfügung steht, oder nicht. Dafür kann der known-Operator verwendet werden, der in statusdict nachsieht, ob der zu verwendende Operator existiert. Entsprechend dem Ergebnis dieser Abfrage kann reagiert werden. Viele Fähigkeiten, die in statusdict definiert sind einigen oder sogar fast allen PostScript Druckern bekannt. Im allgemeinen wird ein Operator aus statusdict, der einen bestimmten Namen hat, dieselbe Semantik auf allen Druckern besitzen, die einen Operator desselben Namens besitzen.

Folgende zwei Operatoren sind in statusdict einer jeden PostScript Implementierung von Adobe Systems:

© Holger Gehringer, Dezember 1998