从HTML创建自动化严格设计的多页PDF报告

20

有哪些基于Python的好选择可以从HTML创建严格设计的PDF报告?

我附上了一份初稿PDF,以说明以下几点:

  • 报告的设计相当严格。换句话说,“外观很重要”。
  • 报告包含复杂的矢量图形(软件包:Matplotlib)。这些可能在大小上略有不同。
  • 报告包含图片。
  • 报告包含大量动态填充的数字/字符串。
  • 最理想的情况是使用开源软件包。
  • 我们使用Django创建我们的HTML。
  • 报告可能跨越多个页面。

看起来已经有许多非常不同的软件包可用于报告。仅举几例,有xhtml2pdf, weasyprint, django-wkhtmltopdf等。

在我的经验中,使用这些工具可以轻松地从您的内容创建PDF。但是,在我们的情况下,当PDF需要符合高度定义的设计结构时,难点就出现了。不幸的是,我找不到不同PDF生成包的示例PDF,这些PDF具有高度设计的结构。
您对此有何经验?哪些选项对您有效?是否有我忽略的复杂示例?

Some example of a strictly-designed "Looks matter" report


您可能还想考虑一下reportlab - ImportanceOfBeingErnest
2个回答

10

6
我最近使用了Weasyprint和Jinja来从HTML中生成自动报告。它表现良好,我相信可以满足您的严格格式要求。不过,我没有使用过其他工具。
我的报告包括图片,包括转换为图像的图形,普通的动态生成文本以及大型表格,这些内容都限制在9x11页大小内。Weasyprint会自动完成分页,但也可进行配置。
我发现这个指南非常有用:http://pbpython.com/pdf-reports.html 虽然我认为Pandas对于生成图表的HTML来说过于复杂冗余,这样做会损失很多可配置性。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接