2012-08-29 52 views
0

我想将本地HTML转换为PDF,但是HTML文档具有非ASCII字符,最终在PDF中损坏。为什么pisa不适用于所有UTF-8字符?python比萨utf8问题

with open('file.html') as m: 
    data = m.read() 
    m.close()   
    pisa.CreatePDF(data, file('final.pdf', 'w')) 
+0

我没有有经验'比萨',但你有没有确保你的HTML有适当的字符集声明? – zigg

+0

它确实在浏览器中正常显示 – user1442957

+0

它们在PDF中的实际外观如何?你能提供一个屏幕截图和产生问题的实际字节吗? – geoffspear

回答

4

明白了。这需要在你生成的内容的顶部:

<meta http-equiv="content-type" content="text/html; charset=utf-8"> 
0

对于我来说,使用编码选项与编码=“UTF-8”帮助:

pisa.CreatePDF(html.content, dest=pdfFile, encoding='utf-8')