我使用发现here来添加页码的示例编写了一些ReportLab代码,尤其是创建了在构建addPageNumber
方法参数时传递的build
函数。显然,该技术已在许多其他上下文中使用,但似乎几乎没有记录onFirstPage
/ onLaterPages
参数。它们显然带有一个函数,并且该函数带有两个通常称为canvas
和doc
的参数,但是为了正确注释我的代码,我需要对这种机制进行一些解释。>
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
。有人可以解释其目的是什么,对象类型是什么?当为canvas
和doc
自变量调用函数时,build方法传递的值是什么?
谢谢!
R。