Niech się staną ładne fonty
Czy ta niefrasobliwość wynika z tego, że niektórzy deweloperzy żyją jeszcze technologią CRT i postrzępione, rachityczne fonty nie rażą ich z taką mocą, jak użytkowników LCD, czy jest to kwestią jakiejś zachowawczej zgodności wstecznej, czy wręcz innymi standardami czytelności – domyślne pulpity Debiana, Archa, Manjaro, OpenSUSE i paru innych dystrybucji, potrafią zaskoczyć (w zależności od używanego środowiska). I to w negatywnym tego słowa znaczeniu, bo odpychający wygląd słabo wypada jako wabik pierwszego kontaktu. Oczywiście, nie u każdego będzie to regułą – z doświadczenia obserwuję, że na laptopach przeważnie uwzględniany jest charakter matrycy LCD i do renderowania fontów zaprzęgane są stosowne opcje dodatkowe. Ale na stacjonarnym komputerze musiałem wykonać parę manewrów, by fonty w Manjaro + XFCE 4.10 przestały denerwować swoim barwnym impresjonizmem.
A w większości przypadków wszystko rozbija się o to, aby zaprzęgnąć do roboty zwykły parametr LCD filter. Niektóre dystrybucje używają tej opcji domyślnie, inne trzeba ręcznie przysposobić do tego zadania. I to w przypadku tych drugich konieczna jest nasza interwencja i aby nie ograniczać się do lokalnego użytkownika, przeprowadzimy zmianę na skalę globalną. Najprościej i najszybciej (jako root) aktywujemy parametr lcdfilter:
ln -s /etc/fonts/conf.avail/11-lcdfilter-default.conf /etc/fonts/conf.d/58-lcdfilter.conf
(conf.avail może zawierać nieco inną numerację XX-lcdfilter-default.conf)
Jeżeli jednak lubimy rozwiązania dosadne i chcemy wiedzieć, co gdzie piszczy, to w tym celu edytujemy (jako root) plik 50-user.conf (lub inny wg. schematu XX-user.conf).
gksu gedit /etc/fonts/conf.d/51-user.conf
Dowiemy się z niego, że w niedalekiej przyszłości załączanie konfiguracji fontów (.fonts.conf) z katalogu domowego użytkownika zostanie porzucone (the following elements will be removed in the future), więc na dobrą sprawę możemy je sobie odpuścić już teraz. Preparujemy odpowiednio plik i otrzymuje on postać:
<?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig> <!-- Load per-user customization file --> <include ignore_missing="yes" prefix="xdg">fontconfig/conf.d</include> <include ignore_missing="yes" prefix="xdg">fontconfig/fonts.conf</include> <!-- the following elements will be removed in the future --> <match target="font"> <edit mode="assign" name="lcdfilter"> <const>lcddefault</const> </edit> </match> </fontconfig>
Jak widać, dodaliśmy parametr lcdfilter z wartością lcddefault (inne możliwe to lcdlight i lcdlegacy). Zapisujemy i udajemy się do ustawień systemowych, bo poprzestawiać nieco wygląd fontów – standardowo dobrze powinny wyglądać już ustawienie: włączony antyaliasing, hinting lekki, wygładzanie podpikselowe RGB, DPI 96 (to wszystko można osiągnąć w XFCE 4.10 w zakładce wygląd->czcionki). I już powinno być lepiej.
Jeżeli ktoś z jakichś przyczyn nie może w samym środowisku graficznym ustawić odpowiednich opcji, poniżej mała ściąga z tego, co można wstawić do pliku .conf dla standardowych, dobrze wyglądających fontów (poza lcdfilter pozostałe parametry są czułe na zmiany w ustawieniach systemu).
<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> <match target="font" > <edit mode="assign" name="antialias" > <bool>true</bool> </edit> </match> <match target="font"> <edit mode="assign" name="lcdfilter"> <const>lcddefault</const> </edit> </match>