如何在Python Kivy的TextInput字段中显示希伯来语文本

时间:2019-04-22 18:52:03

标签: python kivy hebrew

我正在尝试使用kivy(Python包)制作一个简单的应用程序,该应用程序从TextInput字段获取文本,然后单击按钮时,它返回希伯来语文本,该文本将显示在另一个TextInput上,一切似乎都在工作很好,但我遇到的问题是Kivy中的TextInput字段无法显示我要显示的希伯来语文本。

这是我得到的: What I get 如您所见,它显示的是奇怪的文本,而不是我需要显示的文本...

我的代码,我的主脚本:

import kivy
from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.gridlayout import GridLayout
from kivy.uix.textinput import TextInput
from kivy.uix.label import Label
from kivy.uix.widget import Widget
from kivy.properties import ObjectProperty
import getData

class MainScreen(Widget):
    ttc = ObjectProperty(None)
    ct = ObjectProperty(None)

    def btn(self):
        self.ct.text = getData.HE_EN(text=self.ttc.text.lower())

    pass
class MyApp(App):
    def build(self):
        return MainScreen()

if __name__ == "__main__":
    MyApp().run()

我的“ my.kv”文件:

<MainScreen>:
    ttc: ttc
    ct: ct
    GridLayout:
        size: root.width, root.height
        cols: 1
        TextInput:
            text: ""
            id: ttc
        Button:
            text: "CONVERT"
            on_press: root.btn()
        TextInput:
            text: "CONVERTED TEXT"
            id: ct

不需要显示返回希伯来语文本的getData.py脚本,因为这并不重要...

预期结果是即使我没有真正设法在TextInput中获得我想要的文本。 请帮助我解决我的问题,我确实需要这个...

1 个答案:

答案 0 :(得分:1)

好吧!因此,花了很长时间,因为不和谐服务器上的某人帮助了我,而我要做的就是仅切换文本区域字体,因为前一个没有希伯来语字体。为此,我下载了字体“ Arial”并将其与主脚本一起添加到我的文件夹中,我导入了from kivy.core.text import LabelBase,然后注册了字体:LabelBase.register(name="Arial", fn_regular="Arial.ttf"),以告诉TextInput我要设置字体我刚刚将它添加到.kv文件中的部件'font_name:“ Arial”'下,就解决了这个问题。