当前位置: 首页 > 面试题库 >

使用itext在pdf页脚中创建具有2行的表

许茂才
2023-03-14
问题内容

嗨,我想添加2行的页脚。第一行将具有背景颜色的文档名称。第二行将具有版权说明。我尝试使用ColumnText创建。但我无法为行设置背景颜色(仅文本获取背景颜色)。有没有实现这一目标的途径。我整夜都在寻找解决方案,但无法解决。


问题答案:

您可以通过阅读文档来节省一个不眠之夜。您已经发现可以使用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看起来像这样。确保以页脚表与页面内容不重叠的方式定义页面的页边距。



 类似资料:
  • 我在Android日食中使用 itext 创建 pdf 时遇到问题 如果给定了引导入口,我无法创建pdf,在我的情况下是Android 5.0.1。如果我删除了bootstrap条目,我可以创建pdf,但不能启动活动,因为android 5.0.1包含android jar。你能告诉我如何解决这个问题吗?同样,如果我把它变成一个非活动类,我希望能够在另一个活动类中创建一个非活动类的对象,这样我就可

  • null 有人能解释一下,当我使用PdfReader阅读模板后,我如何制作模板的副本吗?有没有办法把表格写到模板副本上,而不是一个新文档上? 为了将来的参考,我做了以下工作:

  • 我正在开发一个web应用程序,并试图使用它的文本创建一个pdf文档。 当我得到一个路径(本地和服务器上)时,它工作得很好,但我知道我需要在不实际创建它的情况下完成它。 我不想要的:PdfCopy copy=newpdfcopy(documentPDF,newfileoutputstream(mypath)) 我想要的是://PdfCopy copy=new PdfCopy(documentPDF,

  • 问题内容: 我们正在寻找替代方法,以替代当前通过小程序在Java Web应用程序中打印支票的方式。似乎共识是使用PDF进行打印,而itext提供了使用Java进行打印的功能。 但是 ,在我们的特殊情况下,支票是“仅打印”的,这一点很重要- 用户在应用程序中不应该具有保存支票的任何能力(我知道精明的用户可以做一个PrintScreen,但我们想遮盖住后盖,在应用程序中不进行任何本机功能来保存支票)。

  • 问题内容: 在我的pdf文件中,我需要有多个页眉和页脚。在页眉中,我希望标题标题位于左侧,而某些文本位于中心。 同样,在页脚中,我需要在左侧打印公司名称,在中心打印页码,并在右侧打印有关表格内容的一些信息。 我看过很多文章,但是我没有正确的想法来创建它,有人请帮助我提供一些示例代码片段。 问题答案: 页眉和页脚应使用“页面事件”添加。如果您需要一些示例,只需在官方网站上查找关键字header /

  • 我用iText创建了一个pdf,我想打开它,但是当我这样做时,Adobe阅读器说我“打开文档时出错。此文件已打开或由其他应用程序使用“。我该如何解决? 这是我的代码(抱歉休斯顿println异常;)):