【问题标题】:FLOSS/Free solution to generate PDF documents in Python?Python中生成PDF文档的FLOSS/Free解决方案?
【发布时间】:2011-06-06 05:26:21
【问题描述】:

在没有商业/受限库的情况下,在 Python 中生成嵌入字体的 PDF 文档的最简单方法是什么?

我想生成带有表格数据和页眉/页脚的文档。我尝试过reportlab,虽然功能强大,但似乎很难使用。

【问题讨论】:

    标签: python pdf pdf-generation


    【解决方案1】:

    您可以在 html 中创建文档,然后使用WKHTMLTOPDF 转换为 pdf...它是 GNU 许可的,但它是一个非常好的工具。

    【讨论】:

    • HTML+CSS 似乎总是显而易见的选择,但是页眉和页脚呢?据我了解,WebKit 在那种程度上不支持分页媒体 CSS3,是吗?我见过使用 CSS3 的独立 HTML 到 PDF 工具,但它们通常有点坏。
    • 查看手册madalgo.au.dk/~jakobt/wkhtmltopdf-0.9.9-doc.html。独立(预编译版本)确实支持页眉和页脚...
    • 这看起来很整洁。由于 WKHTMLTOPDF 属于常规 GPL 而不是 AGPL,因此当我使用独立的二进制文件时,许可证应该不是问题,对吧?
    • 是的,看起来你应该没问题,只要你使用编译好的.exe就可以了
    【解决方案2】:

    我已经使用了 PISA,并且非常非常高兴。它为您使用 reportlab。

    http://www.xhtml2pdf.com/doc/pisa-en.html

    【讨论】:

    • 我之前看过这个,注意到作者在将项目移动到 github 后没有做出任何提交。我记得在使用页眉和页脚时尝试过并遇到了奇怪的渲染错误。有我应该选择的特定版本吗?
    • @Alan:“使用页眉和页脚时出现奇怪的渲染错误”?您可能想打开另一个专门解决此问题的问题。不可能在 cmets 中讨论,这里不关注本质问题。
    • 可能会将 xhtml2pdf 与另一个库混合在一起,但我记得尝试过它,但每当我使用页眉或页脚时,都会出现不稳定的边距和填充。如果 wkhtmltopdf 不适合我,我会再试一次。这似乎表明 xhtml2pdf/pisa 有点死了:groups.google.com/group/xhtml2pdf/browse_thread/thread/…
    【解决方案3】:

    如果您希望以后能够从 PDF 中提取表格数据,请务必小心。它们需要创建为结构化内容,否则 PDF 文件中将没有表格元数据。

    【讨论】:

    • 我不太关心可提取的数据。如果现代浏览器中的分页媒体支持更好,我只会使用 CSS3 生成 HTML。我真的只是想要一些可以用来生成可打印或类似打印的文档(例如发票、报告)的东西。我在 PHP 和 Java 中使用了 FPDF,但它的字体支持很糟糕。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-15
    • 1970-01-01
    • 2023-04-06
    • 1970-01-01
    • 2020-02-23
    • 2014-06-13
    • 1970-01-01
    相关资源
    最近更新 更多