我想使用 Python + Flask 从 html 生成 pdf 文件。为此,我使用 xhtml2pdf。这是我的代码:
def main():
pdf = StringIO()
pdf = create_pdf(render_template('cvTemplate.html', user=user))
pdf_out = pdf.getvalue()
response = make_response(pdf_out)
return response
def create_pdf(pdf_data):
pdf = StringIO()
pisa.CreatePDF(StringIO(pdf_data.encode('utf-8')), pdf)
return pdf
在这个代码文件中是动态生成的。但!xhtml2pdf 不支持 CSS 中的许多样式,因为正确标记页面存在这个大问题。我找到了另一种乐器(wkhtmltopdf)。但是当我写了类似的东西时:
pdf = StringIO()
data = render_template('cvTemplate1.html', user=user)
WKhtmlToPdf(data.encode('utf-8'), pdf)
return pdf
引发错误:
AttributeError: 'cStringIO.StringO' object has no attribute 'rfind'
我的问题是如何在 Flask 中使用 wkhtmltopdf(动态生成文件)将 html 转换为 pdf?
提前感谢您的回答。