Není tajemstvím, že Linux vykresluje písma jinak než Windows nebo Mac OS X. To by ještě nemuselo být na škodu, nebýt ovšem toho, že většina webů používá písma TrueType od Microsoftu a je obecně optimalizována primárně pro Windows. Právě na takových webových stránkách je nejvíce patrný rozdíl ve vykreslování písem, a to i když máte všechna potřebné fonty nainstalované a nedochází k jejich záměně za svobodné alternativy. Rozdíly existují i mezi jednotlivými distribucemi. Nejhůře jsou na tom ty, které se striktně drží svobodného softwaru (např. Fedora), protože pokročilejší algoritmy mají patentovány Apple a Microsoft. Rezervy mají ale i Ubuntu nebo Manjaro, které patentované technologie používají (ne snad, že by za ně platili, ale Canonical sídlí ve Spojeném království a tam americké patentové právo neplatí).
Hezčí písma s Infinality
Vylepšit renderování fontů si klade za cíl projekt Infinality , sestávající z upravených knihoven a konfiguračních skriptů. Než se ale nadšeně vrhnete do jeho instalace, mějte na paměti následující rizika. Za prvé tím můžete přivést operační systém do stavu, kdy bez zásahu zvnějšku nenaskočí. To tentokrát není planá výhružka: sám jsem takto popravil dvě instalace Linuxu Mint (naštěstí virtuální a specificky určené pro tyto experimenty) a uživatelé na fórech hlásí stejný problém i s Ubuntu GNOME. Stejně tak se může stát, že změněné nastavení nerozdýchají některé aplikace. No a za třetí počítejte s tím, že výsledek nemusíte vnímat stoprocentně pozitivně. Infinality nabízí řadu předdefinovaných nastavení, kde si každý může najít preferovaný styl, můžete ale dojít k názoru, že zatímco na webu je písmo hezčí, v terminálu nebo textovém editoru se vám více líbil původní stav.
I vám proto doporučuji instalovat Infinality nejprve na virtuální stroj. Kromě výše zmíněného budete tak moci snadno porovnat změny oproti výchozímu stavu.
Instalace a konfigurace
Infinality nainstalujete z následujícího PPA:
sudo add-apt-repository ppa:no1wantdthisname/ppa
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install fontconfig-infinality
Ihned po instalaci je třeba upravit soubor /etc/profile.d/infinality-settings.sh, najít řádek SET_XFT_SETTINGS=true a změnit hodnotu na false. Tím by mělo být zařízeno, že systém po restartu opět naběhne (testováno na Linuxu Mint 17.1).
V tomto souboru se také nastavuje styl vykreslování písem (řádek USE_STYLE), eventuelně se můžete některým z předdefinovaných stylů inspirovat a definovat si vlastní. Stručný popis nabízených možností je uveden přímo v souboru formou komentářů. Toto nastavení ovládá atributy jako ostrost písem nebo jejich „tučnost“ a jeho efekt poznáte především na webových stránkách.
Výraznější efekt na celý systém má nastavení provedené následujícím skriptem. Nabízí osm stylů, které můžete libovolně kombinovat s těmi v infinality-settings.
sudo bash /etc/fonts/infinality/infctl.sh setstyle
Nastavení linux nebo infinality lze považovat za konzervativní, zatímco winxp nebo win7 způsobí výraznější změny ve vykreslování písem v oknech (například text v adresním řádku Firefoxu bude menší, jako je tomu ve Windows). Podobný efekt mají i volby osx a osx2. Pro tato „cizí“ nastavení je ale třeba mít nainstalovaná písma z příslušného systému, jinak bude výsledek ošklivý. Osobně doporučuji styl infinality. Operační systém si tak zachová svůj linuxový „look and feel“, ale písma původem z Windows přesto vypadají v aplikacích o mnoho lépe.
Drastický rozdíl lze pozorovat na webovém rozhraní e-mailového klienta, který nabízi firemní Exchange 2013. Písmo Calibri, které se zde standardně používá, je ve výchozím stavu ošklivě nevyhlazené a slitky (ft, fi apod.) se renderují jinak než zbytek textu. Bez Infinality tak bylo lepší vůbec nemít Calibri v systému, aby se nahrazovalo za (lépe vykreslovaný) Arial. Odlišný vzhled slitků lze pozorovat i s Infinality v LibreOffice, avšak na webu už rozdíl není znatelný. Kromě toho Infinality oceníte například v e-mailové schránce od Centrum.cz, která má jinak podivně nízké písmo.
Toto platí bez ohledu na styl nastavený v infinality-settings.sh. Vyhovují-li vám lehce rozpité fonty typické pro Ubuntu, nastavte styl INFINALITY nebo UBUNTU, jsou-li vám příjemnější tenčí a ostřejší písma jako ve Windows, použijte WINDOWS nebo WINDOWS7.
Obrázek v tomto případě skutečně vydá za tisíc slov. Nahoře Word 2007 (nainstalovaný pomocí PlayOnLinux) na virtuálním stroji s Infinality, dole Exchange 2013 na systému ve výchozím nastavení (s doinstalovaným písmem Calibri).
Infinality Ultimate
Alternativu ke standardnímu Infinality nabízejí upravené knihovny od Bohoomila. Repozitář pro Ubuntu (ppa:rjvbertin/infinaltimate) udržuje René J. V. Bertin, balíčky automaticky nahradí ty původní systémové při aktualizaci systému. V této verzi není k dispozici nastavení setstyle pomocí infctl.sh a v infinality-settings.sh (kde nezapomeňte zakomentovat nastavení XFT_SETTINGS) je na výběr pět stylů podle tloušťky a ostrosti. Z této nabídky mi nejvíce vyhovovalo nastavení „1“. Na fonty se kouká příjemně, často ale dochází k jejich nahrazování za open-source fonty (takže se například stává, že se na webu nevejde text do tlačítka, protože náhražkové písmo je širší než to původně zamýšlené) a hlavně text tučným řezem byl až rušivě tučný. Celkový dojem byl tak trochu rozpačitý. Nicméně, překousnete-li občasnou chybu v rozložení prvků (případně si dáte tu práci s experimentováním a zajistíte, aby se zobrazovala autorem webu zamýšlená písma), a zvláštěpak nejste-li zcela spokojeni s možnostmi standardního Infinality, varianta Ultimate určitě stojí za vyzkoušení. Zaznamenal jsem ale poměrně časté pády Firefoxu a nelze vyloučit, že problém se projeví i na nevirtuální instalaci.
Písma TrueType pod Wine
Zajímalo mě, zdali Infinality bude mít vliv také na aplikace pro Windows běžící pod Wine. V minulosti jsem zkoušel instalovat Office 2007 a vadilo mi mimo jiné špatné renderování písem TrueType. Popisky v aplikaci i texty v dokumentech byly podivně tlusté a rozpité, zvláštěpak zlobivé Calibri bylo kostrbaté a nevyhlazené. Nebudu vás dlouho napínat a díky obrázku výše už to beztak víte: Infinality i toto řeší.
Optimalizace popsané zde jsem vůbec neprováděl, nenahrazoval jsem žádné knihovny za nativní ani neinstaloval nic skrz Winetricks. Vše jsem ponechal v rukou PlayOnLinux (který má vlastní kopii Wine, takže neupravené konfigurační skripty na něj nebudou mít vliv) a výsledek, alespoň co do vykreslování písem, hodnotím jako srovnatelný s nativním.
Emulace přes Wine má samozřejmě svá úskalí a i s komerčním rozšířením CrossOver narazíte na chyby, takže celková použitelnost tohoto řešení (oproti instalaci Office ve virtuálním stroji s Windows) je na jinou debatu. Korektní vykreslování písem ale určitě neurazí a může se uplatnit i v jiných emulovaných aplikacích.
Závěrem
Tímto dílem nepravidelný seriál o přechodu z Windows na Linux alespoň prozatím končí (neb mě už nenapadá, čemu dalšímu se v něm věnovat – máte-li nějaký návrh, podělte se v diskuzi). Pokud jste předchozí díly minuli, připomínám:
- První díl, Z Windows na Linux: nejdůležitější nastavení systému a aplikací, vám ukázal, jak nastavit chování některých aplikací a především regulaci větráku.
- Ve druhém díle, Z Windows na Linux, část 2.: optimalizace pro výkon a životnost SSD, jsme se věnovali pokročilému nastavení pevných disků a naučili jsme se vytvořit ramdisk.
Doufám, že jste si z článků odnesli hodnotné poznatky, případně vás inspirovaly k tomu, abyste Linux někdy sami vyzkoušeli. A naopak, že ukázka širokých možností konfigurace neprohloubila klišé, že Linux je software typu „dodělej si sám“ a poradí si s ním jedině programátoři.