Вышел FreeType 2.15 с поддержкой Open Font 5 и исправлениями уязвимостей
FreeType 2.15 получил поддержку пятой редакции ISO Open Font, улучшения ClearType, порт для Plan 9 и исправления трёх уязвимостей.
В октябре 2026 года состоялся релиз FreeType 2.15 — открытого модульного движка для обработки и вывода шрифтовых данных. Проект предоставляет единый API для работы с векторными и растровыми форматами, написан на C и распространяется под BSD-подобной лицензией FreeType. Предыдущая стабильная версия вышла в сентябре 2025 года.
Одним из главных изменений стала поддержка пятой редакции формата шрифтов ISO Open Font (ISO/IEC 14496–22:2026). Реализацию портировали с использованием искусственного интеллекта из библиотеки компоновки глифов HarfBuzz и других существующих реализаций. В отличие от редакции 2019 года, новый формат допускает размещение более 65 536 глифов в одном шрифте.
В Open Font 5 также появилась таблица GLYF для описания контуров, в которых используются одновременно кубические и конические сегменты. Кроме того, предложен более компактный вариант таблицы VARC. По заявленным данным, он позволяет примерно на 90% уменьшить размер вариативных шрифтов с иероглифами.
Изменения в растеризации и TrueType
В растеризаторе FreeType улучшили обработку крупных глифов. За счёт динамического выделения памяти производительность отрисовки символов размером более 40 ppem заметно выросла. Также в проект добавили экспериментальный драйвер для шрифтов HVF (Hierarchical Variation Font), предоставленный Apple. Пока он работает только в macOS.
Интерпретатор TrueType получил расширенную поддержку технологии сглаживания ClearType. Это должно улучшить качество отображения ряда распространённых шрифтов, включая Comic Sans MS, Segoe UI, Calibri, Corbel, Constantia, Malgun Gothic и SimSun.
В новой версии учитываются данные таблицы gasp (Grid-fitting and Scan-conversion Procedure), отвечающей за сглаживание и выравнивание символов по пиксельной сетке. Разработчики также улучшили эмуляцию горизонтального хинтинга ClearType, обработку инструкций округления контуров ROUND и применение контрольных значений из таблицы CVT (Control Value Table).
Порты и исправления безопасности
FreeType 2.15 получил порт для операционной системы Plan 9. Одновременно разработчики устранили три уязвимости, связанные с обработкой шрифтов и внутренних библиотечных компонентов.
- CVE-2026-95512 — исчерпание памяти и высокая нагрузка на процессор при обработке специально сформированных шрифтов в формате CID.
- CVE-2026-50811 — чтение за пределами буфера при использовании функций TT_Get_Var_Design и T_Get_Var_Design_Coordinates.
- CVE-2026-27171 — зацикливание в устаревшем встроенном коде zlib.
Релиз выходит на фоне изменения подхода Google Chrome к обработке шрифтов. В марте 2025 года разработчики браузера сообщили об отказе от FreeType в пользу проекта Skrifa, написанного на Rust. Причиной называлось стремление повысить безопасность работы с интернет-шрифтами за счёт защиты от ошибок управления памятью. Skrifa поддерживает обработку шрифтов в формате OpenType.
Сообщить о проблеме в публикации
Обращение принято Обращение будет рассмотрено. По результатам проверки публикация может быть исправлена, дополнена, временно скрыта или удалена.
Читайте новые материалы журнала — свежие сюжеты каждый день.
На главную