我希望在将一段文本绘制在页面上并检查其 y 位置之前,判断它是否适合页面底部。
有谁知道ABCPDF是否可以做到这一点?
根据我的经验,处理这个问题的最好方法是不要担心它是否适合通过尝试测量。
这不是不可克服的,因为您可以跨页面链接文本,但这是一个不同的问题。
据我记得,当我做 PDF 的时候(比如...... 6-7 年前使用 ABCPDF),我们使用了 Graphics.MeasureString 方法的分配时间。
你可能想看看MSDN
是的,ABCPDF 会告诉你这个信息:如果文本不能添加到当前矩形,yourPdfDocInstance.AddHtml() 将返回 0(并且不添加任何文本)
如果 graphics.Measurestring 对您不起作用,另一个选项是从字面上测量某些字体的大小,以便您知道一行中有多少个字母,然后可以计算出在给定矩形中将有多少行并调整大小相应地使用 yVal = lineCount * 5 之类的矩形。
如果我没记错的话,由于某种原因,我无法使用 measurestring 函数,因此不得不以尴尬的方式进行操作,但在我有多个不同大小的盒子的情况下,它确实工作得很好。