Wer Erfahrungen mit Distributionen wie Ubuntu oder Fedora hat und das erste mal ein Arch Linux installiert, der stört sich am Anfang mit Sicherheit an der nicht wirklich optimalen Darstellung von Schriften auf dem Desktop. Die Fonts erscheinen dünn und abgemagert, es fehlt an einer ordentlichen Kantenglättung aka Antialiasing und subtilem Subpixel-Rendering. Ubuntu und Co. sorgen mit eigenhändigen Patches an der für die Schriftdarstellung verantwortlichen Bibliothek FreeType bzw. durch Implementation bestehender Verbesserungen wie Infinality schon von Haus aus für ein besseres Schriftbild, dies sorgt allerdings für Probleme in Gimp.

FreeType selber verzichtet aus lizenzrechtlichen Gründen darauf diese Patche in den eigenen Code zu übernehmen. Und da Arch ungern am Upstream-Code herumdoktert, muss man eben eigenhändig für ein besseres Schriftbild sorgen. Die Arch-Community macht diese Aufgabe mit entsprechend vorbereitet Paketen und AUR-Einträgen leicht, im Arch-Wiki findet ihr ausführliche Tipps und Hinweise für die Installation der Infinality- und Ubuntu-Patches auf eurem System.

Fontrendering unter Arch im im Vergleich

Für Einsteiger stellt sich nun aber die Frage welchen Patch man nutzen sollte, mit dem Original FreeType möchte ich jedenfalls nicht arbeiten — meine Augen sind vom Schriftbild eines Fedoras oder Ubuntus verwöhnt und dementsprechend anspruchsvoll. Seit meinem Arch-Einstieg bin ich eigentlich recht gut mit den Infinality-Patches gefahren. Infinality zeichnet einfach sehr saubere Schriften auf den Bildschirm und lässt sich das Binär-Pakete auch sehr einfach mit einer zusätzlichen Paketquelle installieren, ohne das AUR bemühen zu müssen. Hier sind die drei Schriftbilder im Vergleich, so könnt ihr euch selber ein Bild machen.

Das Fontrendering von Arch im Original und mit Patches von Infinality und Ubuntu im Vergleich.
Das Fontrendering von Arch im Original und mit Patches von Infinality und Ubuntu im Vergleich.
Die Unterschiede im Antialiasing treten besonders im Browser und Terminal hervor.
Die Unterschiede im Antialiasing treten besonders im Browser und Terminal hervor.

Grünliches Antialiasing in Gimp

Nun aber quält mich auf meinen Arch-Systemen seit einer Weile das Problem, dass Gimp in der Version 2.8 Schriften nur noch mit einem grünen Schatten rund um den Rand zeichnet. Eine Zeit lang habe ich das Problem schlichtweg ignoriert, nun musste aber wirklich einmal eine Lösung her. Mit ein wenig Recherche findet man die Quelle des Problems: Die Schuld an diesem grünlichen Schatten hat nicht unmittelbar an Arch oder Gimp 2.8, sondern das von mir implementierte Infinality-Fontrendering. Auf Launchpad und im Infinality-Forum gibt es dazu auch schon entsprechende Beiträge.

Das Antialiasing mittels Infinality-Patches erzeugt jedoch ein grünlich eingefärbtes Schriftbild in Gimp.
Das Antialiasing mittels Infinality-Patches erzeugt jedoch ein grünlich eingefärbtes Schriftbild in Gimp.

Eine Lösung für dieses Problem konnte ich leider nicht finden, allerdings macht auch das Ubuntu-Fontrendering unter Arch Linux eine gute Figur. Wer sich also auch mit grünem Antialiasing in Gimp herumplagt, der sollte entweder auf die unveränderte Freetype-Biliothek zurückwechseln oder die Ubuntu-Patches einspielen. Wer nur den ersten Schritt macht, der muss natürlich wieder mit einem recht groben Schriftbild leben. Ich würde daher auf jeden Fall die Ubuntu-FreeType installieren.

## Auf die originale Freetype-Biliothek zurückwechseln
$ sudo pacman -S --asdeps freetype2 cairo fontconfig
## Von Ubuntu gepatchtes Freetype einspielen
$ pacaur -S freetype2-ubuntu fontconfig-ubuntu cairo-ubuntu

10 Kommentare

  1. Auch unter Fedora sieht das Schriftbild aus wie unter Arch Linux. Beheben lässt sich das Schriftbild sowohl unter Arch als auch Fedora, indem man die Datei /etc/fonts/local.conf mit folgendem Inhalt erstellt:

    <?xml version="1.0"?>
    <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
    <fontconfig>
    	<match target="font">
    		<!-- Enable normal hinting -->
    		<edit name="hinting" mode="assign">
    			<bool>true</bool>
    		</edit>
    		<!-- Enable hintstyle as hintslight -->
    		<edit name="hintstyle" mode="assign">
    			<const>hintslight</const>
    		</edit>
    		<!-- Enable anti-aliasing -->
    		<edit name="antialias" mode="assign">
    			<bool>true</bool>
    		</edit>
    		<!-- Enable sub-pixel rendering -->
    		<edit name="rgba" mode="assign">
    			<const>rgb</const>
    		</edit>
    		<!-- Enable LCD filter -->
    		<edit name="lcdfilter" mode="assign">
    			<const>lcddefault</const>
    		</edit>
    	</match>
    </fontconfig>

    Benutzt man Gnome, installiert man sich noch das Gnome Tweak Tool und stellt das Hinting auf Slight und das Subpixel-Rendering auf sRGB.
    Unter Fedora sollte man noch das Paket freetype-freeworld aus der Paketquelle RPM Fusion Free installieren.

  2. Ahaaaa, danke für den Hinweis. Ich habe auch schon länger mit diesem Problemchen gekämpft, konnte mir aber bisher keinen Reim draus machen. Bin wie du auf die Ubuntu-Pakete umgeschwenkt. Super Tipp!!!

  3. Danke! Die Schriftqualität unter Linux ist immer etwas schwierig. Hat jemand eine Konfiguration, die das Schriftbild wie unter Windows aussehen lässt (Die Windows-Fonts habe ich bereits installiert)?

      • Hab das jetzt mal mit Infinality ausprobiert. Sieht auf jeden Fall viel bessser aus, auch wenn etwas ungewohnt. Vor allem ist unter Libreoffice jetzt das Schriftbild etwas besser.

        Leider hab ich einige Probleme mit abgeschnittenen Ober- und Unterkanten in einigen Anwendungen. Beispielsweise wird bei mir in Kate die untere Kante des „g“s abgeschnitten.

        Auch die japanische Schriftart sieht grässlich aus. Da muss ich wohl mal manuell nachhelfen, oder auch mal die Ubuntu-Einstellungen ausprobieren.
        Komischerweise ist das irgendwie eher unter KDE der Fall. Bei Firefox sieht es z.B. sehr gut aus.
        Ah, das Problem tritt nur bei „Monospace“ auf. Da muss ich mal nachändern. Serif und Sans Serif sehen gut aus. Hm, aber die allerobersten Pixel von besonders japanischen Fonts werden immer noch abgeschnitten.

        Naja, das Abenteuer mit guter Schrift unter Linux geht weiter 😀

        • Ich habe mir jetzt mal die /etc/fonts/conf.avail.infinality/ms/65-non-latin-ms.conf kopiert, die Schriftreihenfolge angepasst, in eine neue Datei gespeichert und dann den Symlink in /etc/fonts/conf.d/65-non-latin-ms.conf angepasst. Jetzt geht es ein bisschen besser.

          Wer diese conf-Dateien erstellt hat, war wohl leider auch nicht mit Fachwissen gesegnet. Bei der serif-Family das hier

          <!-- Japanese -->
          KaiTi
          DFKai-SB
          

          zu schreiben ist ja wohl schon fast kriminell 😀 Dort stimmt praktisch gar nichts. Außerdem finde ich es zu einfach, die enthaltenen Bitmap-Fonts für jede Schriftart einfach auszumachen. Insbesondere bei Japanisch sind die nämlich extrem der Leserlichkeit förderlich (Zumindest bis ich mal einen UHD-Monitor habe).

          Ist aber zumindest mal ein guter Ausgangspunkt, um eigene Einstellungen vorzunehmen.

  4. Infinality hat einige Bugs und verwendet eine uralte Version von freetype, besser ist fontconfig-ultimate (ohne eine ordentliche fontconfig hilft Infinality sowieso nur eingeschränkt).

    Der Bug in Gimp lässt sich leicht beheben. Wie das geht, steht in dem Artikel zu fontconfig-ultimate im Arch Wiki .

  5. Die Schuld an diesem grünlichen Schatten hat nicht unmittelbar an Arch oder _Gimp 2.8_,

    der sollte entweder auf die unveränderte Freetype-Biliothek zurückwechseln oder die _Ubuntu-Patches_ einspielen.

    Typos.

  6. Zuerst: Danke für den Artikel! Ich habe schon fast befürchtet mit dem Problem allein zu sein. Ich habe die am Fuß des Artikels verlinkten Befehle bei mir (Verwende das antergos OS) eingegeben.

    Der erste Befehl hat funktioniert:

    Warnung: freetype2-2.8-2 ist aktuell -- Reinstalliere
    Warnung: cairo-1.14.10-1 ist aktuell -- Reinstalliere
    Löse Abhängigkeiten auf...
    Suche nach in Konflikt stehenden Paketen...
    
    Pakete (3) cairo-1.14.10-1  fontconfig-2.12.4-1  freetype2-2.8-2
    
    Gesamtgröße des Downloads:            0,79 MiB
    Gesamtgröße der installierten Pakete:  11,15 MiB
    Größendifferenz der Aktualisierung:   0,11 MiB
    
    :: Installation fortsetzen? [J/n] j
    :: Empfange Pakete...
     fontconfig-2.12.4-1...   812,8 KiB  3,25M/s 00:00 [######################] 100%
    (3/3) Prüfe Schlüssel im Schlüsselring             [######################] 100%
    (3/3) Überprüfe Paket-Integrität                   [######################] 100%
    (3/3) Lade Paket-Dateien                           [######################] 100%
    (3/3) Prüfe auf Dateikonflikte                     [######################] 100%
    (3/3) Überprüfe verfügbaren Festplattenspeicher    [######################] 100%
    :: Verarbeite Paketänderungen...
    (1/3) Installiere freetype2                        [######################] 100%
    (2/3) Aktualisiere fontconfig                      [######################] 100%
    Rebuilding fontconfig cache... done.
    (3/3) Installiere cairo                            [######################] 100%
    :: Starte post-transaction hooks...
    (1/1) Arming ConditionNeedsUpdate...

    leider gibt mir das Terminal jedoch beim letzten Befehl folgendes aus:

    $ pacaur -S freetype2-ubuntu fontconfig-ubuntu cairo-ubuntu
    :: Packages freetype2-ubuntu fontconfig-ubuntu cairo-ubuntu not found in repositories, trying AUR...
    :: Löse Abhängigkeiten auf...
    :: no results found for freetype2-ubuntu

    Hilfe – wie kann ich das Ganze jetzt wieder rückgängig machen? Sämtliche Fonts im System werden jetzt ziemlich seltsam dargestellt und offensichtlich durch Liberation Serif ersetzt.

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein