我正在尝试使用Python中的模板生成报告(可以是任何格式,只要是可打印的pdf,doc..etc)。
通常情况下,我会使用reportlab
生成PDF
报告。但这一次,我需要用户创建自己的模板(更像是一个占位符)。
因此,当用户生成报告时,存储在数据库中的数据将占用用户之前创建的占位符并形成报告。
例如,如果用户在模板中设置了标签或其他内容<name>
,则数据库中的实际名称将在准确位置替换该标签。(这只是一些愚蠢的例子来说明我的概念 - 我不知道是否可能)
我不需要任何其他复杂的功能。
最初,我考虑使用xhtml2pdf
转换html
中的创建模板,然后将其转换回pdf
。但我似乎无法找到将数据库中的值替换为html的方法。
我也研究过Mako
,但我迷失了它的文件。
还有其他方法可以实现我上面提到的功能吗?
仅供参考:我只需要Windows平台的解决方案。我正在使用Windows 8.1 64位与python 2.7.3
答案 0 :(得分:2)
我过去使用的方法是将PDF模板创建为可填写的PDF表单,生成XFDF(XML表单数据格式),并使用可将XFDF合并到PDF模板表单中的工具,以及将填充的数据展平为PDF(展平PDF表单将使用填充的数据替换表单字段)。
您可以使用Acrobat创建模板表单。
XFDF只是XML,因此可以使用任何可以生成XML的工具轻松生成。
我用于合并和展平表单的工具之一是pdftk。