【问题标题】:Creating table with 2 rows in pdf footer using itext使用 itext 在 pdf 页脚中创建 2 行的表格
【发布时间】:2014-04-03 01:25:42
【问题描述】:

您好,我想添加 2 行的页脚。第一行将具有带有背景颜色的文档名称。第二行将有版权说明。我尝试使用 ColumnText 创建。但我无法为行设置背景颜色(只有文本获取背景颜色)。有没有办法做到这一点。我整晚都在寻找解决方案,但无法做到。

【问题讨论】:

    标签: java pdf pdf-generation itext footer


    【解决方案1】:

    您可以通过阅读文档来挽救自己一个不眠之夜。您会发现可以使用setBackgroundColor() 方法设置单元格的背景,并且可以使用writeSelectedRows() 方法在绝对位置添加表格。

    看看TableFooter的例子:

    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);
    

    如果一行中有多个单元格,则需要为所有单元格设置背景。请注意,我正在定义表格的总宽度(523 是页面宽度减去边距)。总宽度是必需的,因为我们将使用writeSelectedRows() 添加表格:

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

    生成的 PDF 看起来像 this。确保以页脚表格不与页面内容重叠的方式定义页面的边距。

    【讨论】:

      猜你喜欢
      • 2012-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-04
      • 1970-01-01
      • 2014-03-30
      相关资源
      最近更新 更多