Python FPDF:MultiCell不接受项目符号

Python FPDF:MultiCell不接受项目符号,python,unicode,fpdf,Python,Unicode,Fpdf,使用windows-1252编码时(仅此项适用于我),我可以在单元格中显示项目符号,如u“\u2022”,但当我将项目符号放入MultiCell时,它会抛出一个错误: UnicodeEncodeError: 'charmap' codec can't encode character '\x95' in position 0: character maps to <undefined> 我怎样才能修好它? 我使用Ubuntu 20.04和Python 3.8.5。你是说window

使用windows-1252编码时(仅此项适用于我),我可以在单元格中显示项目符号,如
u“\u2022”
,但当我将项目符号放入MultiCell时,它会抛出一个错误:

UnicodeEncodeError: 'charmap' codec can't encode character '\x95' in position 0: character maps to <undefined>
我怎样才能修好它?
我使用Ubuntu 20.04和Python 3.8.5。

你是说windows-1252编码吗?好的,Python的FPDF支持Unicode(
utf-8
)非常好…请回答这个问题并分享一个(经过消毒的)。如果您尝试编码
“\u2022”
,但是您得到了一个关于
“\x95”
的编码错误,那么看起来好像出了什么问题。我可以用以下(无用的)往返编码复制异常:
'\u2022'.encode('cp1252').decode('latin1').encode('cp1252')
。我无法复制您的MWE:首先,我需要在调用
.cell()
之前添加页面(),然后,由于对
self.unifontsub
的库访问,后一个调用导致了
AttributeError
。。。在阅读了您的示例、浏览了fpdf.org的常见问题解答并在回溯中看到了代码片段之后,我得到了这样的印象:一些关于编码的不健康假设被构建到了这个库中。在找到文档后,我了解到您的MWE也缺少
pdf.set\u font()
调用。这对于您的问题来说是至关重要的信息,因为这个调用似乎设置了编码。你读过关于在拉丁语-1范围之外使用Unicode的文章吗?现在我可以重现你的问题了。请下次在前面以这样的形状开始提问对我来说,它看起来像一只虫子。不幸的是,这个项目看起来被放弃了,但也许你很幸运,有人在一个。。。
from fpdf import FPDF
pdf = FPDF()
pdf.add_page()
pdf.set_doc_option("core_fonts_encoding", "windows-1252")
pdf.set_font("Times", size=14)
pdf.cell(w=0, h=6, txt="\u2022 This outputs correctly", ln=2)
pdf.multi_cell(w=0, h=6, txt="\u2022 This raises an error", ln=2)