如何在垂直标签中水平放置文字?

时间:2016-05-24 20:53:10

标签: kivy

我有垂直标签,但想要“旋转”标签标签,以便水平阅读。怎么可以这样做?

kivy文件包含:

TabbedPanel:
    id: tab_panel
    tab_pos: 'left_top'
    do_default_tab: False

    TabbedPanelItem:
        text: '1'

    TabbedPanelItem:
        text: '2'

    TabbedPanelItem:
        text: '3'

1 个答案:

答案 0 :(得分:0)

修改:实际上 IS 可能!

TabbedPanelItem:
    text: '2'
    canvas.before:
        PushMatrix
        Rotate:
            angle: -90
            axis: 0,0,1
            origin: self.center
    canvas.after:
        PopMatrix

当前api不可能。如果你设法做到这一点真的很难看,因为它会拉伸标签标题并使其成为 square 或者甚至是另一个90°旋转的矩形,它会尽可能地拧紧你的Layout - 原始标签看起来像一个随意的Button和整个TabbedPanel作为初学者试图制作html页面,如果您不想将自己限制为当前字体大小的3-4个字符。只是说。

您可以尝试编辑源代码,其中一种方法是直接创建自定义ToggleButtonTabbedPanelHeader继承自Push/PopMatrix()并将其与t| a| content b| _| 一起旋转。

另一种(也是更合理的)方法是使标签看起来像这样:

t\na\nb

即。文字上涨 - >虽然我不知道怎么做但除了旋转整个事情并使用这样的字符:function empty_content($str) { return trim(str_replace(' ','',strip_tags($str))) == ''; }

相关问题