[reportlab-users] Re: reset page numbers
Robin Becker
robin at reportlab.com
Wed Apr 19 12:08:28 EDT 2006
David S. wrote:
> Robin Becker <robin <at> reportlab.com> writes:
>
>> Therefore I suggest you consider a combination of a flowable which sets
>> a flag when rendered and then the beforePage method of the pageTemplate
>> can choose to reset the canvas._pageNumber.
>
> Thank you for your help. Here is a solution that works for me:
>
> class PageNumberOne(Flowable):
> def draw(self):
> pass
>
> class FsiDocTemplate(SimpleDocTemplate):
> "resets page number"
> def afterFlowable(self, flowable):
> if isinstance(flowable, Receipt.PageNumberOne):
> self.canv._pageNumber = 0
>
> ...
> Then I add to my story a PageNumberOne and a reportlab.platypus.PageBreak to
> start a new section with page number at 1.
>
...... that works fine if you're not trying to use the pageNumber in a document
level method eg DocTemplate.afterPage or PageTemplate.afterDrawPage/onPageEnd
where the afterFlowable method would have already changed the pageNumber to zero.
--
Robin Becker
More information about the reportlab-users
mailing list