Перейти к содержимому

Направление конвертации

Конвертация OTF в WOFF2

Преобразование OTF → WOFF2 на сервере, без установки программ

.otf.woff2

.otf.woff2
  1. Загрузить
  2. Выбрать формат
  3. Скачать

Загрузка файлов

Область приёма файла

или

Файлы OTF. До 5 МБ, до 20 файлов за раз. Изображение можно вставить из буфера обмена: Ctrl+V.

Исходники и результаты хранятся 60 минут, затем стираются фоновым уборщиком. Предельный размер файла — 5 МБ, срок хранения — час.

OTF и WOFF2: характеристики

Характеристики форматов OTF и WOFF2 рядом
Характеристика.otfOTF.woff2WOFF2
Полное названиеOpenType FontWeb Open Font Format 2
РазработчикMicrosoft и AdobeW3C
Год появления19962018
Расширение.otf.woff2
MIME-типыfont/otf, application/x-font-otf, application/x-font-opentype, application/font-sfntfont/woff2, application/font-woff2
СодержимоеДвоичноеТаблицы OpenType без потери качества
КонтурыКубические кривые CFF или контуры TrueTypeнет данных
ТипографикаЛигатуры, капитель, альтернативы, кернингнет данных
ОбъёмДо 65 535 глифов в файленет данных
СтандартISO/IEC 14496-22 (Open Font Format)Рекомендация W3C, 2018 год
ПрименениеПолиграфия, вёрстка, дизайннет данных
Чем открытьСредство просмотра шрифтов Windows, Книга шрифтов (macOS), FontForge, Glyphs, FontLab, fontTools (Python)Браузер через @font-face, FontForge, Glyphs, FontLab, fontTools (Python)
СпецификацияОписание форматаОписание формата
Сжатиенет данныхBrotli с предобработкой таблиц
Выигрыш в размеренет данныхНа 20–30% меньше WOFF
Поддержканет данныхВсе актуальные браузеры

Преобразование OTF → WOFF2

OTF отличается от TTF моделью контуров: кривые описаны кубическими сегментами и лежат в таблице CFF, а не в glyf с loca. Остальное устройство то же самое — sfnt с каталогом таблиц, cmap, hmtx, name, OS/2 и таблицами типографики GSUB и GPOS. WOFF2 меняет только упаковку: содержимое таблиц остаётся прежним.

Разница в модели контуров сказывается на степени сжатия. Преобразование таблиц, описанное в WOFF2, применяется к glyf и loca, а контуры CFF таких таблиц не образуют — они сжимаются алгоритмом Brotli как есть. Поэтому выигрыш у OpenType-шрифта чуть скромнее, чем у TrueType того же объёма, хотя сам CFF изначально компактнее: кубические кривые описывают ту же форму меньшим числом узлов. На практике остаётся 50–70 % исходного файла.

Всё, ради чего покупают профессиональную гарнитуру, переносится без изменений: стандартные и дискреционные лигатуры, альтернативные начертания знаков, капитель, табличные и старостильные цифры, пары кернинга, наборы стилистических альтернатив. Эти возможности описаны в GSUB и GPOS, а перепаковка их не трогает. Но браузер по умолчанию применяет только кернинг и стандартные лигатуры — остальное запрашивается свойствами font-variant и font-feature-settings. Если подключённый шрифт выглядит беднее макета, причина почти всегда здесь.

Хинтинг у CFF устроен иначе, чем у TrueType: вместо байт-кода в отдельных таблицах используются подсказки внутри самих описаний контуров, а выравнивание по сетке пикселей выполняет растеризатор. Ни одна из этих структур при смене контейнера не изменяется, поэтому рисунок символов остаётся идентичным. Публикация файла на сайте остаётся вопросом лицензии, а не формата: настольная лицензия обычно не включает веб-использование.

Порядок преобразования OTF → WOFF2

  1. Шаг 1

    Сбор семейства

    Отправьте начертания, которые действительно нужны вёрстке. Пакетная обработка позволяет загрузить их одним заданием.

  2. Шаг 2

    Перепаковка

    Параметров у направления нет: меняется контейнер, содержимое таблиц остаётся прежним, набор глифов сохраняется целиком.

  3. Шаг 3

    Описание в CSS

    Для каждого начертания задайте @font-face с форматом woff2 и точными значениями font-weight и font-style, иначе браузер подделает жирность и наклон.

  4. Шаг 4

    Включение типографики

    Активируйте нужные возможности через font-variant и font-feature-settings: капитель, старостильные и табличные цифры, дискреционные лигатуры по умолчанию выключены.

Вопросы по работе сервиса

Почему выигрыш меньше, чем при перепаковке TrueType?

Потому что описанное в WOFF2 преобразование таблиц действует на glyf и loca, а у OpenType контуры лежат в CFF и сжимаются только Brotli. Разница в несколько процентов, и она компенсируется тем, что сам CFF компактнее: кубические кривые требуют меньше узлов на ту же форму.

Сохранятся ли лигатуры, капитель и старостильные цифры?

Да, все таблицы GSUB и GPOS переносятся целиком. Но браузер по умолчанию применяет только кернинг и стандартные лигатуры; остальное включается свойствами font-variant и font-feature-settings. Отсутствие капители на странице почти всегда означает невключённую возможность, а не потерю при конвертации.

Браузеры читают OTF напрямую. Зачем контейнер WOFF2?

Ради объёма первой загрузки. Файл сокращается примерно вдвое, а рисунок остаётся идентичным; посетитель получает текст раньше. Подключить OTF технически можно, но каждый визит будет стоить лишнего трафика.

Изменится ли отрисовка мелкого кегля?

Нет. У CFF подсказки для растеризатора лежат внутри описаний контуров и переносятся без изменений. Разница в виде текста между операционными системами вызвана разными растеризаторами, а не сменой контейнера шрифта.