Postscript - eine Geschichte über Objektorientierte Programmierung

  • Hier kommt eine Menge Text. Wer sich für Programmieren und/oder Drucken interessiert, darf gern bis zum Ende durchhalten :)

    Als ihr noch jünger oder noch nicht mal auf dieser Welt wart, konnten Drucker nicht alles drucken.
    "Page to complex".

    John Warnock störte das Problem ausreichend, um später bei Xerox zu kündigen und mit (u.a.) Charles Geschke die Firma Adobe zu gründen.
    Eine Geschichte von "die richtigen Leute mit den richtigen Problemen zur richtigen Zeit"
    Der Zeitpunkt war günstig, denn drei Hardware-Entwicklungen standen unmittelbar bevor:
    der erste kostengünstige Personal Computer mit Bitmap,
    der erste kostengünstige Laserdrucker und ein Preisverfall bei Speicherchips.
    Und die richtige Person war der Apple-Gründer Steve Jobs, der den ersten erfand,
    auf den zweiten hoffte
    und Adobe aufforderte, diese beiden zur problemlosen Zusammenarbeit zu bringen.

    Heute drucken Laserdrucker Buchstaben in guter Qualität, da ihr Laser den Befehlen einer einfachen Software gehorcht.
    Aber mit anspruchsvollerer Software wie PostScript können Laserdrucker noch viel mehr.

    Das ist Code. Keine Grafik.


    Die erste Gruppe von Befehlen (rot) identifiziert eine Schriftart aus der PostScript-Schriftartenbibliothek und vergrößert sie von der 1-Punkt-Größe, in der sie gespeichert ist, auf 50 Punkte (im Schriftsatz sind es 72 Punkte pro Zoll).
    Die nächste Befehlsgruppe (blau) teilt dem Laserdrucker mit, an welchem Punkt auf der Seite die linke untere Ecke des Wortes verankert werden soll.
    Der nächste Befehl (gelb) streckt das Schriftbild vertikal, während es horizontal unverändert bleibt.
    Die letzten Befehle (violett) geben die zu zeichnenden Buchstaben an und weisen den Drucker an, das Bild zu erzeugen.

    PostScript kann all dies - Linien und Kurven zeichnen, Text in beliebigen Winkeln kippen oder ein Foto in verschiedenen Grautönen schattieren.
    Es ist eine ebenso vollständige und flexible Programmiersprache wie
    Pascal, C oder Forth, mit Variablen, Schleifen, Konditionalen, Operatoren und Routinen und bietet eine beliebige Anzahl von Möglichkeiten, die gleiche Ausgabe zu erhalten.

    Das PostScript-Programm wird auf dem Computer entweder von jemandem erstellt, der die Sprache verwendet,
    oder von einer Desktop-Publishing-Software oder einer anderen Anwendungssoftware, die z. B. die Bewegungen einer Maus in ein PostScript-Programm umsetzt.
    (Andere Seitenbeschreibungssprachen sind für einen der beiden Zwecke optimiert, nicht für beide.)
    Dieses Programm wird über ein lokales Netzwerk oder über einen RS-232-Anschluss an den Laserdrucker gesendet.
    Dort wird es vom PostScript-Interpreter, einer im ROM befindlichen Software, in Anweisungen für den Drucker umgewandelt.
    Auf derselben Platine wie der bis zu 2 Megabyte große ROM befindet sich ein Motorola-Prozessor der 68000er-Serie, der die Anweisungen ausführt und die Seiten druckt.

    Wohl gemerkt: hier wird nicht Pixel pro Pixel in Zeilen geschoben wie zb mit den alten Scannern

    Bei den ersten Laserdruckern, waren die Dinge noch einfacher.
    Sie wurden durch ein Druckprotokoll namens Press gesteuert, bei dem es sich nicht um eine Programmiersprache, sondern um eine Reihe von Anweisungen handelte,
    mit denen Bilddaten in einem stetigen Strom an einen Drucker gesendet wurden.
    Mit Buchstaben und einfachen Bildern kam es gut zurecht, aber bei detaillierteren Bildern gab der Drucker die Meldung aus: "Seite zu komplex".
    Also Bild runterrechnen/vereinfachen um es drucken zu können.

    Wie es dann zum "jetzt aber richtig" kam

    Simulation des New Yorker Hafens
    1971 hatte sich Evans & Sutherland verpflichtet, die New York Maritime Academy mit einem Simulator für die Ausbildung von Hafenlotsen auszustatten.
    Die Auszubildenden sollten auf dem Modell einer Schiffsbrücke sitzen, umgeben von fünf 3,6 mal 9 Meter großen Bildschirmen,
    auf denen eine computergenerierte Darstellung des New Yorker Hafens zu sehen war,
    komplett mit Gebäuden, Molen, beweglichen Bojen, wechselnden Wetterbedingungen und anderen Schiffen,
    denen man ausweichen musste. Das System musste Bilder in voller Farbe für fünf Projektoren mit 30 Bildern pro Sekunde erzeugen.

    Evans & Sutherland hatte noch nie etwas so Komplexes produziert.
    Das Unternehmen ließ die Zeit verstreichen, bis nur noch eines der drei Vertragsjahre übrig war und "alle den Panikknopf drückten", sagt Warnock.
    Um Zeit zu sparen, ließ das Unternehmen die Hard- und Software parallel entwickeln.

    Der Druck legte den Grundstein für das, was später PostScript werden sollte.
    Offensichtlich war eine Datenbank, die alles im Hafen auflistete, unerlässlich und musste in völliger Unkenntnis der Hardware, auf der sie schließlich laufen würde, entwickelt werden.
    Also beschloss Warnocks Team, eine Sprache zu erfinden, die nichts mit einem Computer zu tun hatte.
    Erst wenn die Hardware des Simulators fertig war, sollte ein Compiler entwickelt werden, der die Datenbank in die entsprechende Maschinensprache übersetzt.

    In der Zwischenzeit erwies sich die Eingabe von Informationen über den Hafen in die Datenbank als mühsam.
    Karten auf ein Digitalisierungs-Tablett zu legen und sie mit einem Stift an zahlreichen Punkten zu berühren, war nicht so schlimm.
    Aber die Eingabe der Details über eine Tastatur - ob es sich bei dem berührten Punkt um einen Pier eines bestimmten Typs oder um ein Gebäude oder eine Insel handelte - war mühsam.
    Um diese Aufgabe zu erleichtern, verbrachte John Gaffney, ein Mitglied von Warnocks Gruppe, ein Wochenende damit, eine Software-Routine zu schreiben,
    die die Informationen zu den Objekten aus Menüs generieren sollte.

    Als der Hafensimulator (mit nur geringer Verspätung) fertiggestellt war,
    hatte Warnock entdeckt, wie leistungsfähig eine objektorientierte Sprache ist.
    Im Gegensatz zu Basic oder Fortran, bei denen der Benutzer jede einzelne Anweisung buchstabieren muss,
    packt sie all diese Details in Module oder Objekte, die der Benutzer mit nur wenigen Direktiven steuert.
    Warnock hatte auch herausgefunden, dass die Unabhängigkeit der Software von den Geräten "eine große Hebelwirkung und Flexibilität" bietet.

    Nach diesen Erkenntnissen wandte sich seine Gruppe der Erweiterung von Gaffneys kleinem Interpreter zu einem vollständigen Programmiersystem für computergestütztes Design (CAD) zu.
    Im Jahr 1977 wurde dieses Projekt von Evans & Sutherland als The Design System veröffentlicht.
    "Es hatte eine interaktive, stapelorientierte Architektur", so Gaffney, "mit einfachen Befehlen für das Hinzufügen und Entfernen von Argumenten auf dem Stapel und einem umfangreichen Wörterbuch für Nachschlagezwecke."
    (Eine solche Architektur speichert Daten, wie sie empfangen werden, und stapelt sie wie einen Stapel Bücher. Ein Befehl wie "add" würde die obersten Daten vom Stapel nehmen, sie bearbeiten und das Ergebnis wieder auf den Stapel "schieben".)

    Nur ein einziges Exemplar von The Design System wurde jemals veröffentlicht, als Testumgebung für die endgültige Entwicklung.
    Aber der Projektleiter der anderen Firma starb und The Design System starb mit ihm.
    Warnock jedoch nahm den Stapel und die Wörterbuchideen - zusammen mit dem, was er aus dem Hafenprojekt gelernt hatte.

    Xerox verwendete damals eine Programmiersprache namens Mesa.
    1978 überredete Warnock einen anderen Xerox-Forscher, Martin Newell, ihm dabei zu helfen, The Design System in Mesa neu zu erstellen.
    Das Ergebnis "JAM" bewies, dass die Konzepte für den Laserdruck geeignet waren.

    Jam war objektorientiert und geräteunabhängig.
    Aber es benötigte einige Funktionen, wie z. B. Schriftarten, die in keinem seiner Vorgänger zu finden waren.
    Außerdem, so erinnert sich Warnock, "verwendete Xerox für jeden Drucker ein anderes Druckschema.
    Die Star-Workstations [die damals entwickelt wurden] brachen unter der Last zusammen, die sie mit sich brachten, wenn man versuchte, sie alle unterschiedlich anzusteuern."

    Also machten sich Warnock und eine Gruppe von Forschern unter der Leitung von Charles Geschke daran, Jam mit dem älteren Press-Protokoll zu Interpress zu verschmelzen,
    einer standardisierten, geräteunabhängigen Sprache, die alle Laserdrucker der Xerox Corp. ansteuern konnte.
    Interpress wurde 1981 fertiggestellt, aber leider war das Ende noch nicht in Sicht.
    Aufgrund des Kompromisses zwischen Jam und Press "wurde die Sprache in ihrer Neugestaltung kompliziert", sagt Warnock.
    Und Xerox stellte sich die Frage der Standardisierung, indem es mehrere Versionen der Sprache herstellte, so dass die älteren Laserdrucker des Unternehmens in irgendeiner Form mit ihr arbeiten konnten.

    Am schlimmsten fand Warnock die Forderung, dass Drucker immer mit ihrer Nenngeschwindigkeit arbeiten sollten.
    Da ein Drucker mit einer Geschwindigkeit von 20 Seiten pro Minute nichts sehr Komplexes in drei Sekunden produzieren konnte, sah er sich wieder mit seiner Nemesis "Seite zu komplex" konfrontiert.
    Die Einschränkung stammte aus dem Kopierergeschäft, erklärt Geschke, wo "die Preisgestaltung für gemietete Geräte auf Kopien pro Tag basierte.
    Aber beim elektronischen Druck war unserer Meinung nach die Funktion am wichtigsten, also gab es eine echte Abweichung zwischen unserer und der Xerox-Position."

    In der Überzeugung, dass jeder Standard besser ist als keiner, begannen Warnock und Geschke dennoch, bei der Xerox Corp. für Interpress zu werben.
    Schließlich gewannen sie - sozusagen. Aber Xerox fügte hinzu, erinnert sich Warnock,
    "'Wir werden es geheim halten, weil es so wunderbar ist und wenn wir es veröffentlichen, könnten die Japaner es vor uns einführen.'
    "Mensch", sagte ich, "ein geheimer Standard - das ist ein schwer zu verstehendes Konzept."

    In der Überzeugung, dass Xerox einen Fehler machte, verließen Warnock und Geschke den Laden,
    um ihre Seitenbeschreibungssprache erneut zu implementieren, diesmal aber in einem Unternehmen, das sie kontrollierten und gründeten im Dezember 1982 Adobe.

    Warnock und Geschke hielten mit ihren Plänen nicht hinterm Berg, und bald erfuhr nicht nur Steve Jobs davon,
    sondern auch C. Gordon Bell.
    Bell erzählte den beiden, dass sechs Forschungsteams bei Digital seit Jahren versuchten, eine vernünftige Methode zur Steuerung ihrer Laserdrucker zu entwickeln,
    und wenn Adobe das Problem lösen könnte, wäre Digital an einer Lizenzierung der Lösung interessiert.

    Jobs stand vor einem ähnlichen Problem.
    Der Macintosh war in der Entwicklung weit fortgeschritten, aber ohne einen Drucker in Briefqualität würde er auf dem Geschäftskundenmarkt keine Chance haben.
    Andere Drucker kamen nicht in Frage, weil sie die für den Macintosh grundlegenden Bitmap-Grafiken nicht erzeugen konnten.
    Die Apple-Ingenieure waren jedoch nicht in der Lage, rechtzeitig zur Einführung des Macintosh hochwertige Grafiken aus einem Laserdrucker herauszuholen.

    Seit Jahren haben Theoretiker vorgeschlagen, Bilder in ihre Liniensegmente zu zerlegen, aber ihre Algorithmen neigten dazu, bei schwierigen Fällen zu versagen.
    Zum Beispiel bei einer großen Anzahl von Linien, die sich in einem einzigen Punkt schneiden (siehe Abbildung).
    Das Adobe-Team hat dieses Problem nach eigenen Angaben mit einem eigenen Algorithmus gelöst, dessen Ergebnisse hier abgebildet sind.
    Das Bild wurde mit Adobe Illustrator erstellt, und wurde auf dem ColorScript 100 gedruckt, dem ersten PostScript-Farbdrucker.

    Unbeeindruckt davon hatten Jobs und Robert Belleville, den perfekten Macintosh-Laserdrucker erträumt
    - einen, der alle Schriften der Welt ohne Hilfe eines Diskettenlaufwerks produzieren konnte.
    Aber sie hatten "nicht die geringste Ahnung, wie man das anstellen sollte", sagt Belleville, bis er Putman auf einer Cocktailparty traf, hörte, was Adobe vorhatte, und Jobs zu einem Besuch mitbrachte.

    "Ich war überglücklich!", erinnert sich Belleville.
    "Ihr System konnte einfache Dinge schnell erledigen und auch vollständige Grafiken und gescannte Bilder verarbeiten.
    Und als ich sah, dass die Skalierung von Schriften in einem so großen Bereich möglich war, waren wir begeistert."

    Jobs schlug vor, dass Adobe ein Softwareunternehmen wird, an Hersteller statt an den Einzelhandel verkauft und eine Lizenzvereinbarung mit Apple aushandelt.
    Adobe war von der Idee angetan, unterzeichnete Ende 1983 den Vertrag mit Apple und wies zur Überraschung von Hambrecht & Quist bereits im ersten Jahr einen Gewinn aus.

    Schrift-Algorithmen
    Die Neuimplementierung der Sprache Jam mit ihrer Objektorientierung, den Stapeln, der Postfix-Notation (bei der die Operanden vor ihren Operatoren stehen) und dem Wörterbuch war relativ einfach.
    Der größte Teil der Forschung war bei Evans & Sutherland abgeschlossen worden. Im Grunde musste Adobe nur noch ein Produkt entwickeln,
    das nach der verwendeten Postfix-Notation PostScript genannt wurde, weil es das letzte sein sollte, was mit einem Bild vor dem Druck geschieht.
    Da das Produkt "alles drucken" sollte, musste es außerdem die Funktionalität über Geschwindigkeit und Kosten stellen -
    drei Faktoren, die bei der Entwicklung von Mikroprozessorsystemen wie dem, das den Laserdrucker steuern sollte, gegeneinander abgewogen wurden, erklärt Putman.

    Einer davon war die Entwicklung von Schriftalgorithmen, proprietären Formeln für die Erstellung von Text.
    "Selbst mit Interpress", so William Paxton, Direktor für fortgeschrittene Entwicklung bei Adobe, "waren die Schriften eine Warze an der Seite eines ansonsten eleganten Designs."
    Interpress konnte zwar beliebige Transformationen wie Skalieren und Drehen an Bildern vornehmen, aber in seinen frühen Versionen war dies bei Bitmap-Text nicht möglich, ohne die Qualität zu beeinträchtigen.

    PostScript hingegen vereinheitlicht Text und Grafik, indem es die Schriftarten als Umrissdarstellungen der Buchstaben und nicht als Bitmaps speichert.
    Anfang 1983 war diese Vereinheitlichung jedoch leichter vorzuschlagen als zu verwirklichen.
    "Qualitativ hochwertige Schriften aus Umrissdarstellungen von Zeichen zu erzeugen, galt als unlösbares Problem", sagt Warnock, denn es war schwierig, glatte Kurven unterschiedlicher Breite ohne gezackte Ränder zu erzeugen.
    Die Druckqualität schien nur mit einem Fotosatzgerät zu erreichen zu sein.

    Adobes Lösung des Schriftproblems war so erfolgreich, dass Linotype, Letraset und andere Inhaber der beliebtesten Schriftdesigns erstmals bereit waren, die Umrissdarstellungen ihrer Schriften zu lizenzieren.
    Keine frühere Technologie war ihnen gerecht geworden.
    (Ironischerweise lizenziert Adobe jetzt seine Schrifttechnologie an Linotype, und Linotype konvertiert seine gesamte Bibliothek von etwa 2000 Schriften in PostScript-Darstellungen).

    Ein weiterer technischer Durchbruch von Adobe ist der Reducer genannte Algorithmus, der komplexe Formen in einfachere Formen zerlegt, die für PostScript leichter zu beschreiben sind.

    "Ungefähr eine Woche, nachdem ich 1983 bei Adobe angefangen hatte", erinnert sich Brotz, "erwähnte John Warnock diesen ziemlich wichtigen Algorithmus, der geschrieben werden musste.
    Und ich, der keine Erfahrung im Grafikbereich hatte, meldete mich freiwillig.
    Einige Monate später, als ich älter und weiser war, wurde mir klar, dass es sich wirklich um eines der schwierigsten Probleme der Welt handelte."

    Aber Brotz gab nicht auf, und er sagt: "Wir haben jetzt einen exakt korrekten Reduktionsalgorithmus.
    Er ist das Herzstück des Grafiksystems in PostScript."
    Und eine Liste, die Brotz führt, zeigt, dass in mehr als zwei Jahren keine Fehler im Reducer entdeckt wurden.

    Adobe hatte sich bereit erklärt, seine Software zur Installation in den LaserWriter im Sommer 1984 zu liefern.
    Aus Marketing- und Produktionsgründen sollte der LaserWriter selbst jedoch erst im Januar 1985 auf den Markt kommen.
    So nutzten die Adobe-Ingenieure die Zeit, um den Code zu straffen (die endgültige Version enthielt etwa 200.000 Bytes) und die Algorithmen abzustimmen.
    Sie nahmen auch einige spezifischere Änderungen vor.

    Eine davon betraf die Handhabung von Eingabegeräten.
    Ursprünglich sollte PostScript unabhängig vom Ausgabegerät, aber nicht vom Eingabegerät sein.
    Warnock war der Meinung, dass PostScript, um gescannte Bilder zu verarbeiten, Informationen über eine breite Palette von optischen Scannern enthalten müsste.
    Doch nachdem Brotz die Parameter von nur zwei der vielen Scannertypen programmiert hatte, stellte er fest, dass diese Aufgabe nicht nur horrend und repetitiv war, sondern auch eine Menge Speicherplatz beanspruchte.

    Andy Shore, ein Informatiker bei Adobe, hörte ihn eines Tages jammern und schlug vor, eine PostScript-Prozedur zu schreiben, die so tut,
    als sei sie ein Eingabegerät und die Bildinformationen in einem Standardformat ausspuckt, unabhängig von den Eigenschaften des tatsächlichen Standards.
    Brotz glaubte nicht, dass es funktionieren würde, und "Warnock bezeichnete es prompt als 'Andy's Stupid Input Device'."

    Dennoch dachte Brotz, dass es für die Erstellung von Testmustern hilfreich sein könnte, und als er es implementierte,
    "stellte sich heraus, dass Andys dummes Eingabegerät der kleinste gemeinsame Nenner war und der gesamte Sonderfallcode verschwinden konnte."
    Probleme treten nur dann auf, wenn die Bilddaten für die Übertragung oder Speicherung komprimiert wurden; der Programmierer muss dann eine Routine zur Dekomprimierung der Daten einfügen, bevor sie an den Bildalgorithmus übergeben werden.

    Eine weitere Verbesserung bestand in der Erstellung von Leistungsprofilen.
    Die Fließkommaroutinen waren die Hauptschuldigen, da sie rechenintensiv sind.
    Also nahm das Team einige der Algorithmen für die üblichen Operationen, wie das Aufbrechen von Kurven in Vektoren und das Zeichnen von Umrissen, und schrieb sie in weniger flexibler Festkomma-Arithmetik um.
    Nur wenn die Festkommaarithmetik zu ungenau wäre, ruft der Interpreter die Gleitkommaroutine auf.

    "Ohne Verlust an Allgemeingültigkeit", so Edward Taft, leitender Informatiker bei Adobe, "konnten wir 99 Prozent der Fälle fünfmal schneller bearbeiten als zuvor."

    Um die restlichen 1 Prozent zu verbessern, schickte Belleville einen seiner Ingenieure von Apple, Jerome Coonen, einen anerkannten Experten für Fließkommazahlen.
    Er optimierte die Algorithmen, so dass "während früher ein Algorithmus sechs Multiplikationen, vier Divisionen und drei Quadratwurzeln benötigte,
    jetzt nur noch drei Multiplikationen, vier Divisionen und eine Annäherung an eine Quadratwurzel erforderlich waren."

    Während der gesamten Entwicklung von PostScript wurde die Geschwindigkeit regelmäßig gegen die Druckfähigkeit eines Bildes eingetauscht.
    Die Gruppe ging davon aus, dass sie die Leistung verbessern könnte, wenn sie all diese Funktionen einbauen würde;
    wenn sie aber Funktionen weglassen würde, könnten sie sie vielleicht nie wieder einbauen.

    Allerdings, so Putman, hatten sie manchmal Zweifel.
    Also entwarfen sie eine Version von PostScript, die Informationen so schnell ausspuckte, wie sich der Laser über die Seite bewegte.
    Die Kosten für den Rahmenpuffer fielen weg - ebenso wie die Möglichkeit, Seiten zu drucken, die für die Software zu kompliziert waren, um sie rechtzeitig zu verarbeiten.

    Adobe nannte diese Implementierung Subscript, ließ sie aber nach sechs Monaten wieder fallen. Taft sagt:
    "Wenn man versucht, einen Standard zu fördern, gibt es nichts Schlimmeres, als eine Untermenge des Standards herauszugeben.
    Das bedeutet, dass alle Anwendungen auf den kleinsten gemeinsamen Nenner ausgerichtet sind."

    Die Fehlersuche während des gesamten Projekts war anstrengend, weil das Adobe-Team "große Angst davor hatte, den ganzen Code auf ROMs zu veröffentlichen", sagt Brotz.
    "Wir kamen aus der Denkschule, dass Software weich ist. Wenn man also Probleme hat, kann man einfach eine neue Version herausbringen.
    Aber Apple sagte uns: 'Hey, wir liefern unser System immer in ROM aus, warum könnt ihr das nicht auch?'"

    Im Januar 1985 wurde der Apple LaserWriter vorgestellt, der praktisch fehlerfrei war. 1984 unterzeichnete Adobe Lizenzvereinbarungen mit QMS Inc., Linotype und Dataproducts Corp.
    Heute gehört sogar Hewlett-Packard Co. zu den 23 Unternehmen, die PostScript-Interpreter für ihre Drucker anbieten, obwohl deren Seitenbeschreibungssprache PCL zu den ersten Konkurrenten von PostScript gehörte.

    Billig zahlt sich aus
    Wie bereits erwähnt, war eine davon ein billiger Laserdrucker. Als Adobe gegründet wurde, kostete der billigste etwa 10.000 Dollar.
    Außerdem wog er so viel wie ein Schreibtisch, so dass er vor Ort gewartet werden musste und über einen Händler verkauft wurde, nicht auf einer Cash-and-Carry-Basis.
    Dann stellte Canon Inc. den Desktop-Laserdrucker Canon LBP-CX vor, der zudem noch hervorragend druckte.

    Außerdem war ein auf Bitmap basierender Personal Computer in Sicht - der Apple Macintosh.
    Alle bisherigen preisgünstigen Personal Computer hatten Zeichengrafiken verwendet.

    Der dritte Glücksfall war der Preisverfall bei den Speicherchips.
    Warnock kommentiert: "Die meisten Unternehmen beschäftigen sich nur mit der heutigen Technologie und den bekannten Kosten.
    Das Geniale an Steve Jobs ist, dass er sagt: 'Es wird diesen Chip zu diesem Zeitpunkt zu diesem Preis geben, und ich werde mein Produkt so gestalten, dass es ihn nutzt.'"
    Und in der Tat, als der LaserWriter im Januar 1985 angekündigt wurde, kosteten 256K RAMs etwa 4 Dollar pro Stück und der Drucker konnte zu einem Preis von 6995 Dollar angeboten werden.

    Noch mehr?
    -> https://freecomputerbooks.com/PostScript-Lan…d-Cookbook.html
    -> https://www.adobe.com/jp/print/postscript/pdfs/PLRM.pdf

    Und ja, viele Drucker und Programme verwenden heute andere Interpretationssprachen für die Ausgabe.
    Im Profibereich jedoch ist PS noch immer ein sehr wichtiges Thema. Auch die PDF-Engine beruht nach wie vor auf PS.
    Wobei wir heute bei PS Level 3 sind.

    Und noch mehr dazu:
    -> https://de.wikipedia.org/wiki/PostScript

    BTW: ich steh einfach auf Schriften und das ganze Drumherum.
    Seit Jahren finde ich noch immer etwas neues und wollte euch hiermit einfach mal in ein Meer voller Nerdstuff werfen.
    Nichts, womit man bei Parties der Storyteller sein wird. Aber etwas, was einen vielleicht aus unerklärlichen Gründen interessiert.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!