Creating table with 2 rows in pdf footer using itext

前端 未结 1 1082
無奈伤痛
無奈伤痛 2021-01-27 10:29

Hi I want to add footer with 2 rows. 1st row will have document name with background color. 2nd row will have copy rights notes. I tried to create using ColumnText. but I am not

相关标签:
1条回答
  • 2021-01-27 11:13

    You could have saved yourself a sleepless night by reading the documentation. You'd have discovered that you can set the background of a cell using the setBackgroundColor() method and that you can add a table at an absolute position using the writeSelectedRows() method.

    Take a look at the TableFooter example:

    PdfPTable table = new PdfPTable(1);
    table.setTotalWidth(523);
    PdfPCell cell = new PdfPCell(new Phrase("This is a test document"));
    cell.setBackgroundColor(BaseColor.ORANGE);
    table.addCell(cell);
    cell = new PdfPCell(new Phrase("This is a copyright notice"));
    cell.setBackgroundColor(BaseColor.LIGHT_GRAY);
    table.addCell(cell);
    

    If you have more than one cell in a row, you need to set the background for all cells. Note that I'm defining a total width for the table (523 is the width of the page minus the margins). The total width is needed because we'll add the table using writeSelectedRows():

    footer.writeSelectedRows(0, -1, 36, 64, writer.getDirectContent());
    

    The resulting PDF looks like this. Make sure you define the margins of your page in such a way that the footer table doesn't overlap with the page content.

    0 讨论(0)
提交回复
热议问题