有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java将HTML转换为带有页眉和页脚的PDF

我们有页眉和页脚字符串作为HTML内容类型,但如何在每个页面上附加这两个字符串。 在下面的java方法中,我们传递三个参数htmlcontent、HeaderContent、FooterContent和返回用html创建的页面数,但是我们必须将页眉和页脚内容附加到哪里

public static int generatePDF(String strFileName, String htmlContent,String headerHtml,String footerHtml) throws PDFNetException {
  PDFDoc doc = new PDFDoc();
  HTML2PDF converter = new HTML2PDF();
  int nPages = 0;
  try {
      converter = new HTML2PDF();
      doc = new PDFDoc();
      converter.insertFromHtmlString(htmlContent);
      try {
            if (converter.convert(doc)) {
                  doc.save(strFileName, SDFDoc.e_linearized, null);
                  nPages = doc.getPageCount();
                }
            } catch (Exception ex) {
                ex.printStackTrace();
            }
        } catch (Exception e) {
            ex.printStackTrace();
        } finally {
            converter.destroy();
            doc.close();
    }
    return nPages;
}

共 (1) 个答案

  1. # 1 楼答案

    一个选项是使用Stamper类对PDF进行后期处理,以添加页眉/页脚

    有关如何使用Stamper调用,请参见以下示例代码 https://www.pdftron.com/documentation/samples/#stamper

    HTML2PDF转换器将页面附加到传入的PDFDoc对象,因此您可以执行以下操作

    call HTML2PDF.InsertFromURL(url)
    call HTML2PDF.Convert(pdfdoc) 
    run Stamper on pages x-y stamp
    

    重复以上步骤,将页面添加到pdfdoc