添加整页图像作为reportlab的最后一页

时间:2012-04-25 17:00:18

标签: python reportlab

我有一个pdf,我用reportlab生成。我使用SimpleDocTemplate渲染文档前n页完全相同,但最后一页是完全不同的(格式和内容),包含应该占据整个页面的图像。将图像添加为Flowable元素时,我得到一个越界错误,因为它对于定义的页面边界来说太大了。

我可以使用画布将其渲染得很好但是它会出现在每一页上 - 是否有人建议采用最佳方法来解决这个问题?

由于

1 个答案:

答案 0 :(得分:2)

如果您知道最后一页编号:

def onLaterPages(self, doc, canvas):
    if doc.page == TOTAL_PAGES:
        canvas.saveState()
        canvas.drawImage(filename, 0, 0, *pagesize)
        canvas.restoreState()

# and when calling doc.build
doc.build(..., onLaterPages=onLaterPages)

如果您不知道总页码,请查看this,但我认为他们没有使用SimpleDocTemplate ......