gpt4 book ai didi

python - Kivy 编码日语 (Unicode)

转载 作者:太空宇宙 更新时间:2023-11-04 03:45:18 25 4
gpt4 key购买 nike

我正在尝试在我的应用中获取日文字符。从文档和其他来源我发现 Label(text=u'我是中文', font_name='fonts/ARIALUNI.TTF') 应该可以工作(arialuni 字体应该能够处理日文/中文字符)。但是我想知道如何在 .kv 文件中用 Kivy 语言指定它?这是我尝试过的:

主要.py:

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout


class Design1(BoxLayout):
pass


class KanjiLayoutApp(App):
def build(self):
return Design1()


if __name__ == '__main__':
KanjiLayoutApp().run()

汉字布局.kv:

<Design1>:
orientation: "vertical"
Label:
font_name: 'data/fonts/ARIALUNI.TTF'
text: u'速 dsf'

然而,这给了我“é€Y dsf”。还text: '速 dsf' 没有你是行不通的。

附注在文本中添加 あい(假名): text: '速 dsf∀あい' 会产生更多错误: UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 369: character maps to < undefined>

最佳答案

确保您的 kv 文件使用 utf-8 字符编码,它应该可以正常工作。大多数体面的文本编辑器都允许您选择编码。

不要使用 u'',因为文件已经是 unicode(尝试使用 u'' 将导致解码错误)。

我遇到了 arialuni 字体的问题(没有显示汉字,但它确实显示了假名,而且上半部分的所有字符都被切掉了,包括西方字母)。所以我改用了不同的字体(TakaoPMincho - 易于在 Ubuntu 中安装)。

汉字测试.kv:

<TestWidget>:
Label:
text: '速 dsf あい'
font_name: 'TakaoPMincho.ttf'
font_size: sp(48)

结果:

enter image description here

关于python - Kivy 编码日语 (Unicode),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24129538/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com