问题描述
当我在kivy android中使用Google NotoSansfont for Devanagari脚本呈现以下文本时,我将其呈现为错误。我在其他语言的SO中也看到过类似的消息,它说使用pango文本提供程序,但也提到它不适用于android。是否有可能在kivy应用程序中的android中正确呈现字体。对于我们来说,使用kivy作为应用程序开发平台将成败,因为我们需要在移动应用程序中支持印度语。
示例文本预期输出->
示例文本渲染输出->
在所有控件-Label和TextInputs中都会发生这种情况,我们尝试了不同的ttf文件-NotoSans,Akshar和其他至少10个字体文件。
对我们来说,唯一可以正常使用的字体是GNU Unifont,但这是因为它包含所有字形,而且我们遇到的问题是,尽管现在这是我们目前唯一的选择,但它看起来并不美观且可读性强。
我们可以在这里得到一些帮助吗?
from kivy.app import App
from kivy.uix.image import Image
from kivy.uix.label import Label
from kivy.uix.Boxlayout import BoxLayout
from kivy.uix.button import Button
class MainApp(App):
def build(self):
label = Label(text="अंतरिक्ष",font_name="notosans.ttf",size_hint=(0.5,0.5),pos_hint={'center_x':.5,'center_y':.5})
layout = BoxLayout(padding =10)
layout.add_widget(label)
return layout
if __name__=='__main__':
app = MainApp()
app.run()
字体链接:https://fonts.google.com/specimen/Noto+Sans?subset=devanagari
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)