非常轻量级的PDF报告生成
zipreport的Python项目详细描述
前置
非常轻量级的模块,用于使用Python创建PDF报告
动机
这个库是用来替代我用Filemaker Pro和
操作原理与Filemaker Pro上的打印布局基本相同。你,客户,有一份清单
有序记录,可以是任何可订阅的东西,但在我的示例中是dicts
,这些记录被输入
您创建和自定义的Document
对象,该对象确定每个记录中字段的格式和
页眉和页脚以及摘要页眉和页脚的格式。在
示例
在example中,您可以看到如何自定义基本报表。所有格式都是
包含在一个Document
对象中,根据特定的
条件。在每页的顶部和底部绘制page_header
和{
要打印的每条记录都显示在content_part
中:
content_part=Part(elements=[Element(x=0.,y=0.,width=72.,height=18.,content=FormattedText("N:$name",font_family='Futura',font_size=9.)),Element(x=96.,y=0,width=72.*4.,height=4.*72.,can_shrink=True,content=FormattedText("$comment",font_family='Futura',font_size=9.)),Element(x=72.*6,y=0.,width=36,height=18,content=FormattedText("$rn",font_family='Futura',font_size=9.,alignment='r'))],minimum_height=72.)
一个Part
包含一个Element
对象的列表,这些对象定义一个矩形(相对于原点定位,
父元素Part
)的左上角,每个元素都有一个对应的Content
。Content
对象包含特定的样式和内容。FormattedText
内容有一个格式字符串,它可以
替换内容对象中的值。例如,第一个元素从
内容对象,并将其替换为格式字符串。在
在建
这个项目还在建设中,但功能基本。在
- 项目
标签: