Кириллический шрифт нельзя оценивать только по красивому слову "Привет". Он может выглядеть хорошо на одном скриншоте, но ломаться в реальном тексте: нет Ё, перепутаны Unicode-коды, не хватает знака рубля, съезжает кернинг, обрезаются верхние элементы, в системе показывается странное имя или веб-subset теряет часть символов.
Перед публикацией нужен не художественный взгляд, а короткая техническая проверка. Она не заменяет полноценный font engineering, но помогает отсеять файлы, которые нельзя безопасно отдавать пользователям.
1. Проверьте Unicode-покрытие
Для русского языка базово нужен кириллический блок Unicode. Официальная таблица Unicode Cyrillic U+0400-U+04FF показывает, где находятся основные буквы кириллицы, включая Ё и ё. Для других языков может понадобиться больше: Cyrillic Supplement, Cyrillic Extended-A/B/C и дополнительные символы.
Минимум для русскоязычного интерфейса:
| Группа | Символы для проверки | Почему важно |
|---|---|---|
| Прописные | А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я | Без полного алфавита шрифт непригоден для русского текста |
| Строчные | а б в г д е ё ж з и й к л м н о п р с т у ф х ц ч ш щ ъ ы ь э ю я | Часто забывают ё или мягкий/твёрдый знак |
| Цифры | 0 1 2 3 4 5 6 7 8 9 | Нужны для интерфейса, цен и дат |
| Пунктуация | « » „ “ ” — – № | Русская типографика быстро выявляет недостающие знаки |
| Валюта | ₽ | Нужна для российских ценников и каталогов |
| Латиница | A-Z, a-z | Нужна для брендов, URL, email и смешанного текста |
Если шрифт заявлен как кириллический, но в нём нет Ё/ё, это не мелочь. В реальном русском тексте такие слова встречаются, а fallback на одну букву выглядит неаккуратно.
2. Проверьте cmap: буква должна быть не только нарисована
Глиф может существовать в файле, но не быть привязанным к правильному Unicode-коду. За сопоставление character codes и glyph IDs отвечает таблица cmap; Microsoft описывает её в OpenType cmap table.
Практический тест простой: вставьте в редактор контрольную строку, а не выбирайте глиф вручную из панели. Если символ набирается с клавиатуры и отображается нужной буквой, mapping работает. Если буква появляется только через glyph palette, для обычного пользователя она фактически недоступна.
Контрольная строка:
Контрольная строка для набора с клавиатуры:
- Съешь ещё этих мягких французских булок, да выпей чаю. Ёжик, подъём, № 7, цена 1 250 ₽.
- ABC abc 0123456789 — «кавычки»
3. Посмотрите kerning и позиционирование
Кириллица имеет собственные проблемные пары. Даже если латинский AV выглядит аккуратно, это не гарантирует хорошее расстояние между То, Го, РУ, Те, Ул, Фо, ЛТ.
В OpenType за подстановки отвечает GSUB, а за позиционирование глифов - GPOS. Kerning в современных шрифтах часто живёт именно в GPOS. Поэтому проверка должна включать не только набор букв, но и реальные пары в разных размерах.
| Тест | Что смотреть |
|---|---|
| То Те Та Ту Тя | Не слишком ли большая дыра после Т |
| Го Га Ге | Не разваливается ли пара с открытой формой Г |
| РУ РА УА | Не липнут ли диагональные/круглые формы |
| ЛТ ДТ АТ | Не возникает ли визуальный перекос |
| ёлка ЁЖ ЕЁ | Совмещаются ли точки/акценты и не выбивается ли Ё |
| 111 000 99 ₽ | Ровность цифр и знак рубля в интерфейсных строках |
Проверяйте это не только крупно, но и в 14-18 px: именно там пользователь чаще видит интерфейсный текст.
4. Метрики: буквы не должны обрезаться
Кириллица часто выше и плотнее латиницы. Если ascender, descender, line gap или bounding boxes настроены плохо, верхние элементы, диакритика и Ё могут обрезаться в кнопках, полях ввода или таблицах.
Проверьте строки в нескольких средах: браузер, графический редактор, офисный документ, мобильный экран. Особенно полезны плотные компоненты: кнопка высотой 32 px, поле поиска, таблица, карточка товара.
Симптомы плохих метрик:
- точки у Ё/ё почти касаются верхней границы строки;
- строка прыгает при замене fallback-шрифта на webfont;
- нижние элементы обрезаются в input или button;
- межстрочный интервал выглядит намного больше или меньше системного.
5. Проверьте name table и семейство
Пользователь видит не файл font-final-v7.ttf, а имя семейства в системе и редакторе. За записи имён отвечает OpenType name table; Microsoft описывает её в спецификации name table.
Что проверить:
| Поле | Риск |
|---|---|
| Family name | Все начертания должны попадать в одно семейство, если это семейство |
| Subfamily | Regular, Bold, Italic должны быть названы согласованно |
| Full name | Не должно быть мусора вроде Untitled1 или имени чужого шрифта |
| Version | Помогает отличать исправления |
| Designer / manufacturer | Важно для каталога и attribution |
| License URL / description | Упрощает проверку происхождения |
Плохие имена приводят к тому, что шрифт дублируется в меню, Bold не связывается с Regular или пользователь выбирает не тот файл.
6. Лицензия и источник
Технически хороший шрифт нельзя публиковать, если непонятны права. Перед загрузкой в каталог сохраните source URL и license file. Для открытых шрифтов часто встречается OFL; её официальный текст лежит на openfontlicense.org. Если лицензия коммерческая, отдельно проверьте web embedding, modification rights и возможность конвертации в WOFF2.
Минимальный набор metadata для публикации: название, slug, автор, источник, license code, языки, категория, теги и краткое описание.
7. Webfont: subset не должен сломать кириллицу
После проверки TTF/OTF нужно проверить именно тот файл, который пойдёт на сайт. Если вы конвертировали шрифт в WOFF2 или вырезали subset, ошибки могут появиться на этом этапе. WOFF2 как формат веб-доставки описан в W3C WOFF2, но корректность набора символов остаётся ответственностью сборки.
Проверка после subset:
| Шаг | Что сделать |
|---|---|
| Открыть страницу с WOFF2 | Убедиться, что браузер скачал нужный файл |
| Вставить контрольную строку | Проверить Ё, ё, №, ₽, кавычки и тире |
| Сменить язык контента | Если есть латиница/кириллица, оба набора должны отображаться |
| Отключить кэш | Убедиться, что fallback не маскирует ошибку |
| Проверить mobile viewport | Метрики и переносы могут проявить проблему на узком экране |
8. Автоматическая проверка помогает, но не заменяет глаза
Инструменты вроде Font Bakery полезны для технических проверок: metadata, таблицы, имена, outline-ошибки, профили Google Fonts и другие условия. Но даже хороший автоматический отчёт не скажет, красиво ли выглядит То в конкретной гарнитуре и не слишком ли узкая Ж рядом с цифрами.
Лучший подход - комбинировать автоматические проверки, контрольные строки и реальный макет сайта.
Итоговый чеклист
- Есть полный русский алфавит, включая Ё/ё.
- Символы набираются с клавиатуры, а не только выбираются из glyph palette.
- cmap корректно связывает Unicode и глифы.
- Kerning и GPOS-позиционирование проверены на кириллических парах.
- Метрики не обрезают верхние и нижние элементы.
- name table показывает чистое имя семейства и начертаний.
- Лицензия и source URL сохранены.
- WOFF2/subset проверен отдельно от исходного TTF/OTF.
- Контрольная строка протестирована в браузере и мобильном размере.
Хороший кириллический шрифт - это не только красивые формы. Это правильные Unicode-коды, аккуратные таблицы, честная лицензия, стабильные метрики и проверка именно того файла, который увидит пользователь.