以下是我的代码片段
Dim table As iText.Layout.Element.Table = New iText.Layout.Element.Table(4)
table.SetWidth(pagesize.GetWidth - 40)
Dim something As Paragraph = New Paragraph("LONG TEXT")
Dim cell as Cell = New Cell().Add(New Paragraph("Some Text").SetFont(timesNewRoman))
table.AddCell(cell)
table.AddCell(cell)
table.AddCell(cell)
table.AddCell(cell)
canvas.Add(table.SetMarginLeft(20))
Dim unit as UnitValue = table.GetHeight()
我总是得不到桌子的高度?我不明白为什么。有没有办法让我获得桌子高度?如果它有所不同,这个表在我的标题中,所以当我想根据表的放置位置设置文档边距时,所有文本都放在标题下面。每次生成此pdf时,文本都会有所不同。
答案 0 :(得分:2)
Dim result As LayoutResult = table.CreateRendererSubTree().SetParent(doc.GetRenderer()).Layout(New LayoutContext(New LayoutArea(1, New Rectangle(0, 0, 400, 10000.0F))))
tableHeight = result.GetOccupiedArea().GetBBox().GetHeight()
这就是我能够在itext7中找到表高度的方式,希望它可以帮助某人。