保存或刷新 ReportLab 画布而不关闭

Nik*_*laj 5 python pdf pdf-generation reportlab

我有一个 ReportLab 脚本,可以生成一个大型 PDF 文件(数千页)。这是通过一个简单的 for 循环完成的,该循环为每次迭代创建一个页面。

但是,由于 canvas.save() 会关闭文件以进行进一步编辑,因此我必须等到 for 循环完成才能保存。这意味着随着 PDF 在内存中的增长,我的 Python 进程的内存使用量会膨胀到大约 250MB - 从我的应用程序的角度来看,这似乎是不必要的。

有没有办法在不关闭编辑的情况下保存或刷新 ReportLab 画布?