CTFontCreateWithName 返回“.LastResort”字体

发布于 2024-12-13 20:08:39 字数 555 浏览 1 评论 0原文


我的应用程序提供了多种自定义字体,所有这些字体都在应用程序的 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 UIFonts with those custom fonts with no problems. UILabels 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

桃扇骨 2024-12-20 20:08:39

我只通过 UIKit 使用过自定义字体。您可能需要联系 DTS,或者绝对是 bugreport.apple.com

I've only used custom fonts via UIKit. You may want to contact DTS, or definitely bugreport.apple.com

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文