Вставить шрифт в пакет 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];

2 ответа

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

Задайте место назначения фазы сборки "Копирование файлов" для ресурсов с путем Fonts, Это обеспечит копирование шрифта в папку с именем Fonts в вашем приложении.

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

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

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

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

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

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

Это, как говорится о примере выше, ATSFontActivateFromFileSpecification был объявлен устаревшим в Leopard. Очевидно, замена использует FSRef напрямую, что еще лучше.

Другие вопросы по тегам