打印树 - 有没有办法确保 Kivy 标签中的文本完美对齐?
Printing trees - Is there a way to ensure text in Kivy labels is aligned perfectly?
我正在尝试开发一个需要在标签中显示树的 Kivy 桌面应用程序。
树只是一个看起来像这样的字符串:
" ┌ 3 \n │\n 1 ┤ ┌ 2 \n └─────────────── 4 ┤\n └ 5 "
这在终端内操作时非常有效,并且树正确对齐如下。
然而,当把这个字符串放在 Kivy 标签中时,它没有正确对齐(见下文)。
我认为文本的尺寸与终端中的尺寸不一样是个问题。然而,我没有运气调整标签的属性、文本大小、字体或其他任何东西。问题似乎总是存在。
默认字体甚至不会显示树枝。我将 font_name 设置为“DejaVuSans.ttf”,这至少渲染了分支,但它们仍然没有对齐。
我该如何解决这个烦人的问题?
此外,是否有更聪明的方法在 Kivy 应用程序中显示树木,从而完全绕过这个问题?
如果使用 FreeMono
字体并将标签文本调整为:
" ┌ 3 \n │\n 1 ┤ ┌ 2 \n └─────────────── 4 ┤\n └ 5 "
它似乎有效。
我正在尝试开发一个需要在标签中显示树的 Kivy 桌面应用程序。
树只是一个看起来像这样的字符串:
" ┌ 3 \n │\n 1 ┤ ┌ 2 \n └─────────────── 4 ┤\n └ 5 "
这在终端内操作时非常有效,并且树正确对齐如下。
然而,当把这个字符串放在 Kivy 标签中时,它没有正确对齐(见下文)。
我认为文本的尺寸与终端中的尺寸不一样是个问题。然而,我没有运气调整标签的属性、文本大小、字体或其他任何东西。问题似乎总是存在。
默认字体甚至不会显示树枝。我将 font_name 设置为“DejaVuSans.ttf”,这至少渲染了分支,但它们仍然没有对齐。
我该如何解决这个烦人的问题?
此外,是否有更聪明的方法在 Kivy 应用程序中显示树木,从而完全绕过这个问题?
如果使用 FreeMono
字体并将标签文本调整为:
" ┌ 3 \n │\n 1 ┤ ┌ 2 \n └─────────────── 4 ┤\n └ 5 "
它似乎有效。