本文整理汇总了Python中reportlab.lib.sequencer.Sequencer.nextf方法的典型用法代码示例。如果您正苦于以下问题:Python Sequencer.nextf方法的具体用法?Python Sequencer.nextf怎么用?Python Sequencer.nextf使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类reportlab.lib.sequencer.Sequencer
的用法示例。
在下文中一共展示了Sequencer.nextf方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: RLDocTemplate
# 需要导入模块: from reportlab.lib.sequencer import Sequencer [as 别名]
# 或者: from reportlab.lib.sequencer.Sequencer import nextf [as 别名]
class RLDocTemplate(BaseDocTemplate):
def afterInit(self):
self.addPageTemplates(FrontCoverTemplate("Cover", self.pagesize))
self.addPageTemplates(TOCTemplate("TOC", self.pagesize))
self.addPageTemplates(OneColumnTemplate("Normal", self.pagesize))
self.addPageTemplates(TwoColumnTemplate("TwoColumn", self.pagesize))
self.seq = Sequencer()
def beforeDocument(self):
self.canv.showOutline()
self.title = "(Document Title Goes Here)"
self.chapter = "(No chapter yet)"
self.seq.reset("section")
self.seq.reset("chapter")
def afterFlowable(self, flowable):
"""Detect Level 1 and 2 headings, build outline,
and track chapter title."""
if isinstance(flowable, Paragraph):
style = flowable.style.name
txt = flowable.getPlainText()
if style == "Title":
self.title = txt
elif style == "Heading1":
self.chapter = txt
key = "ch%s" % self.seq.nextf("chapter")
self.canv.bookmarkPage(key)
self.canv.addOutlineEntry(txt, key, 0, 0)
self.seq.reset("section")
self.notify("TOCEntry", (0, txt, self.page, key))
elif style == "Heading2":
self.section = flowable.text
key = "ch%ss%s" % (self.seq.thisf("chapter"), self.seq.nextf("section"))
self.canv.bookmarkPage(key)
self.canv.addOutlineEntry(txt, key, 1, 0)
self.notify("TOCEntry", (1, txt, self.page, key))