在iText中动态获取表高度

时间:2012-07-12 08:09:35

标签: dynamic itext

在将表格高度添加到文档之前,有没有办法获得表格的高度?

乍一看,我认为表格中的行数足以计算高度,因为我知道字体大小。但是,有些行违反了这一规则。例如,一个单元格可能存储具有多行的段落。因此,我需要知道的是每一行的总高度。

2 个答案:

答案 0 :(得分:3)

是的,答案并不复杂。

为了获得表格的高度,必须先设置表格的宽度。换句话说,

table.setTotalWidth((PageSize.A4.getWidth() - document.leftMargin()
- document.rightMargin()) * table.getWidthPercentage() / 100);

System.out.println(table.calculateHeights());

确实给出了表格的高度。

答案 1 :(得分:2)

如果您想动态获取表格的高度,只有在向其添加了所有内容后才能这样做。为了完成这项工作,您必须首先设置其固定宽度属性和锁定宽度属性。

e.g。

table.setTotalWidth(555f);
table.setLockedWidth(true);

在此之后,您可以使用其table.getTotalHeight()方法

获取表格的高度