from xhtml2pdf import pisa
from io import BytesIO
def html_to_pdf(html_content):
# 创建一个字节流对象,用于存储生成的PDF内容
pdf = BytesIO()
# 使用pisa.CreatePDF函数将HTML内容转换为PDF,并保存到字节流中
pisa_status = pisa.CreatePDF(html_content, dest=pdf)
# 如果转换成功,返回PDF字节流;否则返回None
if not pisa_status.err:
return pdf.getvalue()
else:
return None
# 示例HTML内容
html_content = """
<!DOCTYPE html>
<html>
<head>
<title>Test HTML to PDF</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>This is a test of converting HTML to PDF using Python.</p>
</body>
</html>
"""
# 调用函数并打印结果
pdf_output = html_to_pdf(html_content)
if pdf_output:
with open("output.pdf", "wb") as f:
f.write(pdf_output)
else:
print("Error converting HTML to PDF")
xhtml2pdf
库来实现HTML到PDF的转换,同时使用BytesIO
来处理字节流。html_to_pdf
:该函数接收HTML内容作为参数,并将其转换为PDF格式。转换后的PDF内容被存储在一个字节流对象中。pisa.CreatePDF
函数进行HTML到PDF的转换。如果转换成功,则返回PDF的字节内容;否则返回None
。html_to_pdf
函数,并将生成的PDF内容保存到文件中。如果转换失败,则输出错误信息。希望这段代码对你有帮助!
上一篇:python pop()方法
下一篇:python 字符串比较
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站