猿问

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

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

这就是我得到的:

如您所见,它显示了这个奇怪的文本,而不是我需要显示的文本......


我的代码,我的主脚本:


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 中获得我想要的文本,即使我认为我并没有真正做到。请帮我解决我的问题,我确实需要那个...


翻阅古今
浏览 224回答 1
1回答

莫回无

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

相关分类

Python
我要回答