CTFontCreateWithName 返回“.LastResort”字体
我的应用程序提供了多种自定义字体,所有这些字体都在应用程序的 plist 中正确定义。我可以毫无问题地使用这些自定义字体加载 UIFont。 UILabel
使用 [UIFont fontWithName:@"some-custom-font" size:14]
作为字体,工作完美。
不起作用的是 CoreText 方法。
我需要在属性字符串中使用这些字体,因此我绝对需要 CTFontRef
。在 iOS 5 之前我没有遇到任何问题。现在,CTFontCreateWithName
倾向于返回名为 .LastResort
的字体,而不是我需要的字体。如果我终止应用程序并重新启动,上次失败的一些字体现在可以工作,但其他字体则不能。看似随意。如果我在应用程序启动时立即调用 CTFontCreateWithName
,则该特定字体稍后会起作用,但同样大多数其他字体不会。
我以前从未遇到过这种行为。我的应用程序内存占用不是很大。这感觉像是 iOS 5 的一些错误。非常欢迎任何帮助或建议。
I have multiple custom fonts provided with my app, all defined in the app's plist correctly. I can load UIFont
s with those custom fonts with no problems. UILabel
s using [UIFont fontWithName:@"some-custom-font" size:14]
as font work flawlessly.
What doesn't work is CoreText methods.
I need to use those fonts in attributed strings, so I absolutely need the CTFontRef
. Till iOS 5 I had no problem what-so-ever. Now, CTFontCreateWithName
tends to return a font called .LastResort
, instead of what I need. If I kill the app and relaunch, some of the fonts that failed last time do work now, but others don't. Seemingly random. If I call CTFontCreateWithName
immediately on app launch, that specific font works later, but again most of the others do not.
I never encountered this kind of behavior before. My app isn't very memory heavy. This feels like some iOS 5 bug. Any help or advice will be very welcome.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我只通过 UIKit 使用过自定义字体。您可能需要联系 DTS,或者绝对是 bugreport.apple.com
I've only used custom fonts via UIKit. You may want to contact DTS, or definitely bugreport.apple.com