Warum ignoriert Xft die Schriftarteinstellungen?

8

Wie Sie unten sehen können, stimmen meine Xft-Einstellungen genau mit meinen fontconfig-Einstellungen überein:

$ xrdb -query | grep -i xft
Xft.antialias:  1
Xft.autohint:   1
Xft.dpi:    96
Xft.hinting:    1
Xft.hintstyle:  hintmedium
Xft.lcdfilter:  lcddefault
Xft.rgba:   none

$ fc-match --verbose :family=Mono:size=12 | grep '^.\(hint\|anti\|auto\|dpi\|rgba\|lcd\)'
    antialias: True(w)
    hintstyle: 2(i)(w)
    hinting: True(w)
    autohint: True(w)
    dpi: 96(f)(w)
    rgba: 5(i)(w)
    lcdfilter: 1(i)(w)

Leider scheint Xft diese Einstellungen zu ignorieren und gibt überhaupt keinen Hinweis. Ich kann dies in GUI Emacs sehen oder den Befehl ausführen

pango-view --backend=xft --font='Mono, 12' -t 'Xft - X FreeType interface library'

Geben Sie hier die Bildbeschreibung ein

Vergleichen Sie das Rendering mit dem vom Kairoer Backend erstellten:

pango-view --backend=cairo --font='Mono, 12' -t 'Xft - X FreeType interface library'

Geben Sie hier die Bildbeschreibung ein

Ernest A.
quelle

Antworten:

8

Es stellt sich heraus, dass in Xft hintmediumein Synonym für ist hintslight, während in fontconfig hintmediumein Synonym für ist hintfull. Daher hintmediumwählt die Option tatsächlich eine andere Hinweismethode aus, je nachdem, ob das Programm Kairo oder Xft verwendet.

Soweit ich weiß, ist dies nirgendwo dokumentiert. Ich musste es durch Versuch und Irrtum herausfinden.

Ernest A.
quelle