Wydanie silnika czcionek FreeType 2.15

Po roku prac rozwojowych zaprezentowano wersję FreeType 2.15.0, modułowego silnika czcionek, który oferuje jednolite API do ujednolicenia przetwarzania i wyświetlania danych czcionek w różnych formatach wektorowych i rastrowych. Kod projektu został napisany w języku C i jest rozpowszechniany na podstawie licencji podobnej do BSD.

Wśród zmian:

  • Dodano wsparcie dla piątej wersji formatu czcionek ISO Open Font (ISO/IEC 14496-22:2026), przeniesioną przy pomocy AI z biblioteki układania glifów HarfBuzz oraz innych implementacji. W przeciwieństwie do czwartej wersji, wydanej w 2019 roku, w nowym wariancie formatu Open Font pojawiła się możliwość umieszczania ponad 65536 glifów; dodano tabelę „GLYF” dla konturów łączących segmenty kubiczne i stożkowe; zaproponowano bardziej kompaktową wersję tabeli „VARC”, pozwalającą na 90% redukcję rozmiaru czcionek wariacyjnych z hieroglifami.
  • W rasteryzatorze, który zapewnia wygładzanie, dzięki dynamicznemu przydzielaniu pamięci dla dużych glifów znacznie poprawiono wydajność rysowania glifów większych niż 40 ppem.
  • Dodano eksperymentalny sterownik dla czcionek HVF (Hierarchical Variation Font), dostarczony przez firmę Apple, działający na razie tylko w systemie macOS.
  • W interpreterze formatu TrueType rozszerzono wsparcie dla technologii wygładzania tekstu ClearType, co poprawiło jakość rysowania takich czcionek jak: 'Comic Sans MS', 'Segoe UI', 'Calibri', 'Corbel', 'Constantia', 'Malgun Gothic' i 'SimSun'. Zapewniono wykorzystanie danych z tabeli gasp (Grid-fitting and Scan-conversion Procedure) do wygładzania i wyrównywania do siatki pikseli, poprawiono emulację poziomego hintowania ClearType, poprawiono przetwarzanie instrukcji zaokrąglania glifu (ROUND) oraz stosowania wartości kontrolnych (CVT — Control Value Table).
  • Dodano port dla systemu operacyjnego Plan 9.
  • Usunięto podatności: CVE-2026-95512 — wyczerpanie pamięci i duże obciążenie CPU przy przetwarzaniu specjalnie sformatowanych czcionek w formacie CID; CVE-2026-50811 — odczyt z obszaru poza buforem przy użyciu funkcji TT_Get_Var_Design i T_Get_Var_Design_Coordinates; CVE-2026-27171 — podatność w starym wbudowanym kodzie z zlib, prowadząca do nieskończonego cyklu.

Źródło: opennet.ru

Kup niezawodny hosting stron z ochroną DDoS, serwery VPS VDS 🔥 Kup niezawodny hosting stron z ochroną DDoS, serwery VPS VDS - ProHoster