Schönere Schrift auf TFT/LCD Bildschirmen

Aus wiki.archlinux.de
Kantenglättung mit Subpixeln und geringem Hinting

Die Verbesserungen durch den LCD-Filter werden in den meisten Fällen nur auf LCD-Monitoren sichtbar sein. CRTs haben im Gegensatz zu LCDs kein festes Pixelraster und sind deshalb in der Regel unschärfer. Diese Unschärfe kommt der gedruckten Schrift aber deutlich näher als die sehr scharfe und kontrastreiche Darstellung eines LCDs. Mit Subpixel-Rendering versucht man daher unter Berücksichtigung der Farbkomponenten einzelner Pixel harte Kanten zu glätten und so ein natürlicheres Schriftbild zu erzeugen. Bei geringen Auflösungen oder größeren Pixelabständen kann dies allerdings zu einem zu unscharf wirkenden Schriftbild führen.

Hinting dagegen versucht die Schriftarten an Geräte mit geringer DPI anzupassen, damit die Schrift auch dann noch lesbar bleibt, wenn nicht genügend Pixel vorhanden sind, um sie exakt darzustellen. Je stärker das Hinting aber eingestellt wird, desto weiter entfernt sich das Ergebnis von der ungehinteten, technisch optimalen Darstellung. Starkes Hinting wird dennoch generell schärfer wahrgenommen als geringes.

LCD-Filter

Pakete installieren

Um eine bessere und klarere Schrift auf TFT/LCD Bildschirmen zu erzielen, sollte man die Pakete libxft-lcd und fontconfig-lcd installieren. Für Qt 4.x Programme sind sie allerdings nicht erforderlich.

libxft-lcd findet man im AUR und kann somit beispielsweise mit yaourt installiert werden

fontconfig-lcd lässt sich genau wie das libxft-lcd Paket aus dem AUR mit yaourt installieren.

Filter ändern

Neben der Standardeinstellung (lcddefault), die grundsätzlich das beste Schriftbild liefert, lässt sich auch ein weniger aggressiver Filter (lcdlight), gar kein Filter (lcdnone) und der Filter des ungepatchten cairo Pakets (lcdlegacy) einstellen.

Dafür muss nur eine Zeile in der Datei /etc/fonts/conf.avail/10-lcd-filter.conf geändert werden.

  • lcddefault: Standardfilter des gepatchten cairo Pakets
<const>lcddefault</const>
  • lcdlight: Weniger aggressiver Filter
<const>lcdlight</const>
  • lcdnone: Kein Filter
<const>lcdnone</const>
  • lcdlegacy: Standardfilter des ungepatchten cairo Pakets
<const>lcdlegacy</const>

Subpixel-Rendering/Hinting einstellen

KDE

Systemeinstellungen -> 'Erscheinungsbild von Anwendungen' -> 'Schriftarten' -> Kantenglättung verwenden -> aktiviert -> Einrichten

Bei Sub-Pixel-Hinting sollte ein Häkchen stehen und RGB ausgewählt werden. Die Anordnung der Farb-Komponenten kann je nach Monitor allerdings auch anders sein. Im Normalfall ist RGB aber die richtige Einstellung. Als Hinting-Stil liefert Gering gute Ergebnisse.

GNOME

System -> 'Einstellungen' -> 'Erscheinungsbild' -> 'Schriftarten' -> 'Details'

Als Kantenglättung sollte Subpixel und unter Hinting Gering eingestellt werden. Zusätzlich kann man unter "Reihenfolge der Subpixel" zwischen RGB, VRGB, BGR und VBGR wählen.

XFCE

Einstellungsverwaltung -> 'Erscheinungsbild' -> 'Schriften'

Bei Kantenglättung verwenden ein Häkchen setzen. Die restlichen Optionen können genau so wie bei GNOME oder KDE eingestellt werden.

Ohne GUI

Wer lediglich einen Windowmanager wie beispielsweise Openbox verwendet, sollte eine ~/.fonts.conf mit folgendem Inhalt anlegen:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
       <match target="font" >
              <edit mode="assign" name="rgba" >
                     <const>rgb</const>
              </edit>
       </match>
       <match target="font" >
              <edit mode="assign" name="hinting">
                     <bool>true</bool>
              </edit>
       </match>
       <match target="font" >
               <edit mode="assign" name="hintstyle">
               <const>hintslight</const>
               </edit>
       </match> 	
</fontconfig>

Weblinks