- PostScript
-
PostScript Dateiendung: .ps
MIME-Type: application/postscript
Magische Zahl: %!
Entwickelt von: Adobe Systems Erweitert zu: Encapsulated PostScript PostScript ist eine Seitenbeschreibungssprache, die unter diesem Namen seit 1984 vom Unternehmen Adobe entwickelt wird. Sie wird üblicherweise als Vektorgrafikformat für Dokumente und Drucker verwendet, stellt jedoch auch eine Turing-vollständige, stackorientierte Programmiersprache dar. PostScript ist eine Weiterentwicklung von InterPress.
Inhaltsverzeichnis
Verbreitung
PostScript hat sich über die Jahre zu einem Standard in der Druckindustrie entwickelt, wird aber teilweise vom Portable Document Format (PDF) verdrängt, das ebenfalls von Adobe entwickelt wurde und viele Eigenschaften von PostScript übernommen hat.
Desktoppublishing-Programme verfügen in der Regel über eine PostScript-Exportfunktion. Praktisch kann aber aus jeder Anwendung (zum Beispiel aus beliebigen Textverarbeitungsprogrammen) mit Hilfe eines PostScript-Druckertreibers PostScript-Code erzeugt werden, der entweder direkt an ein postscriptfähiges Ausgabegerät gesendet oder in eine Datei geschrieben werden kann. Einzelne Seiten bzw. Grafiken im PostScript-Format können von Desktoppublishing-Programmen und einigen anderen Anwendungen in der Form von Encapsulated-PostScript-Dateien auch importiert werden.
In unixähnlichen Betriebssystemen ist es üblich, dass Anwendungsprogramme Druckaufträge in PostScript an den Druckerserver oder das lokale Drucksystem senden. Dieses rechnet die PostScript-Daten, meist mit Hilfe von Ghostscript, in gerätespezifischen Code um.
Funktionsweise
Grafiken und Druckseiten werden als Dateien im PostScript-Format angelegt, um sie auf den unterschiedlichsten Ausgabegeräten in beliebiger Größe und Auflösung verlustfrei ausgeben zu können. Dazu werden grafische Elemente und Schriften als skalierbare Vektorgrafik beschrieben. Rastergrafiken können ebenfalls eingebettet werden; sie werden je nach Auflösung des Ausgabegeräts neu skaliert.
PostScript ist eine Turing-vollständige Programmiersprache. Sie ist stapelorientiert und funktioniert nach dem Prinzip der umgekehrten polnischen Notation; Vorbild war die Programmiersprache Forth. Postscriptfähige Ausgabegeräte (insbesondere Drucker und Druckmaschinen) sind mit einem Raster Image Processor (RIP), also einem Interpreter auf Hardware- oder Software-Basis, ausgestattet, der das PostScript-Programm Stück für Stück auswertet und in eine Rastergrafik umsetzt. Durch diese sequenzielle Befehlsausführung hat man in PostScript-Dateien keinen direkten Zugriff auf einzelne Seiten. Eine freie Software-Implementierung eines solchen Interpreters bietet die Software Ghostscript.
Ein Programmbeispiel
Ein Programmbeispiel ist:
%! /Courier findfont % Schrift auswählen 20 scalefont % auf Schriftgröße 20 skalieren setfont % zum aktuellen Zeichensatz machen 50 50 moveto % (50, 50) als aktuelle Schreibposition setzen (Hallo Welt!) show % und dort den Text ausgebenshowpage % Seite ausgeben
Das Programm schreibt „Hallo Welt!“ an die Position 50,50.
Falls das Koordinatensystem nicht verändert wurde, beginnt es links unten.PostScript Level
Der Funktionsumfang von PostScript wurde zweimal erweitert. Die Erweiterungen sind bis auf eine Ausnahme abwärtskompatibel.
Level 2
Postscript Level 2 ist eine vollständig abwärtskompatible Erweiterung der PostScript-Spezifikation, die schneller und zuverlässiger arbeitet als Level 1. Hinzugefügt wurde beispielsweise die Unterstützung von eingebetteten JPEG-Bilddaten. Einige zusätzliche Funktionen wurden im Hinblick auf die interaktive Verwendung mit Display PostScript eingeführt, speziell das sogenannte „Insideness Testing“, mit dem geprüft werden kann, ob beispielsweise ein Punkt („Mausklick“) innerhalb eines Pfades liegt.
PostScript 3
Diese Version wurde 1997 veröffentlicht. Adobe entfernte den Namensbestandteil „Level“ zu Gunsten eines einfacheren Namens. Eine wichtige Erweiterung ist ein neues Farbmodell namens DeviceN, welches möglichst präzise Farben auf allen Ausgabegeräten garantieren soll. Das DeviceN-Modell unterstützt die Abbildung von Hexachrome- oder Duplex-Färbungen, was bislang nur durch bereits in einzelne Farbauszüge ausseparierte Seiten umgesetzt werden konnte.
Display Postscript
Das Betriebssystem NextStep verwendete PostScript als sog. Display Postscript auch für die Bildschirmdarstellung.
Das in Mac OS X verwendete Grafiksystem Quartz, das man als Nachfolger von Display Postscript verstehen kann, verwendet ein Grafikmodell, das sich an PDF anlehnt und eine Teilmenge von PDF 1.2 implementiert. Programme, die Quartz für ihre Grafikausgaben verwenden, können so ganz leicht PDF-Dateien erzeugen. Die Transparenzfunktion von PDF wird von Quartz nicht direkt unterstützt, Mac OS X behandelt transparente Objekte auf andere Weise.
PDF-Features wie Hypertext und Formulare werden in Programmen, die Quartz verwenden, außerdem anders realisiert als im PDF-Standard, so dass nicht von einer vollständigen Kompatibilität zu PDF gesprochen werden kann.[1]
Schriften (Fonts)
PostScript benutzt eigene Fontformate, deren Glyphen mit PostScript beschrieben werden und die sich insbesondere von dem auf Apple- und Windows-Plattformen gängigen TrueType-Format unterscheiden.
PostScript und PDF
Das ebenfalls von Adobe entwickelte Portable Document Format (PDF) lehnt sich an PostScript an. Die wichtigsten Unterschiede zu PostScript sind, dass PDF sehr viel strikter strukturiert und keine vollständige Programmiersprache ist. So wird beispielsweise gewährleistet, dass gezielt auf beliebige Seiten eines PDF-Dokuments zugegriffen werden kann. In PostScript erfordert dies, zuvor den Programmcode aller vorausgehenden Seiten zu interpretieren.
PostScripts Grafikmodell wurde in PDF übernommen und erweitert. Beliebige PostScript-Dateien können daher ohne Verlust grafischer Informationen in PDF-Dateien umgewandelt werden. Umgekehrt ist dies nur möglich, wenn das PDF-Dokument auf in PostScript fehlende Elemente wie Transparenz verzichtet. Darüber hinaus kann PDF ausfüllbare Formulare, Pop-up-Kommentare, Video- und Audiomaterial, semantische Tags und weitere Elemente enthalten, die über PostScripts Funktionsumfang hinausgehen.
Versionsgeschichte
- PostScript Level 1: 1984
- Display PostScript: 1988
- PostScript Level 2: 1991
- PostScript 3: 1998
Verwandte Sprachen und Formate
- Encapsulated PostScript (EPS)
- Portable Document Format (PDF)
- Variable Print Specification (VPS)
- Extensible Stylesheet Language – Formatting Objects (XSL-FO)
- Printer Command Language (PCL)
Literatur
- Adobe Systems, Inc. (Hrsg.): PostScript language tutorial and cookbook. (The blue Book), Addison Wesley, Reading, Massachusetts 1985, ISBN 0-201-10179-3 (kostenloser PDF-Download)
- Adobe Systems, Inc. (Hrsg.): PostScript language reference. Addison Wesley, Boston 1999, ISBN 0-201-37922-8 (kostenloser PDF-Download)
- Susanne Dotzauer: PostScript. (Schnellübersicht PC), Markt und Technik, Haar 1991, ISBN 3-89090-995-7
- Tobias Weltner: Das große Buch zu Post-Script. Data-Becker, Düsseldorf 1991 (mit Beispielprogrammen auf Diskette), ISBN 3-89011-379-6
- Ingo Klöckl: PostScript. Einstieg – Workshop – Referenz. (Hanser-Programmier-Praxis; mit CD-ROM, enthält umfangreiches Toolkit, vorkonfiguriert für 11 Systeme), Hanser, München u. Wien 1995, ISBN 3-446-18381-7
- Thomas Merz; Olaf Drümmer: Die PostScript- & PDF-Bibel. PDFlib GmbH, München 2002, ISBN 3-935320-01-9 (kostenloser PDF-Download)
- Ross Smith: PostScript. Kommandos, Spezialeffekte, Batchprogrammierung. München tewi, 1991, ISBN 3-89362-068-0.
Weblinks
- PostScript Referenzhandbücher von Adobe (englisch)
- Umfangreiche Linksammlung zu allen wichtigen PostScript-Ressourcen im Internet (englisch)
- Peter Vollenweider: Einführung in PostScript und PostScript für Workstations (Einführung zu Display PostScript)
- Frank Richter, Jens Pönisch: Die Drucksprache PostScript (Vortragsskripte)
- Dietrich Zawischa: Programmieren in PostScript
Interessante Beispiele von PostScript-Programmierung:
- Strichcode Generator von Terry Burton.
- Conways Spiel des Lebens (vgl. auch den Wikipedia-Artikel Conways Spiel des Lebens)
- Deutsche Umlaute in PostScript
Einzelnachweise
- ↑ Thomas Merz; Olaf Drümmer: Die Postscript- & PDF-Bibel. 2002, S. 18
Wikimedia Foundation.