我想用iTextSharp创建一个发票,需要在多个页面上打印发票行(在一个表格中)。
在第一张发票页面上,“InvoiceRow表”应该从页面的一半开始。
所以,如果我通过
添加表格invoiceTable.WriteSelectedRows(0, -1, 48, 570, pdfWriter.DirectContent);
到文档,结果是一页没有分页符。
document.Add(invoiceTable);
执行Page Brakes但会在第一页的顶部添加Table。
任何想法如何在中间的第一页和页面> = 2上启动表输出?
答案 0 :(得分:1)
您是否尝试过使用MultiColumnText?
将您的表添加到MultiColumnText对象
即 mct = new MultiColumnText(yPos,MultiColumnText.AUTOMATIC); mct.AddElement(表名); Document.add(MCT);
使用值yPos,应该帮助您将发票的开头定位到第一页的一半,然后其余的应该流到下一页。
答案 1 :(得分:0)
尝试将所有内容放在一张大桌子上。有点像这样。 (为清晰起见使用HTML)
<table>
<tr>
<td>
Top Content
</td>
</tr>
<tr>
<td>
Bottom table
</td>
<tr>
</table>
然后将整个内容添加到您的文档中。