itext pdf:如何将元素定位在页脚上方

itext pdf : how to position element above footer

我正在尝试使用 itext 生成 pdf 文件。我需要在最后一页的页脚上方添加一个元素(段落)。我不知道如何将元素定位在那个位置。

import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Element;
import com.lowagie.text.ExceptionConverter;
import com.lowagie.text.Image;
import com.lowagie.text.Phrase;
import com.lowagie.text.Rectangle;
import com.lowagie.text.pdf.PdfPCell;
import com.lowagie.text.pdf.PdfPTable;
import com.lowagie.text.pdf.PdfPageEventHelper;
import com.lowagie.text.pdf.PdfWriter;

public class PdfHeaderDecorator extends PdfPageEventHelper
{

  public PdfHeaderDecorator()
  {
    super();
  }

  public void onEndPage(PdfWriter writer, Document document)
  {
    PdfPTable tableF = new PdfPTable(3);

    try
    {

      tableF.setWidths(new int[]
      { 24, 24, 2 });
      tableF.setTotalWidth(527);
      tableF.setLockedWidth(true);
      tableF.getDefaultCell().setFixedHeight(9);
      tableF.getDefaultCell().setBorder(Rectangle.BOTTOM);
      tableF.addCell(new Phrase("SOME Text"));
      tableF.getDefaultCell().setHorizontalAlignment(Element.ALIGN_RIGHT);
      tableF.addCell(new Phrase(String.format("page %d ", writer.getPageNumber())));
      PdfPCell cell = new PdfPCell(new Phrase("bla bla bla"));
      cell.setBorder(Rectangle.BOTTOM);
      tableF.addCell(cell);
      tableF.writeSelectedRows(0, -1, 34, 30, writer.getDirectContent());

    }
    catch (DocumentException de)
    {
      throw new ExceptionConverter(de);
    }
  }
}

并将您的 header 装饰器添加到页面事件

pdfWriter.setPageEvent(new PdfHeaderDecorator());