Schriftrasterung

Insbesondere für kleine Schriftgrößen kann das Rendering von vektorisierten Schriftarten in der "Miniaturansicht" mit der Miniaturansicht erheblich variieren. Hier eine kleine Veränderung in der aufrecht = Multiplikator von 1.70 zu 1.75 Ergebnisse zu signifikanten und sich gegenseitig unterschiedlichen Rendering -Anomalien, möglicherweise aufgrund von Rundungsfehlern, die sich aus der Verwendung von Ganzzahl -Schriftgrößen ergeben.

Schriftrasterung ist der Prozess des Konvertierens von Text von a Vektor Beschreibung (wie in skalierbaren Schriftarten wie gefunden, z. TrueType -Schriftarten) zu einem Raster oder Bitmap Bezeichnung. Dies beinhaltet oft einige Kantenglättung Auf dem Bildschirm Text, um es reibungsloser und leichter zu lesen. Es kann auch beinhalten Hinweis- In den Schriftartaten eingebettet, die die Renderdetails für bestimmte Charaktergrößen optimieren.

Arten der Rasterisierung

Die einfachste Form der Rasterisierung ist einfacher Zeilenabnutzung ohne Anti-Aliasing jeglicher Art. In Microsofts Terminologie heißt dies Bi-Level (und im Volksmund "schwarz und weiß") Rendering, weil keine Zwischentöne (Grau) verwendet werden, um die Glyphen zu zeichnen. (Tatsächlich können zwei Farben als Vordergrund und Hintergrund verwendet werden.)[1] Diese Form des Renderings wird auch als Aliased oder "gezackt" bezeichnet.[2] Dies ist die am schnellsten Rendering -Methode in dem Sinne, dass es den geringsten Rechenaufwand erfordert. Es hat jedoch den Nachteil, dass gerenderte Glyphen die Definition verlieren und an kleinen Größen schwer zu erkennen sind. Daher enthalten viele Schriftdatendateien (z. B. TrueType) Hinweise Dies hilft dem Rasterizer, zu entscheiden, wo Pixel für besonders störende Bereiche in den Glyphen oder die Sätze von handgeschwenkten Bitmaps in bestimmten Pixelgrößen rendern.[1] Als prototypisches Beispiel alle Versionen von Microsoft Windows vor Windows 95 (z.B. Windows 3.1) Bereitstellung dieser Art von Rasterizer nur.[2]

Einfache Rasterisierung ohne Anti-Aliasing
Rasterisierung mit Anti-Aliasing ohne Hinweis
Rasterisierung mit Anti-Aliasing mit Hinweis. Hier sind Pixel gezwungen, nach Möglichkeit in integrale Pixelkoordinaten zu fallen
Rasterisierung mit Hinweis und Subpixel -Rendering für ein RGB -Flachfelddisplay

Ein komplizierterer Ansatz ist die Verwendung von Standard-Anti-Aliasing-Techniken aus Computergrafiken. Dies kann für jedes Pixel an den Rändern des Charakters als bestimmen betrachtet werden, wie viel von diesem Pixel der Charakter einnimmt, und das Zeichnen dieses Pixels mit diesem Grad der Opazität. Wenn Sie beispielsweise einen schwarzen Buchstaben (000000) auf einen weißen (ffffff) Hintergrund zeichnen, sollte ein Pixel idealerweise halb gefüllt sein (möglicherweise von einer diagonalen Linie von Ecke zu Ecke), 50% grau (BCBCBC). Eine überdurchschnittliche Anwendung dieses Verfahrens kann verschwommene Glyphen erzeugen. Wenn der Buchstabe beispielsweise eine vertikale Linie enthält, die ein Pixel breit sein sollte, aber genau zwischen zwei Pixeln fällt, erscheint er auf dem Bildschirm als zweipixelweite graue Linie. Diese Unschärfe handelt Klarheit gegen Genauigkeit. Moderne Systeme zwingen jedoch häufig Linien, in integrale Pixelkoordinaten zu fallen, wodurch Glyphen schärfer aussehen, aber auch Linien etwas breiter oder dünner machen, als sie auf ein gedrucktes Blatt Papier geschaut hätten.

Detail des Subpixel -Renderings und zeigt Positionen einzelner Farbpixel, aus denen sich die weiße Schrift bilden

Die meisten Computeranzeigen haben Pixel aus mehreren Subpixeln (normalerweise jeweils eine für Rot, Grün und Blau, die kombiniert werden, um den gesamten Farbenbereich zu erzeugen). In einigen Fällen, insbesondere bei Panel -Displays, ist es möglich, dies zu nutzen, indem sie an der Subpixelauflösung rendert, anstatt ganze Pixel zu verwenden, was die effektive Auflösung des Bildschirms erhöhen kann. Dies ist allgemein bekannt als Subpixel -Rendering. Eine proprietäre Implementierung des Subpixel -Renderings ist Microsoft's ClearType.

Derzeit verwendete Rasterisierungssysteme

In modernen Betriebssystemen wird die Rasterisierung normalerweise von a bereitgestellt gemeinsame Bibliothek Gemeinsam für viele Anwendungen. Eine solche gemeinsame Bibliothek kann in die eingebaut werden Betriebssystem oder der Desktop -Umgebungoder kann später hinzugefügt werden. Im Prinzip kann jede Anwendung eine andere Bibliothek der Schriftrasterung verwenden. In der Praxis versuchen jedoch die meisten Systeme, in einer einzelnen Bibliothek zu standardisieren.

Microsoft Windows hat seitdem das Subpixel -Rendering unterstützt Windows XP. Andererseits ist der Standard -Microsoft Rasterizer ohne ClearType ein Beispiel für eine, die priorisiert Typ Designer'S Absicht der Klarheit; Durch das Zwingen von Text in die integralen Koordinatenpositionen, folgt dem der Typ Designer'S Absicht, bestimmte Schriftarten an bestimmten Größen zu deuten und sogar nicht antialiasing Typ DesignerDie Absicht des Keuchens ist es einfacher, auf dem Bildschirm zu lesen, kann jedoch beim Drucken etwas anders erscheinen. Dies hat sich mit Direct2D/DirectWrite -Versand unter Windows 7 und Windows Vista Platform -Update geändert.

Mac OS X's Quarz unterscheidet sich durch die Verwendung einer schwimmenden Punktpositionierung; Es zwingt keine Glyphen in exakte Pixelorte, sondern verwendete stattdessen verschiedene Antialiasing -Techniken, einschließlich Subpixel -Rendering, um Zeichen und Zeilen zu positionieren, um weiter von der zu erscheinen Typ DesignerDie Absicht, anzunehmen und näher an den ursprünglichen Umriss. Das Ergebnis ist, dass das On-Screen-Display der gedruckten Ausgabe sehr ähnlich aussieht, aber gelegentlich in kleineren Punktgrößen schwer zu lesen ist.

Die meisten anderen Systeme verwenden die Freetyp Bibliothek, die abhängig vom Render -Modus zwischen den Implementierungen von Microsoft und Apple liegt;Es unterstützt das Hinweis und die Anti-Aliasing und führt optional das Subpixel-Rendering durch.

Verweise

Externe Links