首页 > 解决方案 > HTML 到 PDF 还保留了 Django 中的 CSS 和引导样式

问题描述

我正在尝试按照此 GitHub 教程链接在Django中将HTML页面呈现为 PDF 。

我的意见.py

def fetch_resources(uri, rel):
    path = os.path.join(settings.MEDIA_ROOT, uri.replace(settings.MEDIA_URL, ""))
    return path

def render_to_pdf(template_src, context_dict={}):
    template = get_template(template_src)
    html  = template.render(context_dict)
    result = BytesIO()
    pdf = pisa.pisaDocument(BytesIO(html.encode("ISO-8859-1")), result)
    if not pdf.err:
        return HttpResponse(result.getvalue(), content_type='application/pdf')
    return None
    
    
class ViewPDF(View):
    def get(self, request, *args, **kwargs):
        pdf = render_to_pdf('app/pdfpage.html', data)
        return HttpResponse(pdf, content_type='application/pdf')


#Automaticly downloads to PDF file
class DownloadPDF(View):
    def get(self, request, *args, **kwargs):

        pdf = render_to_pdf('app/pdfpage.html', data)

        response = HttpResponse(pdf, content_type='application/pdf')
        filename = "Invoice_%s.pdf" %("12341233")
        content = "attachment; filename='%s'" %(filename)
        response['Content-Disposition'] = content
        return response

但是,我几乎从该教程链接中复制了除pdfpage.html之外的所有代码,我将自定义的 HTML 页面放在那里,还带有引导程序和 CSS 样式。现在我的问题是在转换和保存这个 pdf 之后,它丢失了所有的样式和引导样式的东西,但这些对我来说也很重要。我怎么解决这个问题?

标签: pythonhtmldjangobootstrap-4

解决方案


推荐阅读