我正在将HTML转换为PDF。PDF下载成功,但它返回空白的PDF页面不显示任何转换的内容。在我HTML文件中有Shopify CSS链接。如果转换最小内容HTML文件,则转换正确
from django.shortcuts import render from django.http import HttpResponse import pdfkit from django.conf import settings
def convert_html_to_pdf(request):方法== 'POST':rendered_template = render(request,'newundergrace.html')HTML file
options = {
'enable-local-file-access': '',
'orientation': 'landscape',
'page-size': 'Letter',
'page-size': 'A4',
'margin-top': '0',
'margin-right': '0',
'margin-bottom': '0',
'margin-left': '0',
'dpi': 96,
}
rendered_content = rendered_template.content.decode('utf-8')
pdf = pdfkit.from_string(rendered_content, False, options=options)
response = HttpResponse(content_type='application/pdf')
response['Content-Disposition'] = 'attachment; filename=output.pdf'
response.write(pdf)
return response
return render(request, 'index1.html')
字符串
2条答案
按热度按时间niwlg2el1#
为Django配置比萨不应该是too hard。
网上有几个例子向你展示了如何做到这一点,并解释了如何在你的模板中链接到外部资源:
http://www.arnebrodowski.de/blog/501-Pisa-and-Reportlab-pitfalls.html django -比萨:将图像添加到PDF输出http://antydba.blogspot.com/2009/12/django-pisa-polskie-czcionki.htmlhttp://www.20seven.org/journal/2008/11/pdf-generation-with-pisa-in-django.html
字符串
确保将'input.html'替换为HTML文件的路径,将'output.pdf'替换为生成PDF文件的所需路径。
注意:确保wkhtmltopdf可执行文件位于系统的PATH中,或者使用pdfkit的配置参数显式提供其路径。
iecba09b2#
我尝试了pdfkit,html 2 pdf和htmltopdf,但我无法将html转换为pdf。我发现weasyprint模块它为我工作。
它需要weasyprint来安装。安装可以从这里下载。HTML and CSS that can export to PDF.
安装所需模块/包
字符串
导入所需模块
型