我使用pisa生成以下布局的一些PDF文件:
@page {
size: a4;
@frame header {
top: 5.4cm;
bottom: 4cm;
left: 1.2cm;
right: 1.2cm;
}
@frame main {
top: 10.5cm;
bottom: 4cm;
left: 1.2cm;
right: 1.2cm;
}
@frame footer {
top: 26cm;
left: 1.2cm;
right: 1.2cm;
}
}
有时主框架的内容不够短,无法容纳在单个页面中,因此它也会使用页脚框架的空间。而不是那样,我希望将剩下的文本放在第二页的主框架空间中(并保持其余框架的空间清晰)。有什么建议吗?
答案 0 :(得分:10)
比萨并不是特别容易理解。我用它来生成几种不同格式的报告。
我没有把我的主要内容放在一个框架内。它也都是英寸/字母大小,但我想准确地告诉你我的设置,并适用于多页。
可以通过为@page
或<keepinframe></keepinframe>
添加保证金来解决您的问题
标签
<document pagesize='letter'>
<head>
<title>{{ title }}</title>
<style type="text/css">
@page {
size: letter portrait;
margin: 1.0in 0.25in 0.5in 0.25in;
padding: 0;
@frame header {
-pdf-frame-content: headerContent;
width: 8in;
top: 0.5in;
margin-left: 0.5in;
margin-right: 0.5in;
height: 1.0in;
}
@frame footer {
-pdf-frame-content: footerContent;
width: 8in;
bottom: 0in;
margin-left: 2cm;
margin-right: 2cm;
height: 1cm;
}
} <!-- end of @page bracket -->
<!-- add content styles here -->
h1 { text-align: middle; font-size: 18px; }
</style>
</head>
<body>
<div id='headerContent'>
<!-- header content -->
</div>
<div>
<keepinframe>
<!-- Content -->
</keepinframe>
</div>
<div id='footerContent'>
<!-- footer content -->
<pdf:pagenumber>
</div>
</body>
</document>