了解Platypus构建方法中的onFirstPage / onLaterPages

时间:2019-04-03 18:48:21

标签: python reportlab platypus

我使用发现here来添加页码的示例编写了一些ReportLab代码,尤其是创建了在构建addPageNumber方法参数时传递的build函数。显然,该技术已在许多其他上下文中使用,但似乎几乎没有记录onFirstPage / onLaterPages参数。它们显然带有一个函数,并且该函数带有两个通常称为canvasdoc的参数,但是为了正确注释我的代码,我需要对这种机制进行一些解释。

def addPageNumber(canvas, doc):
    page_num = canvas.getPageNumber()
    text = "Page #%s" % page_num
    canvas.drawRightString(200*mm, 20*mm, text)

doc.build(Story, onFirstPage=addPageNumber, onLaterPages=addPageNumber)

尽管我总是看到canvas对象作为所有代码示例中使用的第一个参数传递,但似乎从未使用过doc。有人可以解释其目的是什么,对象类型是什么?当为canvasdoc自变量调用函数时,build方法传递的值是什么?

谢谢!

R。

0 个答案:

没有答案