Programeri snopa fontova za Linux napuštaju podršku za soft anti-aliasing

Neki korisnici koji koriste metodu hintfull hintinga možda su primijetili da su prilikom nadogradnje s Pango verzije 1.43 na 1.44 kerning neke obitelji fontova pogoršalo se ili potpuno сломался.

Programeri snopa fontova za Linux napuštaju podršku za soft anti-aliasing

Problem je uzrokovan knjižnicom Pango izbačeno iz upotrebe FreeType za informacije o kerningu (udaljenost između glifova) fontova HarfBuzz, a programeri potonjeg su odlučili ne podržavaj izglađivanje fonta metodom “hintfull”. Napominje se da se na zaslonima s visokom gustoćom piksela (Hi-DPI) ne pojavljuju problemi s prikazom fontova kada se koriste druge metode hintiranja osim "hintfull".

Odgovoriti Programer HarfBuzza (Behdad Esfahbod) iz odgovarajuće rasprave o problemu:

Pokušao sam koristiti druge stilove nagovještaja osim hintfull, ali samo on daje prikaz fonta blizak ClearType v2 u Windows 7, koji, po mom mišljenju, ima najbolje renderiranje od svih postojećih rješenja.

Pravo. Stoga smo odlučili da ga više ne podržavamo. Možete se pokušati naviknuti na sapunasti prikaz ili pokušati pronaći nešto drugo. Vi koristite Open Source, razumijete?

Dodatak nakon daljnje rasprave:

U narednim komentarima programer objasnioda softver otvorenog koda pruža mogućnost izbora i oni koji nisu zadovoljni trenutnim stanjem mogu napraviti fork Pango. Programeri HarfBuzza ne mogu utjecati na njegovo održavanje i odluke koje se u njemu donose. Behdad Esfahbod, trenutni održavatelj HarfBuzza koji je rangiran broj XNUMX u obvezama oba
projekti, spomenuo je da više od 10 godina nije povezan s Red Hatom i da nije održavatelj Panga. Od 2010. prelazi u Google i sada radi samo s HarfBuzzom, koji je prije bio njegov osobni projekt. HarfBuzz ne kontrolira proces renderiranja i Pango može nadjačati tražene načine hintiranja sa svoje strane.

Još jedan HarfBuzz programer pod stresom, da je problem na strani Panga, budući da HarfBuzz nije sustav za renderiranje fontova i ne podržava hintiranje svojom arhitekturom. Ako Pagno treba održavati hintiranje, tada prebacivanje na HarfBuzz nije izbor za oslanjanje na njegovu podršku. U kvaliteta Razlozi za odbijanje implementacije hintiranja u HarfBuzzu su to što neki načini hintiranja dovode do promjene izvorne širine glifa, a ta promjena ovisi o veličini piksela. Pango je prethodno izvodio slične operacije putem FreeTypea, koji podržava hintiranje, ali se zatim prebacio na HarfBuzz, koji rukuje glifovima bez obzira na njihovu veličinu. Stoga je rješavanje problema nastalih tijekom korištenja Panga odgovornost Panga, a ne HarfBuzza.

U konačnici Behdad Esfahbod objavljen veliku retrospektivu razvoja Linux skupa fontova. Nakon njegova odlaska u Google, knjižnice Pango i Cairo praktički su napuštene i stagniraju. U HarfBuzzu se rad usredotočio na podršku za prilagodljive varijabilne fontove, dok se Red Hat usredotočio na GTK i Glib. Tijekom vremena, razvoj na polju promjenjivih fontova prenesen je u FreeType, fontconfig i Cairo, ali je ostao nedovršen u Pangu zbog nedostatka programera. Pristup novim API-jima u Pangu omogućen je putem apstrakcije FontMap i bio je podržan samo za pozadine temeljene na FreeTypeu. Pozadine za Windows i macOS nisu održavane više od 10 godina.

Nakon širenja mobilnih uređaja i preglednika, Microsoft je prestao podržavati renderiranje subpikselnih fontova i GDI stil renderiranja u sustavu Windows 8. macOS je uvijek podržavao renderiranje, koje se u ovoj raspravi naziva "mutno". Od 2018. nekoliko programera HarfBuzza pokušalo je unijeti značajke HarfBuzza dodane tijekom godina u Pango. Paralelno s razvojem GTK4, napravljen je prijelaz na renderiranje temeljeno na OpenGL-u, što podrazumijeva linearno skaliranje teksta, što je pogoršalo suprotnost između renderiranja piksela i skalabilnog izgleda.

LibreOffice, Chrome i Firefox prešli su na korištenje HarfBuzza kao objedinjenog mehanizma za oblikovanje, po cijenu prekida podrške za bitmap fontove i format Type1. Za bitmap fontove, oni koji su ih trebali zamoljeni su da ih pretvore u OpenType spremnik. Upućen je zahtjev Adobeu da implementira Type1 za HarfBuzz, no oni su odgovorili da to nema smisla jer će oni sami ove godine prestati podržavati Type1.

Kako bismo uhvatili korak s naprednim tehnologijama, slična odluka o prelasku na HarfBuzz donesena je i za biblioteku Pango. Cijena je bila prestanak podrške za neke stare tehnologije od prije 20 godina. Naznačuje se da, s obzirom na ograničene resurse, programeri nemaju dovoljno ruku za sve i oni koji su zainteresirani za očuvanje starih tehnologija mogu pokušati pronaći nekoga tko će biti spreman održati funkcionalnost koja im nedostaje. Kao usporedbu navodi se GNOME3 nakon čije su pojave nezadovoljnici mogli nastaviti s razvojem zastarjelih GNOME2 tehnologija u okviru projekata Mate i Cinnamon. Isto vrijedi i za Pango, ali još nema onih koji preuzimaju.

Izvor: opennet.ru

Dodajte komentar