Trotz großer Fortschritte in den letzten Jahren beschweren sich noch immer viele User über hässliche Schriften auf dem Linux-Desktop. Die Ursachen sind nicht immer leicht zu bestimmen, denn viele Softwarekomponenten sind daran beteiligt, Buchstaben auf den Monitor zu bringen.
Welches Programm sich dabei um welchen Aspekt kümmert, bis ein Zeichen auf dem Bildschirm erscheint, variiert von Fall zu Fall. So zeichnen für die Anzeige von Schriften auf der Textkonsole ganz andere Software-Komponenten verantwortlich, als auf der X-Oberfläche. Aber auch dort gibt es wieder verschiedene Möglichkeiten.
Applikationen können sich zum Beispiel selbst um ihre Schriften kümmern, vom Einlesen der Font-Dateien über das Absatz-Layout bis zum Rendern der Zeichen. Andere Programme verwenden althergebrachte (und bewährte) X-Bibliotheken, neueste Anwendungen greifen auf Gnome-Bibliotheken zurück. Deshalb geschieht es häufig, dass Linux-Programme nebeneinander auf einem Desktop laufen, aber Schriften höchst unterschiedlich anzeigen. Dass die Schriftunterstützung sich vor allem wegen der Bemühungen um Internationalisierung in aktiver Entwicklung befindet, verkompliziert die Sache zusätzlich.
Erbe von X
Auf dem Desktop kümmert sich üblicherweise das X-Window-System um die Verwaltung und die Anzeige von Schriften, KDE und Gnome bauen darauf auf. Das aktuelle XFree86 und das alternative X.org beherrschen die gängigsten Schriftformate, denn Sie verwenden das Fontconfig-System des Freedesktop-Projekts [1]. Fontconfig liest Schriftdateien ein und liefert dem X-Window-System nach Bedarf gerasterte Zeichen. Es greift dabei auf Freetype [2] zurück, um die verbreiteten TrueType-Schriften zu rendern (siehe Kasten "Rendern und Rastern"). Die Xft-Font-Bibliothek reicht diese Daten praktisch nur noch weiter – vor der Einführung von Fontconfig war sie alleine für das Font-Renderung zuständig.
Rendern und Rastern
Die Umsetzung von Daten in eine auf einem Bildschirm darstellbare Form heißt im Computerbereich häufig Rendern – unabhängig von der konkreten Anwendung. Zum Beispiel rendern Web-Browser HTML-Quellcode, indem sie daraus eine angezeigte Seite machen. Grafikprogramme rendern aus der Beschreibung einer 3D-Szene ein Bild. Wenn Schriftprogramme Fonts rendern, rechnen sie aus der mathematischen Beschreibung eines Zeichens einzelne Punkte aus, die sie auf dem Bildschirm setzen. Da die Punkte, die ein Zeichen ausmachen, wie in einer Tabelle oder einem Raster angeordnet sind, spricht man auch von Rastern.
Gnome bedient sich im Wesentlichen dieser Komponenten, um in Anwendungen mit Schriften umzugehen. Zusätzlich bringt es die Pango-Bibliothek mit, die sich vor allem um das Layout von Textblöcken in Unicode-Zeichensätzen kümmert.
Die Einführung von Fontconfig hat viele Schriftenprobleme von Linux gelöst. Wenn Applikationen die Bibliothek nutzen, steht ihnen automatisch die ganze Vielfalt aller auf dem System installierten Schriften zur Verfügung. So kann das aktuelle Gimp seit der Einbindung von Fontconfig endlich direkt Truetype-Schriften nutzen. Auch Mozilla zeigt Schriften besser an, seit die Entwickler auf Fontconfig setzen.
Fontconfig einstellen
Nutzen Gnome-Programme die beschriebenen Bibliotheken, fällt ihnen das Font-Handling leicht: Über einen einheitlichen Mechanismus greifen sie auf alle installierten Schriften zu.
Auch für Benutzer und Administratoren bringt Fontconfig viele Vorteile. Die Konfigurationsdateien finden sich in /etc/fonts. Die dort befindliche Datei fonts.conf definiert im XML-Format die Pfade zu den Font-Dateien sowie verbreitete Alias-Namen, also zum Beispiel den Namen Sans für eine Reihe von serifenlosen Schriften. Meistens liegen die Schriften in den Verzeichnissen /usr/share/fonts und /usr/X11R6/lib/X11/fonts. Den entsprechenden Ausschnitt aus der Konfigurationsdatei zeigt Listing 1.
Listing 1
/etc/fonts/fonts.conf
<dir>/usr/share/fonts</dir> <dir>/usr/X11R6/lib/X11/fonts/Type1</dir> <dir>/usr/local/share/fonts</dir> <dir>~/.fonts</dir>
Der letzte Eintrag fügt das Directory .fonts im Home-Verzeichnis jedes Benutzers hinzu. Legt man hier Schriftdateien ab, stehen sie in allen Anwendungen zur Verfügung, die Fontconfig benutzen.
Um nicht für jede Anwendung, die Schriften auflistet, aufs Neue alle Verzeichnisse durchsuchen zu müssen, speichert Fontconfig Informationen über die Fonts in Cache-Dateien zwischen. Eine neue Truetype-Schrift ACID.TTF installieren Sie in im privaten Font-Verzeichnis folgendermaßen:
cd cp ACID.TTF .fonts cd .fonts fc-cache
Der Befehl fc-cache, im Font-Verzeichnis ausgeführt. aktualisiert bei laufender X-Oberfläche die Cache-Datei im aktuellen Verzeichnis. Nun können Sie die Schrift AcidBath in alle Gnome-Anwendungen nutzen.



