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

使用飞碟生成PDF时,标题与正文重叠

沈开畅
2023-03-14

我使用飞碟R8生成PDF文件。PDF需要一个标题,该标题将在每一页上重复。标题将由用户指定,因此我无法确定其高度。我设法使页眉在每一页上重复,但问题是,如果页眉有多行文本,它不会动态地重新调整正文的高度,最终会与正文重叠。这是我的代码:

<!DOCTYPE html>
<html>
<head>
<style>
@page {
    size: 4.18in 6.88in;
    margin: 0.25in;
    @top-center {content: element(header);}
}
#header {
    color: red;
    display: block;
    position: running(header);  
}

</style>
</head>
<body>
    <div id="header">
        <-- Lots of text here --> 
    </div>
    <div class="section">
        <-- Lots of text here -->   
    </div>
</body>
</html>

使用飞碟生成后,生成的PDF如下所示:

谁能帮我找到一个解决办法,使我的头球不与身体其他部位重叠?

共有3个答案

施振海
2023-03-14

只需尝试将边距/填充添加到您的

标题重叠,因为它与页面上的所有其他元素不同。它是在打印模式下以特殊方式处理的运行元素。因此,您必须确保,如果这些元素出现在页面的任何位置,都有足够的空间。

谭宏盛
2023-03-14

如果其他人也有同样的问题,我会找到一个不同的解决方案。

页眉和页脚是在页边距内建立的。所以解决方案是增加页顶边距,例如:

@page {
        margin-top: 50mm; 
}

此解决方案复制自以下答案:https://stackoverflow.com/a/31470840/1271573

宫亦
2023-03-14

如果其他人有这个问题,我设法找到了解决方法。要动态计算PDF中标题的大小,请忘记CSS运行的标题,而是将整个页面设置为HTML表格,并将标题放在AD部分。使用以下CSS规则使AD在每页上重复:

table {
   -fs-table-paginate: paginate;
}
 类似资料:
  • 我使用的罐子来自maven repo 我正在测试的代码来自以前的堆栈解决方案 我担心它可能过时了,因为图书馆被贬值了。测试以下代码时: 这一行我有以下错误:

  • 我正在使用飞碟生成pdf文件。我想要第一页,第二页是横向模式,其余的是纵向模式。所以,我这样做: 但是它会自动在第一个pdf文件中创建2个空白页?如何修复它?

  • 我有下面给我的html,当我把这个转换成PDF使用飞碟,它不适合A4的肖像大小。如何生成横向pdf文件。 我使用下面给定的代码将html转换为pdf

  • 我想用外部资源(jpg、css)从html创建pdf。 这是用于生成pdf File对象的代码,带有Flie Saucer和itext: 不幸的是,所有与https链接的资源都被忽略,而超文本传输协议资源运行良好。 编辑: 我扩展了iTextureAgent以拦截https调用资源,但出现了以下错误: 太阳安全供应商。证书路径。SunCertPathBuilderException:无法找到请求目

  • 我正在Spring Boot应用程序中使用Flying Discer 9.1.16 XML/CSS渲染器生成PDF。除了页面边距处的文本对齐之外,所有CSS属性都工作正常。这是我的CSS摘录: 这是HTML: 我尝试了这两种方法,但都没有成功: