Создание собственного шрифта на Mac с FontForge
Важно: не сохраняйте изменения поверх системных шрифтов. Всегда работайте с копиями и переименовывайте шрифт в “Font Info” перед генерацией. Неправильные изменения шрифтов могут нарушить интерфейс и потребовать восстановления системы.
О чём эта статья
Эта инструкция подходит для начинающих и тех, кто хочет быстро модифицировать шрифт или создать простой шрифт на основе рукописи. Я объясню, как установить необходимые инструменты, как открыть и изменить шрифт в FontForge, как исправлять ошибки при генерации и как тестировать итоговый файл. Также даю расширенные советы по дизайну, проверке кернинга и метрик, варианты работы (от простого до продвинутого) и контрольные списки для разных ролей.
Основные цели и варианты запросов (SEO)
- Основная цель: создать шрифт на Mac с помощью бесплатного инструмента
- Связанные варианты запросов: FontForge на Mac, как сделать шрифт, изменить шрифт Mac, генерация OTF TTF, рукописный шрифт Mac
Что вам понадобится (кратко)
- Mac с правом устанавливать ПО
- XQuartz (X11) — среда, которая требуется для запуска графической версии FontForge на macOS
- FontForge — бесплатная и открытая программа для создания/редактирования шрифтов
- Шаблон для рукописного шрифта (опционально, если хотите быстро сделать шрифт из почерка)
- Резервная копия системных шрифтов и привычная практика работы с копиями
Установка необходимых компонентов
- Установите XQuartz (официальный X11 для macOS). Скачайте с https://www.xquartz.org и выполните установку.
- Скачайте и установите FontForge: https://fontforge.org
- Запустите XQuartz перед запуском FontForge, если FontForge требует X11.
Примечание: подробные шаги установки могут отличаться в зависимости от версии macOS. При запросах на конкретную версию macOS проверьте совместимость XQuartz и FontForge.
Быстрый путь для новичков: модификация существующего шрифта
- Работайте только с копией шрифта. Копируйте файл из /Users/<ваш-пользователь>/Library/Fonts в рабочую папку.
- В FontForge выберите File -> Open и откройте копию шрифта.

- Откроется окно со всеми глифами. Дважды щёлкните по глифу, чтобы редактировать контур.

- Чтобы выполнить глобальную трансформацию (например, сузить), выберите Edit -> Select -> Select All (или Control+A в X11), затем Elements -> Transformations -> Transform.

- В выпадающем списке выберите Scale и установите X = 50% (или любое другое значение). Нажмите OK — глифы сузятся.

- Сгенерируйте шрифт через File -> Generate Fonts. Переименуйте файл заранее и измените идентификаторы в Element -> Font Info.

- При генерации могут возникнуть предупреждения и ошибки — их нужно просмотреть и исправить.

- Для каждой ошибки двойным кликом откройте её и используйте кнопку «Fix», чтобы автоматизировать исправление, либо вручную отредактируйте проблемный контур.


- После успешной генерации дважды кликните итоговый файл в Finder, чтобы установить его в Font Book, или переместите в /Users/<ваш-пользователь>/Library/Fonts.
/Users/<ваш-пользователь>/Library/Fonts- Проверьте отображение в приложениях (TextEdit, Pages, браузер) и на разных размерах.
Полезные советы по работе с FontForge и дизайну
- Переименование: измените значения внутри Element -> Font Info (Family Name, Full Name, PostScript Name), иначе файл с новым именем всё равно будет иметь старые метаданные.
- Резервные копии: храните версии в системе контроля версий (Git) или с префиксом v1, v2.
- Начинайте с моноширинного или фиксированной толщины шрифта — проще поддерживать единообразие штрихов.
- Фиксируйте вертикальные метрики (Ascender/Descender/LineGap) и проверяйте, как текст выстраивается в строках.
- Кернинг и парная коррекция: проверьте типичные пары (AV, To, Wa) и настройте пары вручную для важных размеров.
- Хинтинг: для экранных шрифтов ранних этапов — базовый автосбор, для профессионального результата потребуется ручной хинтинг в специализированных инструментах.
Проверка ошибок: типичные проблемы и что с ними делать
- Overlap (перекрытия): используйте Element -> Overlap -> Remove Overlap.
- Contour direction (направление контуров): убедитесь, что внешние контуры направлены по часовой стрелке, внутренние — против. Используйте Element -> Correct Direction.
- Неправильные точки (on-curve/off-curve): отредактируйте узлы вручную или используйте функции очистки.
- Метрики и глифы вне EM Box: проверьте, находятся ли глифы в пределах EM square.
Критерии приёмки:
- Файл генерируется без критических ошибок и предупреждений высокого уровня.
- Имя шрифта изменено в Font Info и не конфликтует с системными шрифтами.
- Шрифт корректно отображается в нескольких приложениях и на разных размерах.
- Кернинг и базовые пары выглядят читаемо в ключевых рабочих размерах.
Примеры альтернативных подходов
- Создание шрифта из рукописи: используйте сервисы типа MyScriptFont (быстро и просто) — распечатайте шаблон, заполните символы, отсканируйте и загрузите.
- Полностью ручная отрисовка: рисование в векторных редакторах (Illustrator, Affinity Designer) с последующей импортировкой контуров в FontForge.
- Командная генерация: для массовой генерации и конвертации используйте fonttools и sfnttools в терминале (для продвинутых пользователей).
MyScriptFont: быстрый путь рукописного шрифта
- Скачайте шаблон с сервиса (обычно PDF). Заполните все клетки своим почерком, аккуратно и контрастно.
- Отсканируйте, загрузите файл назад на сайт, скачайте готовый TTF.
Плюсы: очень быстро, не требует глубокой подготовки. Минусы: ограниченный контроль метрик, качество зависит от аккуратности заполнения и алгоритма сайта.
Форматы и совместимость
- TTF (TrueType): хороший выбор для настольного использования.
- OTF (OpenType): поддержка расширенных таблиц и лигатур; предпочтительнее для профессиональных шрифтов.
- WOFF/WOFF2: сжатые веб-форматы — используйте для размещения в интернете.
Совместимость: macOS, Windows, Linux принимают TTF/OTF. Для веба генерируйте WOFF/WOFF2 и указывайте корректные форматы в @font-face.
Мини-методология: быстрый рабочий процесс (SOP)
- Скопировать исходный файл шрифта в рабочую папку.
- Открыть копию в FontForge.
- Изменить Font Info (имя, версия, лицензия).
- Провести глобальные трансформации (если нужно) и отредактировать проблемные глифы.
- Удалить пересечения, исправить направления контуров, проверить метрики.
- Сгенерировать черновой TTF/OTF, установить локально и проверить.
- Пройти чек-лист приёмки (см. далее). При необходимости повторять итерации.
Контрольный список приёмки (Role-based)
Для новичка:
- Работал только с копией
- Переименовал внутри Font Info
- Сгенерировал TTF и установил локально
- Проверил текстовые блоки в 10, 12, 18, 36 pt
Для графического дизайнера:
- Настроены пары кернинга для основных сочетаний
- Проверены контуры на чистые кривые (минимум лишних узлов)
- Метрики согласованы с системой дизайна
Для веб-разработчика:
- Сгенерированы WOFF/WOFF2
- Тесты @font-face реализованы и проверены в браузерах
- Размеры и загрузка оптимизированы
Тесты и сценарии проверки (примеры)
- Тест A: отображение латиницы и кириллицы в браузере (Chrome, Safari) на 12px и 16px.
- Тест B: рендеринг кириллицы в TextEdit и Pages на macOS.
- Тест C: пара AV/To/Ya — проверить кернинг и сбивы при сочетаниях.
- Тест D: проверка веб-шрифта через Lighthouse/DevTools (скорость, fallback).
Советы по типографике и дизайну
- Контраст штрихов: слишком большой контраст ухудшает читаемость в мелком кегле.
- Округлость и углы: согласуйте их по всей латинице/кириллице для консистентности.
- Пробелы и межбуквенное расстояние: тестируйте не только по буквам, но и на реальных словах и фразах.
- Семейство: планируйте хотя бы по два начертания (Regular, Bold) и итеративно добавляйте Italic/Light.
Лицензирование и юридические моменты
- Не модифицируйте коммерческие шрифты без явной лицензии, разрешающей модификацию.
- Для свободного распространения используйте SIL Open Font License (OFL) либо другую подходящую лицензию.
- Изменение имени файла шрифта не снимает исходной лицензии; изменяйте метаданные аккуратно и указывайте авторство.
Часто встречающиеся ошибки и быстрые решения
- “Font already installed”: удалите конфликтный шрифт из Font Book и перезапустите приложения.
- Плохое отображение в UI: проверьте вертикальные метрики и LineGap.
- Предупреждения при генерации: откройте список ошибок и используйте кнопку Fix или правку контуров вручную.
Ментальные модели для дизайна шрифта
- Начните с сетки: представляйте EM-квадрат как рабочее поле.
- Делайте «ядро» букв: базовые формы (n, o, h, a) задают характер для всей семьи.
- Итерируйте от самого читаемого состояния (мелкий кегль) к декоративному (заголовки).
Диаграмма выбора подхода (Mermaid)
flowchart TD
A[Хотите шрифт быстро?] -->|Да| B[Использовать MyScriptFont или шаблон]
A -->|Нет| C[Изучить FontForge]
C --> D{Нужен контроль над каждым глифом?}
D -->|Да| E[Рисовать в векторном редакторе -> импорт]
D -->|Нет| F[Использовать FontForge для модификации существующего шрифта]Краткая таблица совместимости форматов
- TTF — настольные приложения, большинство ОС
- OTF — расширенные таблицы, лигатуры, лучше для профессионального использования
- WOFF/WOFF2 — веб, сжатие и поддержка браузеров
1-строчный глоссарий
- Glyph: графическое представление символа.
- Kerning: регулировка расстояния между парами символов.
- Hinting: подсказки для рендеринга на экране.
- EM square: базовая единица измерения шрифта.
Итог и следующие шаги
Подберите исходный шрифт или шаблон, установите XQuartz и FontForge, работайте с копиями и тщательно тестируйте результат в реальных приложениях. Если вы серьёзно намерены выпускать шрифтовую семью, изучите основы кернинга, метрик и лицензионных ограничений, а также подумайте о профессиональных инструментах или услугах для финального шага.
Ресурсы для дальнейшего изучения:
- Официальная документация FontForge: https://fontforge.org/docs/
- XQuartz: https://www.xquartz.org
- SIL Open Font License (OFL)
Спасибо за чтение. Удалось ли вам создать свой шрифт на Mac? Какие инструменты вы использовали — поделитесь в комментариях.
Краткое резюме
- Работайте только с копиями системных шрифтов; переименовывайте внутри Font Info.
- FontForge + XQuartz позволяют бесплатно редактировать и генерировать шрифты на Mac.
- Тестируйте шрифт в нескольких приложениях и на разных размерах; исправляйте ошибки последовательно.
- Планируйте структуру семейства и лицензионную политику до распространения.
Похожие материалы
Запуск Redis в Docker — быстро и безопасно
SMART‑цели для фитнеса: как ставить и достигать
Создание пользовательских тематических значков на Android
Как удалить или изменить коммит в Git
Flutter + Android Studio на Linux — установка и запуск