如何在PDF中添加页眉和页脚,仅在JSP中使用iText生成

时间:2012-12-11 10:25:31

标签: java jsp itext jsp-tags

我经历了很多帖子,但我没有得到任何有用的信息,因为它们都是关于在现有PDF中添加页眉和页脚。我想要的是我想在创建PDF时在运行时自动创建页眉和页脚。

我对java知之甚少,所以这些类和接口都不为我所知

我试过的是

Jsp Page

    <%

Phrase header;
PdfPTable footer;


try{

Document document = new Document(PageSize.A4, 36, 36, 54, 54);
// step 2
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("D:\\lata.pdf"));
HeaderFooter event = new HeaderFooter();
writer.setBoxSize("art", new Rectangle(36, 54, 559, 788));
writer.setPageEvent(event);//**problem: The constructor HeaderFooter() is undefined**
// step 3
document.open();
for(int i=0;i<1000;i++){
document.add(new Phrase("lata "));
}
document.close();
}catch(Exception e){
}%>

是否可以通过将代码放入JSP页面或任何其他简单的解决方案来调用该函数或使用iText创建PDF文件?我想在每个pdf页面的末尾添加图片。

1 个答案:

答案 0 :(得分:0)

回答:是否可以通过将代码放在JSP页面或任何其他简单的解决方案中来调用该函数或使用iText创建PDF文件?

要开发此代码,首先要在一个简单的java应用程序中进行,比如说

public static void main(String[] args) {
    ...
}

这是最困难的部分,特别是关于iText。

什么时候有效,

  • 将代码移植到JSP,
  • 将内容类型设置为PDF(“application / x-pdf”)。
  • 并确保%><%之间没有其他输出,
  • 输出文件数据(写入response.getOutputStream())。

或者不是立即输出PDF:

  • 重定向到网络目录中PDF的书面副本。

移植到JSP:

  1. import语句可以放在页面指令中。
  2. 全局常量和方法/函数的声明可以放在<%! ... %>
  3. 添加所需的库jar。
  4. 您需要搜索示例。


    我认为this是您的来源。要创建内部类TableHeader又名HeaderFooter:

    <%!
    class HeaderFooter extends PdfPageEventHelper {
    ...
    }
    %>