我有一张桌子,我需要填写整个页面的100%。这是我使用的代码:
....
Dim tamanyo_tabla As New Rectangle(PageSize.A4)
Dim dimensiones_tabla(11) As Single
dimensiones_tabla(0) = 3
dimensiones_tabla(1) = 3
dimensiones_tabla(2) = 10
dimensiones_tabla(3) = 10
dimensiones_tabla(4) = 10
dimensiones_tabla(5) = 8.33
dimensiones_tabla(6) = 8.33
dimensiones_tabla(7) = 12.5
dimensiones_tabla(8) = 8.33
dimensiones_tabla(9) = 8.33
dimensiones_tabla(10) = 6
dimensiones_tabla(11) = 12.18
table_sem.SetWidthPercentage(dimensiones_tabla, tamanyo_tabla)
....
如果你对数组dimensiones_tabla
中的所有数字求和,你会注意到它的100%。
我的基础是这个例子(它没有更新,尽管方法已经改变):http://itextpdf.com/examples/iia.php?id=79
我打开pdf,发现表格宽度远不是页面的100%。
答案 0 :(得分:0)
您正在设置宽度百分比,如下所示:
table_sem.SetWidthPercentage(dimensiones_tabla, tamanyo_tabla)
dimensiones_tabla
中所有宽度的总和为100个用户单位(1.3889英寸)。 tamanyo_tabla
的宽度为595个用户单位。因此,您定义的宽度百分比为100/595 = 16.8%。 16.8%确实远不是该页面的100%。
如果您希望表格占据页面可用宽度的100%,为什么不将宽度百分比设置为100%?
table_sem.setWidthPercentage(100); // Java!
在VB中,这可能看起来像这样:
table_sem.WidthPercentage = 100 // VB
请注意,这不会是 total 页面的100%,因为您可能有一个大于0的左边距和右边距。如果您希望表格覆盖整个页面宽度,您需要将左右边距设置为0。