Почему загрузка шрифта в приложении iPhone работает только для iOS> = 5.0 - PullRequest
0 голосов
/ 02 апреля 2012

Я пытаюсь загрузить шрифт в приложение.Я думаю, что я делаю это хорошо.Но это не работает на iOS <5.0. </p>

Я включил файлы шрифтов в качестве ресурсов (используя файлы otf), добавил их в массив UIAppFonts и протестировал шрифты на кнопках.Вот так:

В Info.plist:

<key>UIAppFonts</key>
    <array>
        <string>FrutigerNextPro-Medium.otf</string>
        <string>FrutigerNextPro-MediumIta.otf</string>
        <string>FrutigerNextPro-Light.otf</string>
        <string>FrutigerNextPro-LightIta.otf</string>
    </array>

Их в кнопках вот так:

btt_01.titleLabel.font = [UIFont fontWithName:@"FrutigerNextPro-Medium" size:20];
btt_02.titleLabel.font = [UIFont fontWithName:@"FrutigerNextPro-MediumIta" size:20];
btt_03.titleLabel.font = [UIFont fontWithName:@"FrutigerNextPro-Light" size:20];
btt_04.titleLabel.font = [UIFont fontWithName:@"FrutigerNextPro-LightIta" size:20];

Проблема в том, что FrutigerNextPro-Medium и FrutigerNextPro-MediumIta загружаются только в устройства и симулятор с использованием iOS> = 5.0.В устройствах и симуляторе с iOS <5.0 он не загружает шрифт, я думаю, что он загружает <em>FrutigerNextPro-Light

и когда я регистрируюсь так:

for (NSString *family in [UIFont familyNames]) {
    NSLog(@"%@", [UIFont fontNamesForFamilyName:family]);
}

Я получаю шрифт, доступный на любой платформе:

 (
    "FrutigerNextPro-MediumIta",
    "FrutigerNextPro-LightIta",
    "FrutigerNextPro-Medium",
    "FrutigerNextPro-Light"
)

Я получаю шрифт, доступный на любой платформе.

Может ли кто-нибудь помочь мне, пытаясь понять, что происходит неправильно.

Спасибо

Ответы [ 2 ]

0 голосов
/ 02 апреля 2012

Я обнаружил, что это ограничение, что поддерживаются только 2 варианта шрифта с одним шрифтом.

Проверьте это: http://www.iphonedevsdk.com/forum/iphone-sdk-development/59855-ipad-custom-font-issue.html

Но все еще без решения ... все еще не можетзагрузить FrutigerNextPro-Medium в iOS <5.0 .. Я попытаюсь преобразовать шрифт .. </p>

РЕДАКТИРОВАТЬ: Я преобразовал все шрифты в ttf, но несчитаю, что это было решением.

То, что я сделал, было (как на форуме сказано) изменить имя семейства шрифтов .

Тогда я понимаю, что это правда, этопроблема, не может иметь 2 варианта одного семейства шрифтов.

Теперь он работает.

В любом случае, спасибо

0 голосов
/ 02 апреля 2012

если вы хотите добавить пользовательский шрифт для более старой версии iOS, используйте этот подход Можно ли встроить пользовательский шрифт в приложение для iPhone?

...