Bəzi istifadəçilər, "hintfull" hinting metodunu istifadə edərək Pango-nun 1.43 versiyasından 1.44-ə keçərkən bəzi şrift ailələrində və .
Problemin səbəbi kitabxananın şriftlərin glifləri arasındakı məsafəni (kerning) almaq üçün istifadədən , sonuncunun inkişaf etdiriciləri şriftlərin "hintfull" metodu üzrə yumşaldılmasını qərara aldılar. Qeyd olunur ki, yüksək piksel sıxlığı olan (Hi-DPI) ekranlarda, "hintfull"-dan fərqli hinting metodları istifadə edildikdə, şriftlərin göstərilməsində problem yaranmır.
HarfBuzz-un inkişaf etdiricisi (Behdad Esfahbod) məsələ ilə bağlı müvafiq müzakirədən:
Mən hintfull-dan fərqli stil istifadə etməyə çalışdım, amma yalnız o Windows 7-dəki ClearType v2-yə yaxın şrift göstərilməsini təmin edir ki, bu da mənim fikrimcə, mövcud bütün həllər arasında ən yaxşı renderdir.
Düzdü. Ona görə də daha da dəstəkləməməyə qərar verdik. Siz "bulanıq" renderləməyə öyrəşməyə çalışa bilərsiniz, ya da başqa bir şey tapmağa çalışa bilərsiniz. Siz Open Source istifadə edirsiniz, başa düşürsünüz?
Daha sonra müzakirə nəticəsində əlavələr:
Sonrakı şərhlərdə inkişaf etdirici , ki, Açıq İstifadə Programı seçim imkanı təqdim edir və indiki vəziyyətdən narazıdırsa, Pango-nu bir forka çevirə bilərlər. HarfBuzz-un inkişaf etdiriciləri isə onun dəstəklənməsi və orada qəbul olunan qərarlarla təsir edə bilməzlər. Behdad Esfahbod, HarfBuzz-un indiki koordinasiyası olan, hər iki
, 10 ildən artıqdır ki, Red Hat-la bağlı deyil və Pango-nu dəstəkləmir. 2010-cu ildən Google-a keçib və indi yalnız HarfBuzz-u idarə edir ki, bu əvvəlcə onun şəxsi layihəsi idi. HarfBuzz renderləmə prosesini və Pango öz tərəfində istənilən hinting rejimlərini üst-üstə qoya bilər.
Başqa bir HarfBuzz inkişaf etdiricisi , ki, problem Pango tərəfindəndir, çünki HarfBuzz şrift render sistemi deyil və arxitekturasına görə hinting-i dəstəkləmir. Əgər Pango hinting-in saxlanmasını tələb edirsə, HarfBuzz-a keçid, onun dəstəklənməsinə ümid edəcək bir seçim deyil. Bu HarfBuzz-da hinting-in uygulanmamasının səbəbləri kimi bildirilir ki, bəzi hinting rejimləri glifin başlanğıc genişliyinin dəyişməsinə səbəb olur və bu dəyişiklik piksel ölçüsünə bağlıdır. Əvvəlki Pango, FreeType vasitəsilə bunu həyata keçirirdi ki, bu şrift hinting-i dəstəkləyirdi, amma sonra HarfBuzz-a keçdi ki, bu da gliflərin ölçüsündən asılı olmayaraq emalını təmin edir. Buna görə Pango ilə yaranan problemlərin həlli Pango-nun məsuliyyətindədir, HarfBuzz-un deyil.
Nəhayət, Behdad Esfahbod Linux şrift yığma sisteminin inkişafına dair geniş bir retrospektiv. Google'a keçdikdən sonra, Pango və Cairo kitabxanaları demək olar ki, tərk edilmişdi və stagnasiyaya uğradı. HarfBuzz-da iş dəyişkən şriftlərin (variable-font) dəstəyinə cəmləşdi, Red Hat isə GTK və Glib-ə əsas diqqətini yönəltdi. Zamanla, dəyişkən şriftlər sahəsindəki nailiyyətlər FreeType, fontconfig və Cairo-ya köçürüldü, lakin Pango-da inkişaf etdirilməmiş qaldı, çünki proqramçılar çatışmırdı. Pango-da yeni API-lərə giriş FontMap abstraksiyası vasitəsilə təmin olundu və yalnız FreeType əsaslı backend-lər üçün dəstəkləndi. Windows və macOS üçün backend-lər isə artıq 10 ildən artıqdır ki, dəstəklənmir.
Mobil cihazlar və brauzerlərin genişlənməsindən sonra, Microsoft Windows 8-də şriftlərin yarımpiksel rendirlənməsini və GDI üslubunda çəkməni dayandırdı. macOS isə daima 'bulanıq' adlandırılan çəkməni dəstəklədi. 2018-ci ildən bir neçə HarfBuzz proqramçısı son illərdə HarfBuzz-a əlavə olunmuş imkanları Pango-ya köçürməyə çalışdı. Paralel olaraq GTK4-in inkişafı zamanı, mətni xətti ölçüdə çəkmək üçün OpenGL-ə keçid edildi ki, bu da piksel çəkmə və ölçülən yerləşdirmə arasındakı münaqişəni daha da qızışdırdı.
LibreOffice, Chrome və Firefox HarfBuzz-u birləşdirilmiş shaping mühərriki kimi istifadəyə keçdi, bununla da raster şriftlərin və Type1 formatının dəstəyini dayandırdılar. Raster şriftlərə ehtiyacı olanlara onları OpenType konteynerinə çevirmək təklif olundu. Adobe-a HarfBuzz üçün Type1 implementasiyası ilə bağlı sorğu göndərildi, lakin onlar cavab verdilər ki, bunun mənası yoxdur, çünki özləri bu il Type1 dəstəyini dayandırırlar.
İnkişaf etmiş texnologiyalara yetişmək üçün Pango kitabxanası üçün HarfBuzz-a keçid etmək qərarı qəbul edildi. Qiyməti isə 20 il əvvəl olan bəzi köhnə texnologiyaların dəstəyinin dayandırılması oldu. Məhdud resurslara malik proqramçılar üçün hər şeyə yetişmək çətin olduğuna görə, köhnə texnologiyaların saxlanılması ilə maraqlananlar, onlara lazım olan funksionallığı təmin edəcək birini tapmağa çalışa bilərlər. Məsələn, GNOME3-ü ortaya çıxdıqdan sonra narazılar GNOME2 texnologiyalarını Mate və Cinnamon layihələrinin çərçivəsində inkişaf etdirməyə davam etdilər. Eynisə Pango üçün də keçərlidir, lakin hələlik maraqlı olan yoxdur.
Mənbə: opennet.ru
