Не могу использовать собственный шрифт в приложении iOS - PullRequest
3 голосов
/ 29 января 2012

Я пытаюсь использовать собственный шрифт для своего приложения для iOS.Вот что я делаю

Я добавил свой собственный шрифт (m.tff) в каталог файлов поддержки Xcode.Также я создаю запись под названием Fonts, предоставляемую приложением, со значением name шрифта (m.tff) в myApp.plist

. На мой взгляд, у меня есть метка

UILabel *label = [[UILabel alloc]initWithFrame:CGRect(10, 20, 230, 30)];
label.font = [UIFont fontWithName:@"My custom font" size:15];

и т. Д.

Проблема в том, что когда я запускаю приложение, текст в метке имеет шрифт по умолчанию, а не конкретный.

Что мне здесь не хватает?

РЕДАКТИРОВАНИЕ

Ну, кажется, теперь работает, но шрифт применяется только для символов, как,?но не для писем.Я использую кириллицу кстати.

Ответы [ 6 ]

9 голосов
/ 29 января 2012

Используйте это, чтобы получить все доступные шрифты

  // List all fonts on iPhone
  NSArray *familyNames = [[NSArray alloc] initWithArray:[UIFont familyNames]];
  for(NSString *familyName in familyNames)
  {
    NSLog(@"family: %@", familyName);

    NSArray *fontNames = [[NSArray alloc] initWithArray:[UIFont fontNamesForFamilyName:familyName]];
    for(NSString *fontName in fontNames)
    {
      NSLog(@"    font: %@", fontName);
    }
  }

Найдите встроенный шрифт и посмотрите, совпадает ли его имя.

4 голосов
/ 29 января 2012

Расширение шрифта должно быть ttf вместо tiff

, а затем сделать запись в plist

Шрифты, предоставляемые приложением Font.ttf

2 голосов
/ 29 января 2012

В вашем файле Info.plist добавьте ключ: Fonts provided by application с объектом массива и установите элементы массива в виде строк следующим образом:

MyFont.ttf

Где MyFont - это EXACTимя, указанное в списке для шрифта в приложении Mac, «Книга шрифтов».Используйте Spotlight, чтобы запустить книгу шрифтов, а затем найдите там файл шрифта, чтобы дважды проверить имя.

Затем, когда вы установите шрифт для своей метки:

myLabel.font = [UIFont fontWithName: @"MyFont" size: someFloatValue];
2 голосов
/ 29 января 2012

Проверьте, возвращает ли ваша строка [UIFont fontWithName:@"My font" size:15] объект UIFont, который не является нулевым.

0 голосов
/ 31 марта 2015
  1. Убедитесь, что ваши шрифты находятся в info.plist (шрифты, предоставляемые приложением)
  2. Выберите цель, на вкладке этапов сборки, Копировать ресурсы комплекта, добавьте свои шрифты.
0 голосов
/ 29 января 2012

m.tiff не похож на поддерживаемый файл шрифта, т.е. TrueType или OpenType.

...