iText 7 - pdfhtml 全宽页眉/页脚

iText 7 - pdfhtml full width headers / footers

我们希望向使用 iText pdfhtml 生成的 PDF 添加全角页眉和页脚。我们已经正确生成了页眉和页脚,但是我们无法调整这些部分的大小。在进一步挖掘后,我们 运行 在这里解决了这个问题,其中每个边距框的宽度明确设置为 33%:

https://github.com/itext/i7j-pdfhtml/blob/e624c4690401f7b48d5b59b1814a74e896d7b0d9/src/main/java/com/itextpdf/html2pdf/attach/impl/layout/PageContextProcessor.java#L576

我们希望 itext 团队的某个人能够向我们指出另一种方法,可能是自定义 Tag Worker?否则,我们可以考虑协调 3 个 header/footer 框,以完成类似的事情。

这里有一些示例 css,这说明了我们正在尝试做的事情

#page-header {
   width: 8in; /* Or any width really - which is ignored */
   position: running(header);
}
@page {
   @top-center {
       width: 8in; /* Adding width here, is also ignored */
       content: element(header);
   }
}

在当前的 iText 7.1.5-SNAPSHOT / pdfHTML 2.1.2-SNAPSHOT 开发版本中添加了对首页部分自定义宽度的支持,如您的示例所示。它将在下一个 public 版本中可用。

同时,您可以暂时使用该库的开发版本。可以使用以下 Maven 配置从 iText Artifactory 访问它:

<repositories>
    <repository>
        <id>itext-snapshot</id>
        <name>iText Repository - snapshots</name>
        <url>https://repo.itextsupport.com/snapshot</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>com.itextpdf</groupId>
        <artifactId>layout</artifactId>
        <version>7.1.5-SNAPSHOT</version>
    </dependency>
    <dependency>
        <groupId>com.itextpdf</groupId>
        <artifactId>html2pdf</artifactId>
        <version>2.1.2-SNAPSHOT</version>
    </dependency>
</dependencies>