当前位置: 首页 > 知识库问答 >
问题:

使用带有动态标题的itext7将HTML模板转换为PDF

南门祯
2023-03-14

我曾尝试使用下面的HTML模板使用iText7将其转换为PDF,但页眉和页脚都没有绑定到它们的预期位置。举个例子,我试图避免@Page header和footer属性,因为我试图在两个部分中完成动态内容的匹配,每个部分的扩展空间超过3行。

iText代码和结果:

ConverterProperties properties = new ConverterProperties();
//properties.setFontProvider(fontProvider);
properties.setMediaDeviceDescription(new MediaDeviceDescription(MediaType.PRINT));
PdfWriter writer = new PdfWriter("out.pdf");
PdfDocument pdf = new PdfDocument(writer);
pdf.setTagged();
PageSize pageSize = PageSize.LETTER;
pdf.setDefaultPageSize(pageSize);

OutlineHandler outlineHandler = OutlineHandler.createStandardHandler();
properties.setOutlineHandler(outlineHandler);

//html template (templateOutput)
HtmlConverter.convertToPdf(templateOutput, pdf, properties);
byte[] pdfData = byteArrayOutputStream.toByteArray();
pdf.close();

有什么解决问题的建议吗?谢谢

共有1个答案

闽涵蓄
2023-03-14

下面是一个由pdfHTML正确处理的HTML示例,多行标题按预期完全显示在页面顶部:

<!DOCTYPE html>
<html>

<head>
    <style>
        #header {
            position: running(header);
        }

        @page {
            margin-top: 100px;
            @top-center {
                content: element(header);
            }
        }
    </style>
</head>

<body>

<div id="header">Header line 1<br/>Header line 2<br/>Header line 3</div>

<p>Content of the page</p>

</body>
</html>

页面在生成的PDF中显示如下:

 类似资料:
  • 我已经搜索了这些问题,但没有找到解决我的具体问题的方法。我需要做的是将包含图像和CSS样式的HTML文件转换为PDF。我正在使用iText5,并且已经能够将样式包含到生成的PDF中。但是,包括图像在内,我还在挣扎。我在下面包含了我的代码。具有绝对路径的图像包含在生成的PDF中,具有相对路径的图像不包含在生成的PDF中。我知道我需要实现AbstractImageProvider,但我不知道如何实现。

  • 我一直在研究为什么我生成的toc中的页码在最新(3.0.3)版本的htmlpdf上不起作用——尽管发布说明中说现在支持这一点。 魔鬼在细节中,正如例子(https://kb.itextpdf.com/home/it7kb/examples/pdfhtml-support-for-generating-cross-references-for-toc-creation-with-target-cou

  • 为了将html转换为pdf,我使用了IText7的API convertToDocument,传递参数模板的ByteArrayInputStream、PDFDocument和ConvertProperties。 相关代码段: “PDF间接对象属于其他PDF文档。请将对象复制到当前PDF文档。” 转换属性的创建 在每次调用convertToDocument API之前创建对象 我是不是漏掉了什么?

  • 我使用iText 2.1.7的飞碟将。它工作正常,但当html中有一些中文、韩文等字符时,就会出现问题。 我的PDF中出现意外字符,而不是正常的中文字符 我发现这个问题是公开的,所以我认为目前没有办法让飞碟正确地渲染PDF? PS:我也发现了这个问题,但我无法理解他们提供的解决方案。 这是我正在使用的代码 其中file是我试图转换的html。 有没有其他方法或库可以做同样的事情? 这是我正在使用的

  • 问题内容: 我是一名PHP开发人员,在我的一个项目中,我需要将一些HTML文档(大约30至50页)转换为PDF文档。 我的搜索找到了以下可能的解决方案。其中包括一些PHP库和一些命令行应用程序。每种都有自己的优点和缺点。 PHP库: fpdf(需要更多的转换努力) tcpdf(需要更多的转换努力) html2fpdf http://html2fpdf.sourceforge.net html2pd

  • 问题内容: 如何使用Python将PDF文件转换为HTML? 我只是在想Google会(或似乎会)对PDF文件建立索引的行为。 我的最终目标是设置Apache以显示PDF文件的HTML,因此,向该方向发展的任何事情也将不胜感激。 问题答案: 该poppler的包提供了一个实用PDF2HTML您可能能够使用。还有一个Python绑定到libpoppler。