gpt4 book ai didi

objective-c - 如何确定 nsstring 的哪一部分适合矩形?

转载 作者:太空狗 更新时间:2023-10-30 03:44:32 24 4
gpt4 key购买 nike

这是关于使用核心图形的 PDF 格式化。但是当涉及到在两页上打印字符串时,它可能与任何类型的分页有关。

我需要将一个字符串分布在多个页面上。对于较小的字符串,这不是真正的问题。对于那些我使用 NSString UIKit 扩展 sizeWithFont 来确定全文是否适合当前页面。如果是,则使用 drawInRect 打印它,如果不是,则将其移至下一页。

工作正常但不适合较长的字符串。在我的应用程序中,单个字符串(由用户提供)甚至可能比整页更长。

当给定一个完整的页面或页面的一些剩余空间时,我如何确定 NSString 的哪一部分可以显示在给定的矩形中,以便我可以将其切断并打印剩余的字符串(或在至少一部分)在下一页?

我想到了一个替代方案。那就是将完整的文本绘制到屏幕外的图形上下文中,然后将创建的图像切割成适合页面上可用空间的切片。但如果我这样做,那么我需要将切割线恰好放在文本行之间。坦率地说,我不确定如何确定在何处可以安全地将包含图形的文本切割成两个(或更多)部分,而无需在中间切割一行文本。

我希望我表达自己的意思是可以理解的,并且希望有人来救援。

最佳答案

在核心文本中,有 a very relevant function ,其最后一个参数(指向 CFRange 的指针)定义如下:

fitRange
On return, contains the range of the string that actually fit in the constrained size.

关于objective-c - 如何确定 nsstring 的哪一部分适合矩形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15321544/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com