CreateOpenTypeFontVariation

Текст, шрифты, вариативные шрифты

Описание

Инстанцирует вариативный шрифт OpenType CFF2 по запрошенным координатам осей дизайна и добавляет полученный статический CFF-шрифт в текущий документ

Синтаксис

Delphi

Function TPDFlib.CreateOpenTypeFontVariation(FontID: Integer; Const AxisCoordinates: WideString): Integer;

Параметры

FontIDДескриптор вариативного шрифта CFF2, возвращенный API создания или загрузки шрифтов OpenType
AxisCoordinatesПары tag=value через запятую или точку с запятой, например wght=700,wdth=75; пропущенные оси берутся по умолчанию, значения вне заявленного диапазона обрезаются

Возвращаемые значения

Возвращает положительный дескриптор шрифта и выбирает его при успехе, или 0 при некорректном дескрипторе, не-CFF2 шрифте, неизвестной или некорректной координате, неподдерживаемой структуре CFF2 или поврежденных вариативных данных

Примечания

Инстанциатор вычисляет vsindex и blend по хранилищу вариаций CFF2, раскрывает локальные и глобальные подпрограммы, применяет горизонтальные метрики HVAR и поддерживаемые глобальные метрики MVAR и синхронизирует общие стилевые оси

На выходе — CID-keyed шрифт CFF1 OpenType с корректной контрольной суммой, статическими charstrings и метриками; устаревшие таблицы вариаций, хинтинговых программ и подписи удаляются

Рекурсия CharString, использование стека операндов, число операций, размеры INDEX и размер вывода ограничиваются до выделения памяти, поэтому некорректный вход приводит к отказу без возврата частичного шрифта

SaveFontToFile; GetFontVariationAxes возвращает для него 0Прямая загрузка шрифта CFF2 выбирает его статический экземпляр по умолчанию, сохраняя исходную вариативную программу для последующих вызовов этого API

Прямая загрузка шрифта CFF2 выбирает его статический экземпляр по умолчанию, сохраняя исходную вариативную программу для последующих вызовов этого API

CreateTrueTypeFontVariation for variable fonts that use glyf outlines

См. также

GetFontVariationAxes, CreateTrueTypeFontVariation, AddOpenTypeFontFromFile, SaveFontToFile