如何在java中使用itext在pdf文档最后一页底部创建表
我已经使用java中的itext在pdf文档中创建了表。在功能方面工作良好。 但我需要将表格显示为下面的文档 这是我的密码如何在java中使用itext在pdf文档最后一页底部创建表,java,itext,Java,Itext,我已经使用java中的itext在pdf文档中创建了表。在功能方面工作良好。 但我需要将表格显示为下面的文档 这是我的密码 PdfPTable datatablebottom = new PdfPTable(8); PdfPCell cell = new PdfPCell(); cell.setBorder(Rectangle.NO_BORDER); cell.setColspan(8); cell.
PdfPTable datatablebottom = new PdfPTable(8);
PdfPCell cell = new PdfPCell();
cell.setBorder(Rectangle.NO_BORDER);
cell.setColspan(8);
cell.setBackgroundColor(BaseColor.GRAY);
cell.setBorderWidthTop(5.0f);
cell.setBorderColorTop(BaseColor.DARK_GRAY);
if(msgfb.equals("1")){
//document.add(new Paragraph(""));
cell.addElement(new Paragraph(""));
}else if(msgfb.equals("2")){
//document.add(new Paragraph("Thank you for your business"));
Paragraph pf = new Paragraph("Thank you for your business Thanks for your bussiness Thanks for your bussiness Thanks for your bussiness Thanks for your bussiness Thanks for your bussiness Thanks for your bussiness",BT_NORMAL);
pf.setAlignment(Element.ALIGN_CENTER);
cell.addElement(pf);
}else{
//document.add(new Paragraph(msgfb));
Paragraph pf = new Paragraph(msgfb,BT_NORMAL);
pf.setAlignment(Element.ALIGN_CENTER);
cell.addElement(pf);
//cell.addElement(new Paragraph(msgfb,BT_NORMAL));
}
cell.setPaddingBottom(10.0f);
datatablebottom.addCell(cell);
datatablebottom.setTotalWidth(PageSize.A4.getWidth()-70);
datatablebottom.setLockedWidth(true);
document.add(datatablebottom);
您需要定义表格的绝对宽度:
datatable.setTotalWidth(document.right(document.rightMargin()) - document.left(document.leftMargin()));
然后您需要更换该行:
document.add(datatablebottom);
关于这一点:
datatable.writeSelectedRows(0, -1, document.left(document.leftMargin()), datatable.getTotalHeight() + document.bottom(document.bottomMargin()), writer.getDirectContent());
writeSelectedRows()
方法在绝对位置绘制表格。我们通过询问文档
的左边距(x值)和将表格高度添加到文档的下边距(Y坐标)来计算该位置。我们绘制所有行(0到-1)。您能简要介绍一下需要如何显示吗?我已经替换了上面提到的代码。我得到的错误是“错误500表格宽度必须大于零”。我没有得到pdf页面。这个错误来自document.rightMargin()-document.leftMargin()作为zeroops,我的错,我混淆了document
方法。我会修改我的答案,但通常你理解这个概念应该没有问题。嗨,朋友,显示文档底部效果不错,但我需要增加数据表的宽度。嗨,朋友,我知道了如何增加数据表的宽度。非常感谢您的帮助me@BrunoLowagie在应用边距时有一个小错误,参见。您可能希望修复它,并在itextpdf站点上从这个答案派生出一个示例。