1. 产品
  2.   转换
  3.   Python
  4.   xhtml2pdf
 
  

开源 Python HTML 到 PDF 转换库

尝试这个免费的开源 Python 库将 HTML 转换为 PDF 文档。

什么是 xhtml2pdf?

Xhtml2pdf 是一个开源 Python 库,旨在将 HTML 内容转换为 PDF 文档,主要侧重于保留原始结构和样式。这个功能强大的库可以将网页无缝转换为专业的可打印 PDF。

GitHub

GitHub 统计

姓名:
语言:
星星:
叉子:
执照:
存储库上次更新于

开始使用 xhtml2pdf

您需要 Python 版本 3.8.0 或更高版本才能安装和使用 xhtml2pdf。因此,首先安装 Python,然后使用以下命令通过 pip虚拟环境 在您的机器上安装 xhtml2pdf。

Linux


python -m venv env
. env/bin/activate
pip install xhtml2pdf

苹果系统


python -m venv env
. env/bin/activate
pip install xhtml2pdf

视窗


python -m venv env
.\env\Scripts\activate
pip install xhtml2pdf

将 HTML 字符串转换为 PDF 文档

我们可以使用 xhtml2pdf 库将 HTML 字符串转换为 PDF 文档。我们将完整的 HTML 内容存储在一个变量中,然后将该变量传递给函数 pisa.CreatePDF(html_content, dest, encoding)。此方法为我们提供了 PDF 内容,其中超链接、图像和其他元素在我们传递给它的 BytesIO 对象中管理。最后,我们使用存储在 BytesIO 对象中的数据创建一个 PDF 文件。查看以下代码片段了解详细信息:

输出

下面的截图显示了从 HTML 字符串转换而来的 PDF 文档:

将 HTML 文件转换为 PDF 文档

我们还可以使用 xhtml2pdf 库将 HTML 文件转换为 PDF。我们将 HTML 文件内容读入变量,然后将该变量传递给 pisa.CreatePDF(html_content, dest, encoding) 方法。之后,我们按照上一个示例中分享的相同步骤,使用 BytesIO 对象创建 PDF 文档,如以下代码片段所示:

输出

下面的截图显示了从 HTML 文件转换而来的 PDF 文档:

结论

总而言之,xhtml2pdf 是一个开源 Python 库,可将 HTML 转换为 PDF 文档,同时处理超链接、图像和外部样式表。xhtml2pdf 在将 HTML 转换为 PDF 时不包含前端库,因此当 HTML 中有变量(如 {{name}})时,它们会完全按照 HTML 中所写的方式出现在 PDF 中,而不是显示它们的实际值。

此外,它不支持依赖 JavaScript 获取内容的动态页面,并且不遵循复杂的 CSS 指定布局(例如,它应用 CSS 中提到的颜色、字体大小等,但忽略布局 CSS,如填充、边距、显示等)。尽管存在这些限制,xhtml2pdf 仍然是满足直接静态 HTML 到 PDF 转换需求的宝贵工具。

类似产品

 中国人