根据文档,您应该设置一个<NSFontManagerDelegate>到NSFontManager的共享实例。学员应实施方法
- (BOOL) fontManager:(id)sender willIncludeFont:(NSString *)fontName;
然后将重复调用。不幸的是,没有<NSFontManagerDelegate>可用,而实际上缺少协议。尽管如此,我还是创建了一个实现上述方法的NSObject实例,并将其设置为NSFontManager的委托。不幸的是,该方法从未被调用。经过一些谷歌搜索,我了解到fontManager:willIncludeFont:从OSX10.3开始就不推荐使用了。
还有其他选择吗?如果我的应用程序只支持单间距字体,该怎么办?
子类NSFontManager
,覆盖- (NSArray *)collectionNames
,返回字体集合列表。[1]