我正在使用tkinter为语言翻译应用程序编写代码,作为一个额外功能,我决定添加一个函数,让您将翻译后的文本保存为pdf文件。问题是,如果翻译的文本包含拉丁unicode以外的字符,则会出现错误
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\vinit\AppData\Local\Programs\Python\Python38\lib\tkinter\__init__.py", line 1883, in __call__
return self.func(*args)
File "C:/Users/vinit/PycharmProjects/LanguageTranslator/Translator/Translator.py", line 66, in savepdf
pdf.output("Language.pdf")
File "C:\Users\vinit\PycharmProjects\LanguageTranslator\venv\lib\site-packages\fpdf\fpdf.py", line 1065, in output
self.close()
File "C:\Users\vinit\PycharmProjects\LanguageTranslator\venv\lib\site-packages\fpdf\fpdf.py", line 246, in close
self._enddoc()
File "C:\Users\vinit\PycharmProjects\LanguageTranslator\venv\lib\site-packages\fpdf\fpdf.py", line 1636, in _enddoc
self._putpages()
File "C:\Users\vinit\PycharmProjects\LanguageTranslator\venv\lib\site-packages\fpdf\fpdf.py", line 1170, in _putpages
p = self.pages[n].encode("latin1") if PY3K else self.pages[n]
UnicodeEncodeError: 'latin-1' codec can't encode characters in position 87-91: ordinal not in range(256)
如果我想把文字从英语翻译成印地语或任何其他具有不同字符的语言,我该怎么做
应使用
.add_font()
设置并使用unicode字体下面是使用
arialuni.ttf
的示例代码:详情请参阅document
相关问题 更多 >
编程相关推荐