iText 5页眉和页脚

我如何在我的PDF页面中添加页眉页脚 ? 我想要一个在标题和其他表格中有3列的表格,页脚中有3列。 我的页面可以是A3或A4,也可以是横向或纵向。

谁能帮我? 我在互联网上找不到好的例子。

谢谢!

托马索

  1. 创建一个扩展PdfPageEventHelper的类MyPageEventListener
  2. 向PdfWriter对象添加页面事件侦听器
  3. 在MyPageEventListener类的onEndPage方法中,放置页眉/页脚的代码

例:

public class MyPageEventListener extends PdfPageEventHelper { . . . @Override public void onEndPage(PdfWriter writer, Document document) { //code skeleton to write page header PdfPTable tbl = new PdfPTable(3); tbl.addCell("1st cell"); tbl.addCell("2nd cell"); tbl.addCell("3rd cell"); float x = document.leftMargin(); float hei = getMyHeaderHeight(); //custom method that return header's height //align bottom between page edge and page margin float y = document.top() + hei; //write the table tbl.writeSelectedRows(0, -1, x, y, writer.getDirectContent()); } } 

注册听众只是做

 writer.setPageEvent(new MyPageEventListener()); 

最简单的方法是首先在内存中生成整个PDF的内容,然后在创建所有页面后,您需要在pdfStamper中打开内存中的PDF并遍历页眉和页脚中添加的所有页面对象是正确的坐标。

如果你快速谷歌搜索在itextPDF中添加页码,你会发现一些例子,你可以快速适应你的需要。

关键是它是在你创建pdf之后完成的,而不是之前完成的。