Используя шрифты, которые не находятся на iPhone

Я хотел бы использовать некоторые шрифты, которые не являются частью iPhone OS. Я видел игры, которые используют нестандартные шрифты. Я могу установить шрифты, создать изображения для каждого в Photoshop и затем использовать те изображения в приложении для iPhone. Однако я не думаю, что это - практический способ пойти. Если цвет или оттенок должны быть скорректированы (из-за фона) или размер, я должен буду перепроектировать каждый шрифт, который я использую. Существует ли лучший способ сделать это?

Я считал это, я могу встроить пользовательский шрифт в приложение для iPhone? и загруженный приложение маркировки шрифта с открытым исходным кодом. Однако это отказывает большую часть времени, когда я пытаюсь использовать конкретные шрифты. В отношении последнего комментария об использовании UIFont с fontWithName:size, который, конечно, не работает. Ваша переменная шрифта будет нолем. Список всех доступных шрифтов показывает, почему - ни один из пользовательских шрифтов не находится в списке.

Я также читал, Как я включаю шрифт со своим приложением для iPhone?, который определенно не работает. То же как последний комментарий в вышеупомянутой ссылке.

6
задан Community 23 May 2017 в 10:27
поделиться

2 ответа

Правильный ответ - использовать FontLabel, который можно найти на GitHub. http://github.com/zynga/FontLabel

Я использовал этот код в нескольких реальных проектах, и это просто фантастика.

ОБНОВЛЕНИЕ:

Начиная с iOS 3.2 (только iPad) и iOS 4 на iPhone, вы можете упаковывать шрифты TTF в свой пакет приложений. После ввода их в свой Info.plist с помощью ключа UIAppFonts.

Трехэтапные инструкции здесь: http://kgriff.posterous.com/45359635

7
ответ дан 9 December 2019 в 20:48
поделиться

Это, к сожалению, не мгновенный ответ, но похоже, что в будущем вы сможете включать пользовательские шрифты как часть своего приложения:

UIAppFonts (Array - iPhone OS) определяет любые предоставляемые приложением шрифты, которые должны быть доступны через обычные механизмы. Каждый элемент в массиве представляет собой строку, содержащую имя файла шрифта (включая расширение имени файла), который находится в пакете приложения. Система загружает указанные шрифты и делает их доступными для использования приложением при запуске этого приложения.

К сожалению, это работает только в iPhone OS 3.2, которая является версией для iPad. Весьма вероятно, что эта функция будет доступна в будущих выпусках iPhone OS.

Ссылка: http://developer.apple.com/iPhone/library/documentation/General/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html#//apple_ref/doc/uid/TP40009252-SW18

(это была единственная общедоступная документация, которую я смог найти на сайте Apple)

0
ответ дан 9 December 2019 в 20:48
поделиться