如何使用python-pdfkit中的from_string生成包含非ascii字符的PDF

jll*_*ino 4 python pdf encoding python-pdfkit

我正在努力用Python 3.5.2,python-pdfkit和wkhtmltox-0.12.2生成一个带有非ascii字符的简单PDF.

这是我能写的最简单的例子:

import pdfkit
html_content = u'<p>ö</p>'
pdfkit.from_string(html_content, 'out.pdf')
Run Code Online (Sandbox Code Playgroud)

这就像输出文档看起来像: PDF中错误显示的非ascii字符

jll*_*ino 12

我发现我只需要在我的HTML代码中添加带charset属性的元标记:

import pdfkit

html_content = """
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
</head>
<body>
    <p>&euro;</p>
    <p>áéíóúñö</p>
<body>
</html>
"""

pdfkit.from_string(html_content, 'out.pdf')
Run Code Online (Sandbox Code Playgroud)

我实际上花了很多时间来遵循这里建议的错误解决方案.如果有人有兴趣,我会在我的博客上写一篇短篇小说.对不起垃圾邮件:)