Разработка кастомных шрифтов и типографики мобильного приложения

TRUETECH занимается разработкой, поддержкой и обслуживанием мобильных приложений iOS, Android, PWA. Имеем большой опыт и экспертизу для публикации мобильных приложений в популярные маркеты Google Play, App Store, Amazon, AppGallery и другие.
Разработка и поддержка любых видов мобильных приложений:
Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Предлагаемые услуги
Показано 1 из 1 услугВсе 1735 услуг
Разработка кастомных шрифтов и типографики мобильного приложения
Средняя
от 1 рабочего дня до 3 рабочих дней
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    756
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    624
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1052
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    947
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    862
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    445

Разработка кастомных шрифтов и типографики мобильного приложения

Подключить кастомный шрифт в мобильное приложение — звучит просто. Но до продакшна путь проходит через лицензирование, правильный формат файлов, загрузку без задержек, Dynamic Type, fallback при ошибке загрузки и читаемость на маленьких экранах. Каждый пункт — отдельная задача.

Лицензирование: самый частый источник проблем

Шрифт для десктопного сайта и шрифт для мобильного приложения — разные лицензии у большинства фаундри. Google Fonts — бесплатно для мобильных приложений (OFL, Apache 2.0). Adobe Fonts через Creative Cloud — требует проверки лицензии для app embedding. Коммерческие шрифты типа Helvetica Neue, Gotham, Brandon Grotesque — нужна отдельная лицензия на embedded use.

Нарушение лицензии — это не только юридический риск. App Store Review Team иногда отклоняет приложения с нелицензированными шрифтами, если это обнаруживается. Проверяем лицензию до начала работы.

Форматы и подготовка файлов

iOS принимает OTF и TTF. Android — TTF. React Native и Flutter — TTF/OTF.

Если шрифт поставляется только в одном начертании, а дизайн использует Regular, Medium, SemiBold, Bold — нужны отдельные файлы для каждого веса. Фейковый bold (system synthetic bold) на мобиле выглядит плохо и может привести к reject на iOS.

Variable Fonts (.ttf с fvar таблицей) — прогрессивный подход: один файл покрывает весь диапазон weight и width. iOS поддерживает variable fonts с iOS 14, Android — с API 26. React Native — частичная поддержка через fontVariationSettings. Flutter — через FontVariation в TextStyle.

Оптимизация размера: если используете только латиницу и кириллицу — subsetting через pyftsubset (fonttools) убирает неиспользуемые глифы. Типичный Latin+Cyrillic subset из полного шрифта: с 800KB до 150KB.

Подключение на iOS

Шрифт добавляется в Bundle, регистрируется в Info.plist под ключом UIAppFonts:

<key>UIAppFonts</key>
<array>
  <string>CustomFont-Regular.otf</string>
  <string>CustomFont-Bold.otf</string>
</array>

В SwiftUI используется через .font(Font.custom("CustomFont-Regular", size: 16)). В UIKit — UIFont(name: "CustomFont-Regular", size: 16).

Типичная ошибка: имя шрифта в коде и Postscript Name файла не совпадают. Проверяем через CTFontManagerCopyAvailableFontFamilyNames() или Font Book на macOS.

Dynamic Type на кастомном шрифте: UIFontMetrics(forTextStyle: .body).scaledFont(for: customFont) — это масштабирует кастомный шрифт пропорционально системным настройкам размера. Без этого приложение не пройдёт accessibility audit.

Подключение на Android

Шрифт кладётся в res/font/, используется через XML или код:

val typeface = ResourcesCompat.getFont(context, R.font.custom_regular)
textView.typeface = typeface

В Compose:

val customFontFamily = FontFamily(
    Font(R.font.custom_regular, FontWeight.Normal),
    Font(R.font.custom_bold, FontWeight.Bold)
)
Text(text = "Hello", fontFamily = customFontFamily)

Downloadable Fonts через Google Fonts API — экономит размер APK, но требует интернета при первом запуске и fallback-шрифта на случай недоступности сети.

Типографическая шкала

Кастомный шрифт нужно правильно «настроить» в масштабе: подобрать line height, letter spacing, оптимальный size для каждого текстового стиля. Это не то, что делается за час — нужно тестировать на реальных экранах разных размеров и плотностей (iPhone SE vs iPhone 15 Pro Max, ldpi vs xxxhdpi на Android).

Минимальный читаемый размер на мобиле: 12pt/sp для Caption, 14pt/sp для Body Small. Ниже — только в очень специфичных случаях.

Для дизайн-передачи: все текстовые стили оформляются в Figma как Text Styles с полной спецификацией, передаются разработчику через Figma Dev Mode с конкретными значениями.

Задача Срок
Подключить шрифт + базовая шкала (одна платформа) 1 день
Две платформы + Dynamic Type + variable font 2–3 дня
Полная дизайн-система с типографикой 3–5 дней

Стоимость рассчитывается индивидуально после анализа проекта.