pisa django将汉字显示为黑色块

发布于 2024-12-23 02:15:13 字数 602 浏览 1 评论 0原文

我正在尝试使用reportlab pisa 显示汉字。生成的中文单词变成黑色块。我使用 UTF-8 生成 PDF

def render_to_pdf(template_src, context_dict):
    """Function to render html template into a pdf file"""
    template = get_template(template_src)
    context = Context(context_dict)
    html  = template.render(context)
    result = StringIO.StringIO()

    pdf = pisa.pisaDocument(StringIO.StringIO(html.encode("UTF-8")), result)
    if not pdf.err:
        return HttpResponse(result.getvalue(), mimetype='application/pdf')
    return HttpResponse('We had some errors<pre>%s</pre>' % escape(html))

I am trying to display Chinese characters using reportlab pisa. The generated Chinese words become black blocks. I am using UTF-8 to generate the PDFs

def render_to_pdf(template_src, context_dict):
    """Function to render html template into a pdf file"""
    template = get_template(template_src)
    context = Context(context_dict)
    html  = template.render(context)
    result = StringIO.StringIO()

    pdf = pisa.pisaDocument(StringIO.StringIO(html.encode("UTF-8")), result)
    if not pdf.err:
        return HttpResponse(result.getvalue(), mimetype='application/pdf')
    return HttpResponse('We had some errors<pre>%s</pre>' % escape(html))

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

半﹌身腐败 2024-12-30 02:15:13

这是一个字体问题,因为无论您需要显示什么字体,reportlabs 都无法将其嵌入到 pdf 中。

建议您检查reportlabs ftp服务器是否有您需要的字体包。

This is a font problem, as whatever font you need to display is not embeddable by reportlabs in the pdf.

Suggest you check the reportlabs ftp server for the font packages you need.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文