Я пытаюсь создать pdf файл из шаблона с помощью этого фрагмента:
def write_pdf(template_src, context_dict):
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 http.HttpResponse(result.getvalue(), mimetype='application/pdf')
except Exception('PDF error')
Все нелатинские символы отображаются некорректно, шаблон и представление сохраняются с использованием кодировки utf-8.
Я попытался сохранить представление как ANSI, а затем в юникод пользователя (html, "UTF-8" ), но он выдает TypeError.
Также я подумал, что, может быть, потому, что шрифты по умолчанию каким-то образом не поддерживают utf-8 поэтому согласно документации pisa я попытался установить шрифт в шаблоне в разделе стиля.
Это все еще не дало результатов.
Есть ли у кого-нибудь идеи, как решить эту проблему?