Java 如何将动态html转换为pdf?
我想把动态html转换成pdf。以下代码显示静态html到pdf的转换:Java 如何将动态html转换为pdf?,java,html,pdf,Java,Html,Pdf,我想把动态html转换成pdf。以下代码显示静态html到pdf的转换: Document document = new Document(); // step 2 PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("d:/sample/pdfaskkea.pdf")); // step 3 document.open(
Document document = new Document();
// step 2
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("d:/sample/pdfaskkea.pdf"));
// step 3
document.open();
// step 4
XMLWorkerHelper.getInstance().parseXHtml(writer, document,new FileInputStream("webcontent/jsp/index.jsp"), null);
// XMLWorkerHelper.getInstance().parseXHtml(writer, document,new FileInputStream("C:\\pdf_table1.html"), null);
//step 5
document.close();
System.out.println( "PDF Created!" );
从您的问题来看,不清楚“动态HTML”下的含义 例如,如果它是一个用JSP动态创建的HTML,那么它提供了一个JSP自定义标记库——您只需要用PDF而不是HTML来包围代码并输出它
如果在动态HTML下,您指的是JavaScript丰富的HTML页面,我建议您看一看,它可以转换HTML,也可以使用JavaScript动态构建。PhantomJS是基于WebKit的本机独立应用程序 您可以使用itext pdf库将html转换为丰富的pdf文件。要生成动态HTML内容,可以使用类似thymeleaf的模板库
如果您感兴趣,我有一篇关于应用程序的详细文章。
XMLWorkerHelper.getInstance().parseXHtml
解析XHtml。它不执行Java服务器页面代码。因此,您需要在web应用服务器(例如Tomcat)上安装index.jsp
,然后使用用于页面的地址查询该服务器;通过这种方式,您将检索生成的Html页面,最终可以将其输入到XMLWorkerHelper
。