打印树 - 有没有办法确保 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 "

它似乎有效。