从模板生成Python报告

时间:2014-04-21 08:23:23

标签: python templates python-2.7 pdf-generation report

我正在尝试使用Python中的模板生成报告(可以是任何格式,只要是可打印的pdf,doc..etc)。

通常情况下,我会使用reportlab生成PDF报告。但这一次,我需要用户创建自己的模板(更像是一个占位符)。

因此,当用户生成报告时,存储在数据库中的数据将占用用户之前创建的占位符并形成报告。

例如,如果用户在模板中设置了标签或其他内容<name>,则数据库中的实际名称将在准确位置替换该标签。(这只是一些愚蠢的例子来说明我的概念 - 我不知道是否可能)

我不需要任何其他复杂的功能。

最初,我考虑使用xhtml2pdf转换html中的创建模板,然后将其转换回pdf。但我似乎无法找到将数据库中的值替换为html的方法。

我也研究过Mako,但我迷失了它的文件。

还有其他方法可以实现我上面提到的功能吗?

仅供参考:我只需要Windows平台的解决方案。我正在使用Windows 8.1 64位与python 2.7.3

1 个答案:

答案 0 :(得分:2)

我过去使用的方法是将PDF模板创建为可填写的PDF表单,生成XFDF(XML表单数据格式),并使用可将XFDF合并到PDF模板表单中的工具,以及将填充的数据展平为PDF(展平PDF表单将使用填​​充的数据替换表单字段)。

您可以使用Acrobat创建模板表单。

XFDF只是XML,因此可以使用任何可以生成XML的工具轻松生成。

我用于合并和展平表单的工具之一是pdftk