Subpixel-Rendering

Algorithmen für hochauflösende Computerdarstellung

Subpixel-Rendering (engl.) bedeutet übersetzt Teilbildpunktwiedergabe und steht für Algorithmen, die Subpixel eines Farbbildschirms zusätzlich zur Erhöhung der dargestellten Auflösung von Text und Bildern benutzen. Da Subpixel meist horizontal angeordnet sind, wird die horizontale Auflösung erhöht.

Normales Rendering ohne Antialiasing Subpixel-Rendering ohne Antialiasing Normales Rendering mit Antialiasing Subpixel-Rendering mit Antialiasing

Die Verbesserung in der Darstellung ist am deutlichsten auf Bildschirmen, bei denen die Subpixel deutlich getrennt sind, wie es bei LCD- oder AMOLED-Bildschirmen der Fall ist. Je nach Qualität des Geräts kann aber auch die Lesbarkeit bei Röhrenbildschirmen erhöht werden.

Geschichte

Bearbeiten

Die Technik wurde im Jahre 1988 von IBM entwickelt,[1] um die Schriftdarstellung auf Farb-LCDs wie Laptop-, Mobilfunk- oder Flachbildschirmen zu verbessern.

In größerem Stil wurde das Verfahren von Apple bei Mac OS 9 und von Microsoft bei Windows XP als ClearType angeboten. Bei beiden Betriebssystemen war es in der Grundeinstellung jedoch nicht aktiviert. Dies änderte sich erst mit macOS und Windows Vista. Auch der bei BSD-Systemen und Linux verbreitete X.Org-Server und dessen Vorgänger XFree86 ermöglichen Subpixel-Rendering.

Funktion

Bearbeiten
 
Neun Pixel in RGB-Anordnung

Durch Ansteuerung eines einzelnen Subpixels anstelle eines vollständigen (d. h. aus mehreren Subpixeln bestehenden) Pixels erhöht sich die nutzbare Auflösung des Bildschirms in einer Richtung um den Faktor drei. Die Richtung ist dabei sowohl vom internen Aufbau des Bildschirms abhängig als auch von dessen Ausrichtung, etwa bei Nutzung der Pivot-Funktion. Die höhere Auflösung erlaubt prinzipiell eine feinere Darstellung von Details.

Die Nutzung von Subpixel-Rendering wird aber stets mit Farbsäumen erkauft, denn bei der additiven Farbmischung werden pro Pixel (Bildpunkt) drei Subpixel in den Grundfarben Rot, Grün und Blau benötigt, um die Farbe Weiß auf dem Bildschirm darzustellen. Dies ist bei Pixeln, die im Bereich des Übergangs zwischen Schrift und Hintergrund liegen, aber nicht immer gewährleistet, da deren Subpixel die Farbe Schwarz anzeigen, soweit sie in die Darstellung der Schriftzeichen einbezogen sind. Die Grundfarben der übrigen, außerhalb der Schriftzeichen liegenden Subpixel ergeben in ihrer Mischung dann andere Farben als Weiß.

 
Derselbe Text unterschiedlich gerendert:
Oben: Ohne ClearType   Unten: Mit ClearType
Links: Text in normaler Größe   Mitte: Text 8× vergrößert auf einem Bildschirm ohne Subpixel   Rechts: Text 8× vergrößert auf einem Bildschirm mit Subpixeln

Sofern Subpixel-Rendering mit Antialiasing, d. h. Schriftglättung, verbunden wird, tritt als weiterer Effekt eine Kontrastverminderung hinzu. Die Subpixel der Schriftzeichen werden dabei mit unterschiedlich hellen Subpixeln umgeben, so dass für das Auge die Pixeltreppen weiter aufgelöst werden.

Beide Effekte können individuell als angenehm oder störend empfunden werden. Grundsätzlich basieren Subpixel-Rendering und vergleichbare Techniken auf der Tatsache, dass das menschliche Auge Helligkeitskontraste wesentlich besser wahrnehmen kann als Farbunterschiede.

Das nebenstehende Bild macht Subpixel-Rendering im Vergleich zur konventionellen Schriftdarstellung deutlich. Oben wird das herkömmliche Schriftbild gezeigt, unten dasjenige mit ClearType. Links sieht man die normale Darstellung, in der Mitte und rechts die um ein Vielfaches vergrößerte. Hierbei kann der Bildschirm der beiden rechten Teilbilder Subpixel darstellen im Gegensatz zu dem der beiden mittleren.

Abstimmung

Bearbeiten
 
Oktogonale Subpixelanordnung

Subpixel-Verfahren wie ClearType müssen für jedes Anzeigegerät individuell abgestimmt werden. Insbesondere ist für die Berechnung der Farbabweichungen die Anordnung der Subpixel zueinander entscheidend. Bei den meisten Flachbildschirmen (LCD oder AMOLED) sind die Subpixel horizontal in der Reihenfolge RGB (Rot-Grün-Blau) angeordnet. In selteneren Fällen kommt die Reihenfolge BGR zur Anwendung. Es gibt auch Bildschirme, die gänzlich andere Anordnungen verwenden, wie z. B. vertikale oder oktogonale Anordnungen (ähnlich der Anordnung von Bildpunkten in den meisten Röhrenbildschirmen), mehr grüne als rote und blaue oder gar zusätzliche weiße Subpixel.

Der für das Subpixel-Rendering verwendeten Software muss die Anordnung der Subpixel bekannt sein. Andernfalls werden die falschen Subpixel abgeschwächt, und die Kante erscheint unschärfer als zuvor. Außerdem sind manche Monitore mit Streufolien ausgestattet, die die Helligkeit der Subpixel auf das ganze logische Pixel verteilen. Viele Desktop-Umgebungen bieten daher die Möglichkeit, dem System die tatsächliche physikalische Anordnung der Pixel mitzuteilen.

Abstimmung unter Windows

Bearbeiten

Unter Windows kann Cleartype auf folgende Art und Weise konfiguriert werden:

  • Es kann komplett ein- und ausgeschaltet werden.
  • Als Pixelanordnung werden RGB- wie BGR-Pixel unterstützt. Andere Pixelgeometrien wie auch hochkant gedrehte Monitore werden weder erkannt noch unterstützt (betrifft XP, Vista, 7, 8/8.1 und 10).
  • Es kann zwischen Subpixelrendering, reinem Antialiasing und einer Mischung aus beiden ausgewählt werden (ClearType Level: 0 … 100)
  • Vertikal Antialiasing kann zugeschaltet werden.
  • Der Gamma-Faktor des Displays kann angegeben werden (Gamma: 1800 … 2200).
  • Schrift kann in unterschiedlichen Dicken gerendert werden (Enhanced Contrast: 0 … 100).

Ansonsten sind noch folgende Dinge zu beachten:

  • Text-Rendering mit ClearType ist etwas langsamer als ohne.
  • ClearType wird nur für kleine Schriftgrößen verwendet.
  • Worte dürfen nicht als einzelne Buchstaben gerendert werden, es entstehen sonst bei leicht überlappenden Buchstaben Fehler.
  • Das vor allem in 16-Farben-Modi beliebte Schreiben von Schriften mit der XOR-Operation führt zu fehlerhaften Ergebnissen.
  • Das Ergebnis von ClearType unterscheidet sich je nach verwendeter Schnittstelle GDI oder DirectX/Direct2D. Bei letzteren können Buchstaben nicht nur subpixelgerendert werden, sondern auch um Subpixel verschoben werden.

Abstimmung mittels ClearType Text Tuner

Bearbeiten

ClearType Text Tuner stellt eine 9 Bildschirmpunkte hohe Schrift dar, die intern mit einer Auflösung von 1/6 Bildpunkt × 1 Bildpunkt gerendert wurde. Die Strichstärke beträgt horizontal 1 Bildpunkte, vertikal 1 1/3 Bildpunkte.

Die Bedeutung der Dialoge bleibt etwas im Dunkeln, daher wird diese hier erläutert.

 
Teil 1/4: Adjustment RGB vs. BGR-Pixel
In diesem ersten Dialog legt man den Subpixelaufbau eines Pixels fest. Links wählt man die geläufige RGB-Anordnung aus, rechts die eher ungeläufige BGR-Anordnung. Letztere erhält man, wenn man ein Display auf den Kopf stellt und gleichzeitig die Bildausgabe um 180° dreht. Andere Subpixelanordnungen oder um 90° oder 270° gedrehte Bildschirm unterstützt Windows seit über 10 Jahren nicht.
 
Teil 2/4: Gamma Adjustment
In diesem Dialog stellt man ein, mit welchem Gamma das Display arbeitet. Die 6 Einstellungen sind für ein Gamma von 1,0, 1,2, 1,4, 1,6, 1,8 und 2,0 berechnet. Für übliche Monitore sind die letzten zwei Einstellungen am besten (Gamma 1,8 und 2,0), allerdings kann man den Dialog missbrauchen, um die Schriftausgabe fetter zu „gestalten“.
 
Teil 3/4: Berücksichtigung der Lage der Bildschirmsubpixel
 
Teil 4/4: Still under investigation

Verfügbarkeit

Bearbeiten

Subpixel-Rendering wird von Mac OS 9 und macOS sowie diversen X-Window-Systemen, der Grafikumgebung für unixartige Systeme, unterstützt. Ab macOS 10.14 „Mojave“ steht Subpixel-Rendering nicht mehr zur Verfügung, da die Rendering-Pipeline des Betriebssystems dies nicht mehr unterstützt.

ClearType ist für Windows XP, Windows Server 2003, Windows Vista und Windows Mobile seit 2003 verfügbar.

Beim Drehen von Bildschirmen von der üblichen Breitformatdarstellung in die Hochformatdarstellung ändert sich die Pixelanordnung. Windows XP, Windows Vista und Windows 7 berücksichtigen dies nicht und führen dadurch zu einer schlecht lesbaren, mit deutlichen Farbrändern versehenen Darstellung. Sie beherrschen nur horizontale RGB- und BGR-Anordnungen. Bei Windows Mobile wird Cleartype deaktiviert, wenn das Gerät gedreht wird.

In Internetforen und Blogs werden Nachteile von Subpixel-Rendering diskutiert.[2] Webdesigner stellen fest, dass sich die Schrift in einem vorgegebenen Layout um einige Pixel verschieben und dann ein anderes Layout notwendig machen kann. Dieses Problem kann auch aus anderen Gründen auftreten – beispielsweise bei Verwendung einer anderen Schriftart, der Inanspruchnahme der Browser-Zoom-Funktion oder der Nutzung einer wesentlich anderen Bildschirmauflösung –, so dass als Ursache nicht das Subpixel-Rendering angesehen werden sollte, sondern der Wunsch der Webdesigner nach pixelgenauem Seitendesign. Dafür werden teilweise zusätzliche browserabhängige CSS-Stilbeschreibungen angelegt, die man mit neuen Webbrowsern und aktuellen W3C-Standards reduzieren wollte.

Bei senkrechten Kontrastlinien (z. B. „I“-Strich bei Schwarz-auf-Weiß-Darstellung) sind durch das subpixelspezifische Rendering von Helligkeitswerten manchmal deutliche Farbschatten zu erkennen, die sich ähnlich wie unsaubere Farbüberdrucke im Papierdruck bemerkbar machen. Das Problem tritt aber in etwas schwächerer Form auch ohne ClearType auf, denn Farben werden auf Flüssigkristallbildschirmen immer durch waagerecht nebeneinander liegende Farbpixel aufgelöst. Demzufolge befinden sich die einzelnen Subpixel an unterschiedlichen Orten. Die unscharfe Darstellung kann sich auf die Texterkennung von Bildschirmsoftware auswirken; so ist beispielsweise die Zeichenerkennung von Babylon Translator signifikant eingeschränkt. Dies ist allerdings ein generelles Problem bei jeder Form des Antialiasing.

Weiterhin wird die Darstellung von vielen Benutzern als unscharf empfunden. Das unbewusste Bemühen des Auges, das künstlich unscharfe Schriftbild zu fokussieren, kann zu Ermüdungserscheinungen[3] und Kopfschmerzen[4] führen.

Subpixel-Rendering von Grafiken und Bildern

Bearbeiten
 
Subpixel-gerendertes Bild

Siehe auch

Bearbeiten
  1. Patent US5341153: Method of and apparatus for displaying a multicolor image. Veröffentlicht am 23. August 1994, Erfinder: Terry L. Benzschawel et al.
  2. Muss die Kröte 'ClearType' bei Windows 7 geschluckt werden oder nicht?
  3. Chris M. Hibbard: Computers Cause Migraines: Computer-Caused Headaches and Eye Strain. Terreldor Press, 2012 (englisch).
  4. golem.de: Ex-Microsoft-Manager nennt Konzern innovationsfeindlich. Darin: „Der Leiter der Office-Abteilung habe die Auffassung vertreten, Cleartype sei unscharf und bereite ihm Kopfschmerzen.“