我正在尝试更新我的代码,以便它可以编译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
发布于 2012-01-11 15:42:50
感谢你的回复。我不太清楚你在那里做什么。
在我看来,你就像是从你的资源文件夹中加载一个选择(或字体系列)并激活它们(不管以前是什么……在这一点上,字体管理器FM_____调用感觉就像10年前:-)
无论如何,请查看this potentially useful question,它的答案可能会对您有所帮助。看起来这可能和通过info.list文件中的ATSApplicationFontsPath键提供字体一样简单(在那里有更高评级的答案)。
https://stackoverflow.com/questions/8815466
复制相似问题