Python Kivy-更改行高而不切断文本
有没有办法在不切断部分文本的情况下降低标签的行高Python Kivy-更改行高而不切断文本,python,kivy,Python,Kivy,有没有办法在不切断部分文本的情况下降低标签的行高 import kivy from kivy.app import App from kivy.uix.label import Label class MyApp(App): def build(self): return Label( text='This is a long line\nwith multiple\nline breaks.', font_size=
import kivy
from kivy.app import App
from kivy.uix.label import Label
class MyApp(App):
def build(self):
return Label(
text='This is a long line\nwith multiple\nline breaks.',
font_size='100sp',
line_height=.75
)
MyApp().run()
或者——如果不是——还有什么办法可以达到同样的效果呢?提前感谢因为
标签
背景是透明的,所以您可以制作三个独立的标签
,并将它们尽可能靠近。当然,太近会导致重叠。以下是一个例子:
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.label import Label
class MyLabel(Label):
pass
kv = '''
<MyLabel>:
font_size: '100sp'
size_hint: None, None
size: self.texture_size
FloatLayout:
MyLabel:
text: 'This is a long line'
pos: 10, lab2.y + lab2.height - 25 # position this label above the lower one, but down 25 pixels
MyLabel:
id: lab2
text: 'with multiple'
pos: 10, 0 + lab1.height - 25 # position this label above the lower one, but down 25 pixels
MyLabel:
id: lab1
text: 'line breaks.'
pos: 10, 0
'''
class MyApp(App):
def build(self):
return Builder.load_string(kv)
MyApp().run()
从kivy.app导入应用
从kivy.lang导入生成器
从kivy.uix.label导入标签
类别MyLabel(标签):
通过
kv='''
:
字体大小:“100sp”
大小提示:无,无
大小:self.texture\u大小
浮动布局:
MyLabel:
文字:“这是一条长线”
位置:10,lab2.y+lab2.height-25#将此标签放置在较低的标签上方,但向下放置25像素
MyLabel:
id:lab2
文本:“具有多个”
位置:10,0+lab1.height-25#将此标签放置在较低的标签上方,但向下放置25像素
MyLabel:
id:lab1
文本:“换行符。”
位置:10,0
'''
类别MyApp(应用程序):
def生成(自):
返回生成器。加载字符串(kv)
MyApp().run()
请注意,当您将单个
标签
用于多行时,将设置行间距(行高度
)最小值,以防止文本上行和下行重叠。当您运行我的示例代码时,上行和下行不会重叠,但这只是运气。这也是我的下一个方法,但我希望找到一个只有一个标签的解决方案。不过还是要谢谢你。