Встройте шрифт в пакет Mac

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

Мой код...

NSMutableAttributedString *recOf;
recOf = [[NSMutableAttributedString alloc] initWithString:@"In Recognition of"];
length = [recOf length];
[recOf addAttribute:NSFontAttributeName value:[NSFont fontWithName:@"Edwardian Script ITC" size:50] range:NSMakeRange(0, length)];
[[NSColor blackColor] set];
p.x = (bounds.size.width/2)- (([recOf size].width)/2);
p.y = (bounds.size.height/1.7);
[recOf drawAtPoint:p];
[recOf  release];
38
задан zneak 15 March 2010 в 02:20
поделиться

2 ответа

Некоторые люди добились успеха , используя углеродную магию. Тебе стоит попробовать.

Что касается приведенного выше примера, ATSFontActivateFromFileSpecification не рекомендуется в Leopard. По-видимому, замена напрямую использует FSRef, что даже лучше.

2
ответ дан 27 November 2019 в 03:24
поделиться

Да, вы можете. Вы должны добавить фазу сборки Copy Files к вашей цели (щелкните правой кнопкой мыши цель, затем выберите Add > New Build Phase > New Copy Files Build Phase).

Установите назначение фазы сборки Copy Files в Resources с путем Fonts. Это обеспечит копирование шрифта в папку Fonts в пакете вашего приложения.

Добавьте файл шрифта в новую фазу сборки, перетащив файл шрифта на фазу сборки.

Затем вам нужно добавить ключ ATSApplicationFontsPath в файл Info.plist, указав в качестве значения имя папки, содержащей ваш шрифт:

<key>ATSApplicationFontsPath</key>
<string>Fonts</string>

Затем вы можете использовать шрифт в вашем приложении, как если бы это был встроенный системный шрифт, вызвав [NSFont fontWithName:@"yourFontName"].

Конечно, перед этим вы должны убедиться, что у вас есть разрешение на распространение шрифта.

82
ответ дан 27 November 2019 в 03:24
поделиться