java – 使用Flying Saucer生成PDF时,标题与正文重叠
作者:互联网
我正在使用Flying Saucer 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>
使用Flying Saucer生成后生成的PDF如下所示:
任何人都可以帮我找到一个解决方案,我的头部不要与身体的其他部分重叠?
解决方法:
如果其他人遇到此问题,我设法找到了解决方法.要动态计算PDF中标题的大小,请忘记CSS运行标题,而是将整个页面设为HTML表格,并将标题放在thead部分.使用以下CSS规则使每个页面上的thead重复:
table {
-fs-table-paginate: paginate;
}
标签:java,flying-saucer 来源: https://codeday.me/bug/20190831/1773347.html