我試圖在我的應用程序中獲取日文字符。從文檔和其他來源,我發現標籤(text = u'我是中文',font_name ='fonts/ARIALUNI.TTF')應該可以工作(arialuni字體應該能夠處理日文/中文字符)。不過,我想知道如何在.kv文件中的Kivy語言中指定它?這是我的嘗試:Kivy編碼日文(Unicode)
main.py:
3210kanjilayout.kv:
<Design1>:
orientation: "vertical"
Label:
font_name: 'data/fonts/ARIALUNI.TTF'
text: u'速 dsf'
但是這給了我 「速DSF」。還有 文本:沒有你的'速dsf'不起作用。
p.s.在文本中添加あい(假名):text:'速度dsfあい'給出了更多錯誤:UnicodeDecodeError:'charmap'編解碼器無法解碼位置369中的字節0x81:字符映射到< undefined>
全部假名(平假名)錯誤: 回溯(最近通話最後一個): 文件。 「d:\ APPS \ KanjiLayout \ main.py」,第16行,在 KanjiLayoutApp()的run() 文件「 D:\ Apps \ _Kivy-1.8.0-py3.3-win32 \ kivy \ kivy \ app.py「,行765,運行 self.load_kv(filename = self.kv_file) 文件」D:\ Apps \ _Kivy-1.8.0-py3.3-win32 \ kivy \ kivy \ app.py「,第585行,在load_kv中 root = Builder.load_file(rfilename) 文件」D:\ Apps \ _Kivy-1.8.0- py3.3-win32 \ kivy \ kivy \ lang.py「,第1433行,在load_file中 data = fd.read() 文件」D:\ Apps \ _Kivy-1.8.0-py3.3-win32 \ Python33 \ LIB \編碼s \ cp1252.py「,行 23,解碼 –
NumesSanguis
也許試試'text:u'\ u9FXX dsf'或代碼點是什麼而不是文字字符 –
return codecs.charmap_decode(input,self.errors,decode_table) [0] UnicodeDecodeError:'charmap'編解碼器無法解碼位置369中的字節0x81:字符映射到< undefined> – NumesSanguis