我正在尝试更新我的代码,以便它可以编译x86_64,不幸的是,下面的代码是罪魁祸首(恰好有大约十年的历史)。我知道它应该是CTFont类型的类,尽管我不知道如何使旧代码适应当前的代码。任何帮助,将不胜感激。我还提供了对此代码及其某些前身的引用,而这些碰巧也已被弃用。谢谢!
- (void)loadLocalFonts
{
NSString *fontsFolder;
if ((fontsFolder = [[NSBundle mainBundle] resourcePath])) {
NSURL *fontsURL;
if ((fontsURL = [NSURL fileURLWithPath:fontsFolder])) {
FSRef fsRef;
FSSpec fsSpec;
(void)CFURLGetFSRef((CFURLRef)fontsURL, &fsRef);
if (FSGetCatalogInfo(&fsRef, kFSCatInfoNone, NULL, NULL, &fsSpec,
NULL) == noErr) {
FMActivateFonts(&fsSpec, NULL, NULL, kFMLocalActivationContext);
}
}
}
}
参考:Using Custom Fonts In Your Cocoa Applications
最佳答案
感谢您的回复。我不确定您在那做什么。
对我来说,好像您正在从资源文件夹中加载选择(或字体系列)并激活它们(以前是...字体管理器FM_____
调用现在感觉就像十年前一样:-)
无论如何,请查看具有可能对您有帮助的答案的this potentially useful question。看起来就像通过info.list文件中的ATSApplicationFontsPath
键使字体可用(那里的评分较高)一样容易。