code: protected void renderFooter(PdfWriter writer, Document document) throws DocumentException, VectorPrintException, InstantiationException, IllegalAccessException {
        if (!debugHereAfter && !failuresHereAfter) {
           PdfPTable footerTable = elementProducer.createElement(null, PdfPTable.class, getStylers(PAGEFOOTERTABLEKEY));
           
           footerTable.addCell(createFooterCell(ValueHelper.createDate(new Date())));
           
           String pageText = writer.getPageNumber() + getSettings().getProperty(" of ", UPTO);
           
           PdfPCell c = createFooterCell(pageText);
           c.setHorizontalAlignment(Element.ALIGN_RIGHT);
           footerTable.addCell(c);
           
           footerTable.addCell(createFooterCell(new Chunk()));
           footerTable.writeSelectedRows(0, -1, document.getPageSize().getLeft() + document.leftMargin(),
               document.getPageSize().getBottom(document.bottomMargin()), writer.getDirectContentUnder());
           footerBottom = document.bottom() - footerTable.getTotalHeight();
        }
     }
docs: prints a footer table with a line at the top, a date and page numbering, second cell will be right aligned
  
  @see #PAGEFOOTERTABLEKEY
  @see #PAGEFOOTERSTYLEKEY
  
  @param writer
  @param document
  @throws DocumentException
  @throws VectorPrintException