当前位置: 首页>>代码示例>>Python>>正文


Python SimpleDocTemplate.setPageCallBack方法代码示例

本文整理汇总了Python中reportlab.platypus.doctemplate.SimpleDocTemplate.setPageCallBack方法的典型用法代码示例。如果您正苦于以下问题:Python SimpleDocTemplate.setPageCallBack方法的具体用法?Python SimpleDocTemplate.setPageCallBack怎么用?Python SimpleDocTemplate.setPageCallBack使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在reportlab.platypus.doctemplate.SimpleDocTemplate的用法示例。


在下文中一共展示了SimpleDocTemplate.setPageCallBack方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: draw_table

# 需要导入模块: from reportlab.platypus.doctemplate import SimpleDocTemplate [as 别名]
# 或者: from reportlab.platypus.doctemplate.SimpleDocTemplate import setPageCallBack [as 别名]
def draw_table(context, pagesize):
    from reportlab.platypus.doctemplate import SimpleDocTemplate
    from reportlab.platypus import Table, TableStyle, Paragraph
    from reportlab.lib import colors
    from canvas import Canvas

    if OUT2PDF:
        from reportlab.pdfgen.canvas import Canvas

        context = "alabala.pdf"

    data = []
    for i in range(3):
        row = []
        for j in range(3):
            row.append(str(i) + str(j) + unicode("bp", "cp1251"))
        data.append(row)

    widths = [20, None, None]
    table = Table(data, colWidths=widths)

    if 1:
        style = TableStyle(())

        from reportlab.pdfbase.ttfonts import TTFont
        from reportlab.pdfbase import pdfmetrics
        from reportlab import rl_config

        rl_config.T1SearchPath.insert(0, "/usr/share/fonts/X11/Type1/")
        pdfmetrics.dumpFontData()

        # pdfmetrics.registerFont( TTFont('TIMES', 'Verdana.ttf'))

        fontname = "CharterBT-Roman"
        pdfmetrics.findFontAndRegister(fontname)

        style.add("FONTNAME", (0, 0), (-1, -1), fontname, 84)
        style.add("FONTSIZE", (0, 0), (-1, -1), 24)
        style.add("LEADING", (0, 0), (-1, -1), 24)
        style.add("BOX", (0, 0), (-1, -1), 0.25, colors.black)
        style.add("INNERGRID", (0, 0), (-1, -1), 0.25, colors.black)
        # style.add('LINEABOVE', (0,1), (-1,-1), 0.25, colors.black)
        style.add("LINEBELOW", (0, -1), (-1, -1), 2, colors.green)

        style.add("LEFTPADDING", (0, 0), (-1, -1), 0)
        style.add("RIGHTPADDING", (0, 0), (-1, -1), 0)
        style.add("BOTTOMPADDING", (0, 0), (-1, -1), 0)
        style.add("TOPPADDING", (0, 0), (-1, -1), 0)

        table.setStyle(style)

    story = 3 * [table]

    doc = SimpleDocTemplate(filename=context, pagesize=pagesize)
    if not OUT2PDF:
        doc.setPageCallBack(getattr(context, "new_page", None))
    doc.build(story, canvasmaker=Canvas)
开发者ID:svilendobrev,项目名称:rl2wx,代码行数:59,代码来源:test.py

示例2: make_pagerecorder

# 需要导入模块: from reportlab.platypus.doctemplate import SimpleDocTemplate [as 别名]
# 或者: from reportlab.platypus.doctemplate.SimpleDocTemplate import setPageCallBack [as 别名]
def make_pagerecorder( story, pagesize =None, **kargs):
    from reporter.engine.rl2wx.page_recorder import PageRecorder
    from reporter.engine.rl2wx.canvas import Canvas as wxCanvas
    from reportlab.platypus.doctemplate import SimpleDocTemplate
    page_recorder = PageRecorder( pagesize)
    doc = SimpleDocTemplate( filename=page_recorder, pagesize=pagesize, **kargs)
    doc.setPageCallBack( getattr( page_recorder, 'new_page', None))
    doc.build( list(story), canvasmaker=wxCanvas)
    page_recorder.debug_doc = doc
    return page_recorder
开发者ID:svilendobrev,项目名称:reporter,代码行数:12,代码来源:wx_view.py


注:本文中的reportlab.platypus.doctemplate.SimpleDocTemplate.setPageCallBack方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。