Vývojári Linuxových fontov opúšťajú podporu pre mäkké vyhladzovanie

Niektorí používatelia, ktorí používajú metódu nápovedy, si mohli všimnúť, že pri inovácii z verzie Pango 1.43 na 1.44 kerning niektoré rodiny písiem zhoršila alebo plne zlomil sa.

Vývojári Linuxových fontov opúšťajú podporu pre mäkké vyhladzovanie

Problém je spôsobený knižnicou Pango prepnuté z používania FreeType informácie o kerningu (vzdialenosť medzi glyfmi) písiem HarfBuzz, a vývojári toho druhého rozhodli nepodporovať vyhladzovanie písma metódou „hintfull“. Je potrebné poznamenať, že na obrazovkách s vysokou hustotou pixelov (Hi-DPI) sa problémy so zobrazovaním písma pri použití iných metód nápovedy ako „hintfull“ nevyskytujú.

odpoveď Vývojár HarfBuzz (Behdad Esfahbod) z príslušnej diskusie o probléme:

Skúsil som použiť iné štýly hintingu ako hintfull, ale iba to dáva zobrazenie písma blízke ClearType v2 v systéme Windows 7, ktorý má podľa môjho názoru najlepšie vykreslenie zo všetkých existujúcich riešení.

Správny. Preto sme sa rozhodli, že ho už nebudeme podporovať. Môžete si skúsiť zvyknúť na mydlové stvárnenie alebo skúsiť nájsť niečo iné. Používaš Open Source, rozumieš?

Doplnenie po ďalšej diskusii:

V nasledujúcich komentároch vývojár vysvetlilže open source softvér poskytuje možnosť výberu a kto nie je spokojný so súčasným stavom, môže si vytvoriť fork Pango. Vývojári HarfBuzz nemôžu ovplyvniť jeho údržbu a rozhodnutia v ňom prijaté. Behdad Esfahbod, súčasný správca HarfBuzz, ktorý je na prvom mieste v commitoch obaja
projektov, spomenul, že nie je spojený s Red Hat viac ako 10 rokov a nie je správcom Pango. Od roku 2010 prešiel do Google a teraz spolupracuje iba s HarfBuzz, ktorý bol predtým jeho osobným projektom. HarfBuzz neovláda proces vykresľovania a Pango môže na svojej strane prepísať požadované režimy hintingu.

Ďalší vývojár HarfBuzz zdôraznené, že problém je na strane Panga, keďže HarfBuzz nie je systém vykresľovania fontov a nepodporuje napovedanie svojou architektúrou. Ak si Pagno potrebuje zachovať napovedanie, potom prechod na HarfBuzz nie je voľbou spoliehať sa na jeho podporu. IN kvalita Dôvody odmietnutia implementácie hintingu v HarfBuzz sú, že niektoré režimy hintingu vedú k zmene pôvodnej šírky glyfu a táto zmena závisí od veľkosti pixelov. Pango predtým vykonávalo podobné operácie prostredníctvom FreeType, ktorý podporuje hinting, ale potom prešiel na HarfBuzz, ktorý spracováva glyfy bez odkazu na ich veľkosť. Preto je za vyriešenie problémov, ktoré sa vyskytnú pri používaní Panga, zodpovednosťou Pango, nie HarfBuzz.

Nakoniec Behdad Esfahbod publikovaný veľká retrospektíva vývoja linuxového font stacku. Po jeho odchode do Google boli knižnice Pango a Cairo prakticky opustené a upadli do stagnácie. V HarfBuzz sa práca zamerala na podporu adaptívnych variabilných fontov, zatiaľ čo Red Hat sa zameral na GTK a Glib. Postupom času sa vývoj v oblasti meniteľných fontov preniesol do FreeType, fontconfig a Cairo, ale v Pangu zostal nedokončený kvôli nedostatku vývojárov. Prístup k novým rozhraniam API v Pango bol poskytovaný prostredníctvom abstrakcie FontMap a bol podporovaný iba pre backendy založené na FreeType. Backendy pre Windows a macOS sa neudržiavajú viac ako 10 rokov.

Po rozšírení mobilných zariadení a prehliadačov prestal Microsoft vo Windows 8 podporovať vykresľovanie subpixelových fontov a vykresľovanie v štýle GDI. macOS vždy podporoval vykresľovanie, ktoré sa v tejto diskusii nazýva „rozmazané“. Od roku 2018 sa niekoľko vývojárov HarfBuzz pokúsilo priniesť funkcie HarfBuzz pridané v priebehu rokov do Panga. Súbežne s vývojom GTK4 sa uskutočnil prechod na vykresľovanie založené na OpenGL, čo znamená lineárne škálovanie textu, čo zhoršilo opozíciu medzi vykresľovaním pixelov a škálovateľným rozložením.

LibreOffice, Chrome a Firefox prešli na používanie HarfBuzz ako jednotného nástroja na tvarovanie, za cenu ukončenia podpory bitmapových fontov a formátu Type1. V prípade bitmapových fontov boli tí, ktorí ich potrebovali, požiadaní, aby ich previedli na kontajner OpenType. Spoločnosť Adobe bola zaslaná žiadosť o implementáciu Type1 pre HarfBuzz, ale odpovedali, že to nemá zmysel, pretože oni sami prestanú tento rok podporovať Type1.

S cieľom dobehnúť technológie, ktoré sa ujali vedenia, padlo podobné rozhodnutie prejsť na HarfBuzz aj pre knižnicu Pango. Cenou bolo zastavenie podpory niektorých starých technológií spred 20 rokov. Ukazuje sa, že vzhľadom na obmedzené zdroje nemajú vývojári dostatok rúk na to, aby urobili všetko a tí, ktorí majú záujem o zachovanie starých technológií, sa môžu pokúsiť nájsť niekoho, kto bude pripravený zachovať funkčnosť, ktorá im chýba. Na porovnanie je uvedené GNOME3, po objavení sa ktorého mohli nespokojní pokračovať vo vývoji zastaraných technológií GNOME2 v rámci projektov Mate a Cinnamon. To isté platí pre Pango, ale zatiaľ nie sú žiadni odberatelia.

Zdroj: opennet.ru

Pridať komentár