Как установить свой шрифт в iPhone / iPad

Внимание! Описанный здесь метод устарел. В современных версиях iOS используйте профили Apple Configurator


         Пользовательские шрифты на iPad в приложении Keynote

Создавая свои тексты и презентации на планшете iPad, или просматривая их на телефон, вы наверняка сталкивались с тем, что устройство не поддерживает и заменяет отсутствующие шрифты в документе на какие-то другие по своему усмотрению.
Нельзя сказать, чтобы всё было совсем плохо, потому что количество предустановленных шрифтов большое, и есть из чего выбрать. Кроме того, браузер Safari поддерживает пользовательские шрифты, внедрённые на веб-страницу дизайнером.

Однако когда вы создаёте презентацию, у вас есть какие-то любимые шрифты или элементы фирменного стиля, и вы хотели бы использовать именно их.
Например, мне нужны рукописные Alexascript и Calligraphia One, а также Century Gothic, Myriad Pro и стандартные в MS Office Calibri и Cambria.
Способ добавить в айпад или айфон свои собственные шрифты есть. Правда, для этого устройство должно быть подвергнуто джейлбрейку.

В iOS кэш и индекс шрифтов хранится здесь: /System/Library/Fonts
На планшете iPad список шрифтов и семейств шрифтов находится в plist-файле CGFontCacheFull_H_.plist. Чтобы добавить на устройство пользовательские шрифты, нужно их скопировать в кэш и внести в список вручную.
Ниже я покажу, как это сделать на iPad.
Для iPhone процедура добавления пользовательского шрифта аналогична.

Сначала подготовьте файлы шрифта в формате TrueType (расширение файлов – TTF) шрифт в обычном начертании, курсив, полужирный и полужирный курсив (если есть), всего до 4 разных вариантов.

Мы будем добавлять шрифт Cambria от Microsoft, который используется в Microsoft Office для заголовков и математических символов (Cambria Math).
Переименуем файлы так, чтобы они не содержали пробелов:

Обычный Cambria.ttf
Полужирный CambriaBold.ttf
Курсив CambriaItalic.ttf
Полужирный курсив CambriaBoldItalic.ttf

Теперь следует скопировать файлы на планшет в папку /System/Library/Fonts, причём желательно в свою подпапку, например, MyFonts, чтобы потом свои шрифты было проще отличить от системных. Скопировать файлы на планшет можно либо с помощью DiskAid, либо через файловый менеджер iFile на самом устройстве, либо каким-либо другим удобным для вас путём.

Далее нужно отредактировать две секции в plist-файле CGFontCacheFull_H_.plist, содержащем список шрифтов. Для этого нужно либо выгрузить его на компьютер и открыть в текстовом редакторе (например, TextWrangler на Mac), либо воспользоваться встроенным редактором plist-файлов в iFile.

Прямо вначале файла сразу под
<dict>
     <key>Names</key>
     <dict>

добавим список названий шрифтов и соответствующие имена файлов.
Необходимо использовать абсолютную адресацию, следуя шаблону:
<key>Название шрифта</key>
<string>путь к файлу шрифта</string>

В нашем случае для шрифтов Cambria секция будет выглядеть следующим образом:
<key>Cambria</key>
<string>/System/Library/Fonts/Cache/MyFonts/Cambria.ttf</string>
<key>Cambria Bold</key>
<string>/System/Library/Fonts/Cache/MyFonts/CambriaBold.ttf</string>
<key>Cambria Bold Italic</key>
<string>/System/Library/Fonts/Cache/MyFonts/CambriaBoldItalic.ttf</string>
<key>Cambria Italic</key>
<string>/System/Library/Fonts/Cache/MyFonts/CambriaItalic.ttf</string>

Теперь нужно отредактировать вторую секцию в plist-файле со списком шрифтов. Она называется TraitMappings, начинается после фрагмента
<key>TraitMappings</key>
<dict>

и содержит сведения о семействах шрифтов. Редактируя эту секцию, нужно строго следовать шаблону:
<key>Название семейства шрифтов</key>
<dict>
     <key>Plain</key>
     <string>Название шрифта</string>
     <key>Bold</key>
     <string>Название шрифта</string>
     <key>Italic</key>
     <string>Название шрифта</string>
     <key>Bold-Italic</key>
     <string>Название шрифта</string>
</dict>

Приложения используют эти данные, чтобы сгруппировать шрифты одного семейства, предоставляя пользователю выбор нужного начертания. Если семейство шрифтов не содержит какого-либо начертания, соответствующую пару <key> – <string> нужно просто опустить.

Итак, добавляем наше семейство шрифтов Cambria:
<key>Cambria</key>
<dict>
     <key>Bold</key>
     <string>Cambria Bold</string>
     <key>Bold-Italic</key>
     <string>Cambria Bold Italic</string>
     <key>Italic</key>
     <string>Cambria Italic</string>
     <key>Plain</key>
     <string>Cambria</string>
</dict>

Аналогичным путём добавим все другие шрифты, которые понадобятся на планшете.
Теперь пора сохранить файл, и если вы редактировали его на компьютере, загрузить его обратно на планшет, заменив оригинал на новую версию.

Чтобы вновь добавленные на планшет или телефон шрифты появились в приложениях, нужно либо выключить и включить (перезагрузить) устройство, либо перезапустить пользовательский интерфейс, введя в терминале устройства:
su
killall SpringBoard

Теперь в Keynote, Pages, Numbers и некоторых других приложениях станут доступны ваши шрифты.
Вот так выглядит заглавный слайд презентации с моего мастер-класса по макрофотографии, импортированный в Keynote на iPad:

Все шрифты поддерживаются!

Как установить свой шрифт в iPhone / iPad: 10 комментариев

  1. у меня Iphone 2, джейлбрекнутый, хорошо работает но из за плохого зрения мне бы хотелось увеличить все шрифты .... мне пришла в голову идея - нельзя ли как то удалить или заблокировать прописные буквы в шрифтах а оставить только заглавные....тогда весь интерфейс станет крупнее..... подскажите пожалуйста

    1. Думаю, правильный путь в Вашем случае – определить системные шрифты, который нуждаются в «апгрейде», и заменить элементы в кодовой таблице так, чтобы сдублировать прописными буквами все строчные, и после этого залить шрифты обратно на телефон.

          1. посылаю в почту....в блокноте теперь все буквы заглавные - это не очень красиво но зато очень удобно с моим зрением......а остальные системные шрифты научился увеличивать FontCreator

  2. Добрый вечер питерским коллегам!))) Не совсем ясно, где находится CGFontCacheFull_H_.plist, в папке Fonts присутствует несколько plist-файлов, но с таким именем ни одного.

      1. Бодрый вечер!
        Там не совсем любой плист имеет смысл менять, т.к. некоторые версии работают только на айфоне, но не на айпаде, и наоборот; а в папке есть все варианты плистов.

  3. Доброе время суток! У меня в том файле не понятные буквы и там не возможно разобрать куда вставить! Я пытался преобразовать в другую кадировку ну ничего не помогает.... подскажите куда можно вставить?

Добавить комментарий