创建CTFont时会收到以下警告。
CoreText性能说明:客户端请求使用名称为"ArialRoundedMTBold"
的PostScript名称为"Arial Rounded MT Bold"
的字体。
// Creating Font
CTFontRef fontWithoutTrait = CTFontCreateWithName((__bridge CFStringRef)(name), size, NULL);
// Font names I use to create a font
[UIFont familyNames];
如果我删除从[UIFont familyNames]获取的任何字体名称中的所有空格,它是否会是核心文本所期望的字体名称,这是否安全?
答案 0 :(得分:5)
在创建字体时,将完整名称转换为postscript名称。
+ (NSString *)postscriptNameFromFullName:(NSString *)fullName
{
UIFont *font = [UIFont fontWithName:fullName size:1];
return (__bridge NSString *)(CTFontCopyPostScriptName((__bridge CTFontRef)(font)));
}