2012-04-25 104 views
1

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

我可以使用画布渲染它,但然后它出现在每一页上 - 有没有人有建议最好的方法来解决这个问题?

感谢

回答

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 ...

+0

我只是提到* pagesize ...或者我应该用一个值替换它? – DeadDjangoDjoker 2015-06-30 15:23:04

+1

我认为pagesize应该是一个'tuple' IIRC。它是(宽度,高度)。可以是常数之一。 – jadkik94 2015-06-30 20:22:11

相关问题