我们目前正在尝试使用 Python 在 AppEngine 上将 html 文件转换为 PDF。 HTML 文件来自第三方供应商,因此我们无法控制其格式。灵活环境和标准环境都是选项,但我们走的每条路似乎都遇到了障碍:
- PDFkit 需要安装 wkhtml2pdf,没有可用的 PIP 包,但可以完美离线转换
- xhtml2pdf/PISA - 甚至可以在 GAE 标准上运行,但不支持许多功能,例如 float 和格式错误的 HTML
- WeasyPrint - 理论上 C 依赖项可以在 Flexible 环境中运行,但没有 pip 包可用于包括 Cairo 和 Pango 在内的依赖项
有没有人有一个强大的解决方案在 AppEngine 上运行,上面有任何一个?或者我缺少其他库?
我在一年前遇到了同样的问题,并得出结论认为目前这在 App Engine 中是不可能的,至少在高质量转换的情况下是不可能的。 (如果事情有变化,请有人指出)
xhtml2pdf - 我能够在标准 App Engine 中成功运行它,但对转换质量一点都不满意。
PDFkit - 遇到了类似的问题并提出了不同的解决方案。在 Compute Engine 实例上托管 PDFkit 并公开一个端点,其中带有 HTML 文件的 POST 请求将返回转换后的 PDF 作为响应。这在处理质量/速度方面给了我最好/预期的结果。
它确实产生了一些额外费用,但我也能够将该实例用于其他用途 ;)。我最初选择了尽可能少的配置,因为我没有在 Compute Engine 实例上存储任何东西。
Tôi là một lập trình viên xuất sắc, rất giỏi!