[英]Drawing a horizontal line to the table at the end of page in iText?
我正在使用iText创建表。 每个表都有2列,并且除了表的最左侧,最右侧,最顶部和最底部外,没有边框。 我能够实现,但是新页面开始时会出现问题。 我希望在页面末尾向表绘制一条水平线,并在它开始时绘制另一条水平线。 我尝试使用
@Override
public void onEndPage(PdfWriter arg0, Document arg1) {
PdfPCell pdfpcells[] = pdfptable.getRow(pdfptable.getRows().size()-1).getCells();
pdfpcells[0].setBorderWidthBottom(0.5f);
if(pdfpcells[1] != null){ //There is a possibility that there are odd number of elements
pdfpcells[1].setBorderWidthBottom(0.5f);
}
}
用于在页面末尾绘制水平线,假设每次页面结束时都会调用此函数,因此将使用当前行数。 pdfptable声明为类变量。 这似乎不起作用。 我正在使用最新版本的iText。 谢谢。
您可以发布构造表的代码吗? 您是否每页打印一个页面,还是依靠PdfPTable的自动拆分功能?
下面的代码应该可以解决问题:
PdfPCell pdfPCells[] = table.getRow(table.getRows().size() - 1).getCells();
for (PdfPCell pdfPCell : pdfPCells) {
pdfPCell.setBorder(PdfPCell.BOTTOM);
}
如您所见,如果仅使用for-each循环,则无需担心数组中元素的数量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.