我想将动态html转换为pdf.following代码显示静态html转换为pdf。
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!" );
答案 0 :(得分:0)
根据您的问题,目前尚不清楚,您在“动态HTML”下的含义。
如果它是使用JSP动态创建的HTML,例如,PD4ML提供了一个JSP自定义标记库 - 您只需要用代码包围代码而不是HTML。
如果在动态HTML下您指的是富含JavaScript的HTML页面,我建议您查看PhantomJS,它可以转换使用JavaScript即时构建的HTML。 PhantomJS是一个基于WebKit的本机独立应用程序。
答案 1 :(得分:0)
您可以使用 itext pdf 库将 html 转换为丰富的 PDF 文件。要生成动态 HTML 内容,您可以使用像 thymeleaf 这样的模板库。
如果您有兴趣,我有一篇关于 generating PDF files with thymeleaf in a spring boot 应用程序的详细文章。