首页 > 解决方案 > iText 7 - pdfhtml 全宽页眉/页脚

问题描述

我们希望为使用 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 个页眉/页脚框,以完成类似的事情。

这是一些示例 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);
   }
}

标签: javaitext7pdfhtml

解决方案


在当前的 iText 7.1.5-SNAPSHOT/ pdfHTML2.1.2-SNAPSHOT开发版本中,已在您的示例中添加了对首页部分中的自定义宽度的支持。它将在下一个公开版本中提供。

同时,您现在可以使用该库的开发版本。可以使用以下 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>

推荐阅读