Лучшие вопросы
Таймлайн
Чат
Перспективы

FreeType

Из Википедии, свободной энциклопедии

FreeType
Remove ads

FreeType, FreeType 2 — библиотека, которая используется для растеризации шрифтов и операций над ними. Механизм растеризации шрифтов - свободное программное обеспечение с открытым исходным кодом, на который распространяется двойная лицензия - BSD-подобная и GPL. FreeType поддерживает несколько форматов шрифтов, включая TrueType, Type 1 и OpenType. В частности, используется для отображения шрифтов в X11[источник не указан 783 дня].

Краткие факты Тип, Написана на ...
Remove ads

История создания

Движок рендеринга FreeType был создан в 1995 году Дэвидом Тернером[3] с целью обеспечить поддержку шрифтов TrueType для операционной системы OS/2,[3] включая интерпретатор для работы с байткодом TrueType. Первоначально написанный на языке программирования Pascal, он был перенесен в 1997 году Робертом Вильгельмом на язык C.[4][5][6]

FreeType 1 поддерживал только формат шрифтов TrueType, но в него было включено расширение для поддержки функций верстки текста OpenType.

Remove ads

Версия 2.0

Суммиров вкратце
Перспектива

Версия 2.0 была полностью переписана, чтобы сделать ее более модульной. FreeType 2 обеспечил поддержку большего числа форматов шрифтов и обновленный исходный код, который, по словам разработчиков, стал "проще и мощнее". FreeType 2 не имеет обратной совместимости с FreeType 1, но разработчики заявили, что переход на FreeType 2 не представляет особых трудностей.[7] Поскольку обработка текстовых макетов не была целью FreeType 2, функциональность OpenType для верстки текста FreeType 1 в версии 2.0 была удалена. Значительно усовершенствованная форма функциональности FreeType 1 по вёрстке текста OpenType используется в библиотеке вёрстки текста Pango. Проект HarfBuzz продолжает развивать эту функциональность, полностью переписывая ее и предлагая в виде отдельной библиотеки с менее строгой лицензией, чем у Pango.[8]

FreeType не содержит своего API для вызова функций обработки графики (например, рендеринг цветного текста). Однако, библиотека значительно упрощает операции обработки текстов, предоставляя простой интерфейс доступа к содержимому файлов шрифта[источник не указан 679 дней].

По состоянию на август 2010 года последняя версия библиотеки имела номер 2.4.2 и поддерживала следующие форматы шрифтов:

Thumb
Субпиксельно визуализируются с помощью FreeType

Долгое время в FreeType была по умолчанию отключена поддержка правильного хинтинга TrueType-файлов через встроенный байт-код шрифта, поскольку данная технология попадала под патенты Apple[9]. Для обхода патентов сборки FreeType по умолчанию использовали незапатентованный алгоритм автохинтинга. В мае 2010 года срок патентов истек, и, начиная с версии 2.4.0, FreeType по умолчанию использует правильный хинтинг через интерпретатор байт-кода шрифта[10]. В 2013 году Adobe уступила движок рендеринга Compact Font Format проекту FreeType, который интегрировал его и сделал по умолчанию в версии 2.5.[11][12]

Remove ads

Использование

FreeType используется в качестве рендерера шрифтов в Android, ChromeOS. Apple использует FreeType в iOS и macOS[13] наряду с Apple Advanced Typography. В 2007 году компания Sun Microsystems заменила собственный растеризатор на FreeType в наборе средств разработки OpenJDK Java. В Windows такие проекты, как gdipp[14] и MacType,[15] направлены на замену системного растеризатора ClearType. FreeType также используется в качестве рендерера шрифтов в ReactOS.[16]

Помимо использования в основных настольных системах со свободным программным обеспечением, библиотека применяется в качестве движка растеризации в некоторых современных видеоиграх,[17][18][19] и в Opera для Wii.[20] Sony поставляет FreeType с консолями PlayStation 3, PlayStation 4, и PlayStation Vita.[21]

В Fedora freetype-freeworld был переведен из проприетарного репозитория yum в свободное хранилище.

Авторы библиотеки: David Turner, Robert Wilhelm и Werner Lemberg.

Особенности

Возможность доступа к информации об ограничениях встраивания и подстановки шрифтов была добавлена в 2.3.8.[22]

Намекающий

В 2.3.0, добавлена поддержка применения специального фильтра к растровым изображениям, созданным с помощью «FT _ Render _ Glyph», если выбран один из FT_RENDER_MODE_LCD и FT_RENDER_MODE_LCD_V, в то время как LCD-оптимизированная визуализация была отключена во всех построениях библиотеки по умолчанию.[23] LCD-фильтр стал нормализованным и сбалансированным по цвету в 2.6.2.[24] Метод намека «Гармония», который воспроизводит результат субпиксельного намека ClearType с легким фильтром 3-tap без использования методов ClearType, стал методом субпиксельного намека по умолчанию в 2.8.1.[25]

TrueType

Интерпретатор байт-кода TrueType был отключен в версии 2.0 Beta 8[26], а затем снова отключен в версии 2.0.2.[27] Интерпретатор байт-кода CreateType был исправлен для получения точно того же вывода, что и FreeType 1.x в 2.1.0.[28] Непатентованный намек стал[уточнить] по умолчанию в 2.3.0, возможность обнаружения запатентованных команд байт-кода и переключения непатентованных подсказок была добавлена в 2.3.5.[29]

Remove ads

Недостатки

В Fedora из-за проблемных интерфейсов библиотеки FreeType прекратили отображение растровых (bitmap) шрифтов почти во всех графических приложениях.[30]

Примечания

Ссылки

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads