Django-Weasyprint 图像未呈现
Django-Weasyprint image not rendered
我使用 Weasyprint 将我的 HTML 文件渲染成 PDF。但是,图像未显示。我尝试了针对此处发布的类似问题的解决方案,并重写了我的代码:
response = HttpResponse(content_type='application/pdf')
response['Content-Disposition'] = 'attachment; filename=%s.pdf' % emp_id
pdf_doc = HTML(string=render_output,base_url=request.build_absolute_uri()).render()
pdf_doc.write_pdf(response)
return response
我在我的模板中定义了 img 标签,如下所示:
<img class="logo" src="static/app/nineleaps.png" alt="Not Found">
PDF 不显示图像,而是显示 "Not Found"。
有针对这个的解决方法吗?其他 html 到 pdf 的转换器不会像这样准确地呈现我的模板,所以我更喜欢只使用 WeasyPrint 的东西。
您可能希望 base_url
成为
request.build_absolute_uri('/')
– 如果省略位置,您将获得当前请求的绝对路径,这可能不是您可以将 /static/app/nineleaps.png
附加到的内容。
如果失败,您应该可以查看 runserver
的控制台输出。 Weasyprint 尝试发出的请求(以及哪些 404)应该在那里可见...
我使用 Weasyprint 将我的 HTML 文件渲染成 PDF。但是,图像未显示。我尝试了针对此处发布的类似问题的解决方案,并重写了我的代码:
response = HttpResponse(content_type='application/pdf')
response['Content-Disposition'] = 'attachment; filename=%s.pdf' % emp_id
pdf_doc = HTML(string=render_output,base_url=request.build_absolute_uri()).render()
pdf_doc.write_pdf(response)
return response
我在我的模板中定义了 img 标签,如下所示:
<img class="logo" src="static/app/nineleaps.png" alt="Not Found">
PDF 不显示图像,而是显示 "Not Found"。 有针对这个的解决方法吗?其他 html 到 pdf 的转换器不会像这样准确地呈现我的模板,所以我更喜欢只使用 WeasyPrint 的东西。
您可能希望 base_url
成为
request.build_absolute_uri('/')
– 如果省略位置,您将获得当前请求的绝对路径,这可能不是您可以将 /static/app/nineleaps.png
附加到的内容。
如果失败,您应该可以查看 runserver
的控制台输出。 Weasyprint 尝试发出的请求(以及哪些 404)应该在那里可见...