要在Weasyprint中添加页眉和页脚,您可以使用CSS的@page规则。以下是一个示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Weasyprint示例</title>
<style>
@page {
size: A4;
margin: 2cm;
@top-center {
content: "页眉内容";
}
@bottom-center {
content: "页脚内容";
}
}
body {
margin: 0;
}
.content {
page-break-after: always;
text-align: center;
padding: 2cm;
}
</style>
</head>
<body>
<div class="content">
<h1>第一页</h1>
<p>这是第一页的内容。</p>
</div>
<div class="content">
<h1>第二页</h1>
<p>这是第二页的内容。</p>
</div>
<div class="content">
<h1>第三页</h1>
<p>这是第三页的内容。</p>
</div>
</body>
</html>
在上面的示例中,@page规则用于定义页面的大小和页边距,并使用@top-center和@bottom-center规则添加页眉和页脚的内容。
另外,使用.page-break-after属性可以指定在每个内容块之后进行分页。
在这个示例中,我们将每个内容块定义为具有.page类的div元素,并使用.page-break-after: always属性来确保在每个内容块之后都进行分页。
请注意,Weasyprint可以将HTML转换为PDF或打印的格式。您可以使用Weasyprint的Python库来将上述示例代码保存为HTML文件,并使用Weasyprint将其转换为PDF:
from weasyprint import HTML
HTML('your_html_file.html').write_pdf('output.pdf')
这将生成一个名为output.pdf的PDF文件,其中包含了页眉、页脚和分页。