在使用 ReportLab 中的 MyDocTemplate 创建 多页PDF 文件时,如何生成一页内容,一页空白,如何添加PageBreak?
时间: 2023-02-09 14:25:56 浏览: 173
在使用 ReportLab 的 MyDocTemplate 创建多页 PDF 文件时,可以使用 SimpleDocTemplate 类中的 addPageTemplates() 方法来添加页眉页脚和页面样式。
要在 PDF 中添加一页内容和一页空白,可以使用 Paragraph 或 Spacer 类分别添加内容和空白。
例如:
```python
from reportlab.lib.pagesizes import A4
from reportlab.lib.styles import getSampleStyleSheet
from reportlab.platypus import Paragraph, SimpleDocTemplate, Spacer
doc = SimpleDocTemplate("mypdf.pdf", pagesize=A4)
styles = getSampleStyleSheet()
# add content
doc.build([Paragraph("This is the first page", style=styles["Normal"])])
# add a page break
doc.build([Spacer(1, 12)])
# add content
doc.build([Paragraph("This is the second page", style=styles["Normal"])])
```
另外,你也可以使用 `PageBreak()` 来实现换页.
例如:
```python
from reportlab.platypus import PageBreak
doc.build([Paragraph("This is the first page", style=styles["Normal"]), PageBreak(), Paragraph("This is the second page", style=styles["Normal"])])
```
顺便提醒,在最后,需要调用 `doc.save()` 方法来保存文件
阅读全文