Dezvoltatorii stivei de fonturi Linux abandonează suportul pentru anti-aliasing soft

Unii utilizatori care folosesc metoda de sugestii complete ar putea fi observat că atunci când fac upgrade de la Pango versiunea 1.43 la 1.44 kerning unele familii de fonturi înrăutăţit sau complet s-a rupt.

Dezvoltatorii stivei de fonturi Linux abandonează suportul pentru anti-aliasing soft

Problema este cauzată de bibliotecă Pango trecut de la utilizare FreeType pentru informații despre kerning (distanța dintre glife) de fonturi HarfBuzz, iar dezvoltatorii acestuia din urmă au decis nu sprijini netezirea fontului folosind metoda „hintfull”. Se remarcă faptul că pe ecranele cu densitate mare de pixeli (Hi-DPI), nu apar probleme cu afișarea fonturilor atunci când se utilizează alte metode de indicare decât „hintfull”.

Răspunde Dezvoltatorul HarfBuzz (Behdad Esfahbod) din discuția corespunzătoare a problemei:

Am încercat să folosesc alte stiluri de sugestie decât hintfull, dar numai că oferă o afișare a fonturilor aproape de ClearType v2 în Windows 7, care, după părerea mea, are cea mai bună redare dintre toate soluțiile existente.

Dreapta. Prin urmare, am decis să nu-l mai susținem. Puteți încerca să vă obișnuiți cu redarea cu săpun sau să încercați să găsiți altceva. Folosești Open Source, înțelegi?

Adăugare în urma discuțiilor ulterioare:

În comentariile ulterioare, dezvoltatorul El a explicatcă software-ul open source oferă posibilitatea de a alege și cei care nu sunt mulțumiți de starea actuală pot crea o furcă de Pango. Dezvoltatorii HarfBuzz nu pot influența întreținerea acestuia și deciziile luate în acesta. Behdad Esfahbod, actualul menținător HarfBuzz, care ocupă locul 1 în comitere ambii
proiecte, a menționat că nu a fost asociat cu Red Hat de peste 10 ani și nu este întreținător Pango. Din 2010, s-a mutat la Google și acum lucrează doar cu HarfBuzz, care era anterior proiectul său personal. HarfBuzz nu controlează procesul de randare și Pango poate suprascrie modurile de indicare solicitate pe partea sa.

Un alt dezvoltator HarfBuzz El a subliniat, că problema este de partea lui Pango, deoarece HarfBuzz nu este un sistem de redare a fonturilor și nu acceptă sugestii prin arhitectura sa. Dacă Pagno trebuie să mențină sugestiile, atunci trecerea la HarfBuzz nu este alegerea de a se baza pe suportul său. ÎN calitate Motivele refuzului de a implementa sugestii în HarfBuzz sunt că unele moduri de sugestii duc la o modificare a lățimii inițiale a glifului și această schimbare depinde de dimensiunea pixelilor. Pango a efectuat anterior operațiuni similare prin FreeType, care acceptă sugestii, dar apoi a trecut la HarfBuzz, care gestionează glife fără referire la dimensiunea lor. Prin urmare, rezolvarea problemelor întâlnite în timpul utilizării Pango este responsabilitatea lui Pango, nu a lui HarfBuzz.

În cele din urmă, Behdad Esfahbod a publicat o mare retrospectivă a dezvoltării stivei de fonturi Linux. După plecarea lui la Google, bibliotecile Pango și Cairo au fost practic abandonate și au căzut în stagnare. La HarfBuzz, munca sa concentrat pe suportul pentru fonturi variabile adaptive, în timp ce Red Hat sa concentrat pe GTK și Glib. De-a lungul timpului, evoluțiile din domeniul fonturilor mutabile au fost transferate către FreeType, fontconfig și Cairo, dar au rămas neterminate în Pango din cauza lipsei de dezvoltatori. Accesul la noile API-uri din Pango a fost oferit prin abstracția FontMap și a fost acceptat numai pentru backend-uri bazate pe FreeType. Backend-urile pentru Windows și macOS nu au fost întreținute de mai bine de 10 ani.

În urma extinderii dispozitivelor mobile și a browserelor, Microsoft a încetat să mai accepte redarea fonturilor subpixeli și redarea în stil GDI în Windows 8. macOS a susținut întotdeauna randarea, care în această discuție se numește „blurry”. Din 2018, mai mulți dezvoltatori HarfBuzz au încercat să aducă funcții HarfBuzz adăugate de-a lungul anilor în Pango. În paralel cu dezvoltarea GTK4, s-a făcut o tranziție la redarea bazată pe OpenGL, care implică scalarea liniară a textului, ceea ce a exacerbat opoziția dintre redarea pixelilor și aspectul scalabil.

LibreOffice, Chrome și Firefox au trecut la utilizarea HarfBuzz ca motor de modelare unificat, cu prețul întreruperii suportului pentru fonturile bitmap și formatul Type1. Pentru fonturile bitmap, celor care aveau nevoie de ele li s-a cerut să le convertească într-un container OpenType. A fost trimisă o solicitare către Adobe pentru a implementa Type1 pentru HarfBuzz, dar ei au răspuns că nu are niciun rost, deoarece ei înșiși vor înceta să mai susțină Type1 în acest an.

Pentru a ajunge din urmă cu tehnologiile avansate, a fost luată o decizie similară de a trece la HarfBuzz pentru biblioteca Pango. Prețul a fost încetarea suportului pentru unele tehnologii vechi de acum 20 de ani. Se indică faptul că, având în vedere resursele limitate, dezvoltatorii nu au suficiente mâini pentru a face totul, iar cei interesați de păstrarea tehnologiilor vechi pot încerca să găsească pe cineva care să fie gata să mențină funcționalitatea care le lipsește. Ca o comparație, este dat GNOME3, după apariția căruia cei nemulțumiți au putut continua dezvoltarea tehnologiilor GNOME2 învechite în cadrul proiectelor Mate și Cinnamon. Același lucru este valabil și pentru Pango, dar nu există încă primitori.

Sursa: opennet.ru

Adauga un comentariu