簡體   English   中英

如何更改 Kivy 中標簽的 font_name 屬性?

[英]How to change font_name property for lables in Kivy?

我正在嘗試創建一個 label,為其指定一些文本並使用一些自定義字體,使用 python 文件中的屬性“font_name”,而不是在 kv 文件中。 這是代碼:

python 代碼:

some_text = bidi.algorithm.get_display(
        arabic_reshaper.reshape(<some_persian_text>))


MDLabel(text=some_text, size_hint=(None, None), font_name="fonts/Shabnam-Bold", size=(300, 100), pos_hint={'center_x': 0.5, 'center_y': .8}))

對應的kv文件:

<SomeScreen>:
    name: 'some_screen'
    AnchorLayout:
        id: main_layout
        size: self.width, self.height
        anchor_x: 'center'
        anchor_y: 'top'
        MDToolbar:
            id: main_toolbar
            title: "TITLE"
            # left_action_items: [["menu", lambda x: side_bar.set_state('open')]]
            left_action_items:[['arrow-left', lambda x: root.go_back()]]
            md_bg_color: app.theme_cls.primary_color
            elevation: 15

如您所見,我已經在 kv 文件中設置了工具欄,並嘗試在 python 中為其動態呈現一些其他內容。 label 的文本是波斯語(伊朗使用的一些從右到左的語言)。rabic_reshaper 旁邊的 bidi 庫使應用程序能夠呈現從右到左的文本。 問題是,當我完全在 kv 文件中執行此操作時(在 python 中設置文本,在 kv 文件中創建 label 並將文本和 font_name 也在 kv 文件中設置),一切正常。 但是當我這樣做時(創建和設置 label 內容和 py 文件中的字體),字體無法正常工作並顯示一些廢話:

在此處輸入圖像描述

我怎樣才能解決這個問題? 謝謝你。

似乎可以使用標記標簽解決該問題:

'[font = "path/to/font"]your text [/font]'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM