我有一个txt文件,其中包含一个勾号列表,因此
Done List
☑ grocery
☑ electronics
上面的列表是使用类似Python的方法创建的:
chkbx = u"u2611" #u'U0001F5F9'
for ...
with open('List.txt','a',encoding='utf-8') as f:
f.write(f"{chkbx} {activity}n")
我想使用python的FPDF
库将txt文件转换为PDF。我使用以下命令保存
pdf.output('list.pdf').encode('utf-8')
并得到以下错误:
UnicodeEncodeError: 'latin-1' codec can't encode character 'u2611' in position 516: ordinal not in range(256)
根据https://pyfpdf.readthedocs.io/en/latest/Unicode/index.html它应该起作用(?(我在这里缺了什么?
是否可以在编写之前设置pdf字体的编码?https://pyfpdf.readthedocs.io/en/latest/Unicode/index.html
pdf.add_page()
pdf.add_font('DejaVu', '',FPDF_FONTPATH+'/DejaVuSansCondensed.ttf', uni=True)
pdf.set_font('DejaVu', '', 12)
FPDF_FONTPATH是计算机本地字体的路径。
我下载了文档推荐的一组unicode字体,然后将它们放在所需的"字体"目录中,包括文档所说的"unifont"子目录。