将 NSAttributedString 绘制到非矩形 CGPath 中?

发布于 2024-09-30 18:20:04 字数 429 浏览 12 评论 0原文

我在 iOS 3.2 应用程序 (iPad) 中生成了一个相当复杂的 NSAttributedString,包括 CTParagraphStyleSetting 类型的格式化选项,特别是 kCTParagraphStyleSpecifierMinimumLineHeight 和 kCTParagraphStyleSpecifierParagraphSpacing 的值。

当我尝试将此属性字符串绘制到非矩形 CGPath 中时,Core Text 会绘制它,但没有定义行间距;也就是说,所有文本都出现在没有行距的段落中。不用说,它看起来不像 CGPath 是简单地使用对 CGPathAddRect() 的一次调用来定义的那样漂亮!

是否有任何我可以指定的设置(到我的 CTFramesetterRef 或与罪魁祸首 CGPath 关联的 CTFrameRef)以避免丢失所有行高信息?

谢谢!

I generate a rather complex NSAttributedString in my iOS 3.2 application (iPad), including formatting options of type CTParagraphStyleSetting, in particular with values for kCTParagraphStyleSpecifierMinimumLineHeight and kCTParagraphStyleSpecifierParagraphSpacing.

When I try to draw this attributed string into a non-rectangular CGPath, Core Text draws it but without the line spacing defined; that is, all text appears crammed in paragraphs without line spacing. Needless to say, it does not look as pretty as if the CGPath was simply defined using a single call to CGPathAddRect()!

Is there any setting I can specify (to my CTFramesetterRef or to the CTFrameRef associated to the culprit CGPath) to avoid losing all line height information?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

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

发布评论

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

评论(2

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