如何在tkinter标签中使用Segoe字体



我正在尝试将现代外观给我的Tkinter GUI。这是我使用的语法,没有任何运气。任何帮助都会有所帮助!

from Tkinter import *
my_font=("Segoe UI", 20, "bold")
root =Tk()
root.geometry("800x480)
Label=(root, text="my label", font = my_font).place(x=320, y=10)
root.mainloop()

我的答案将解决两个点

  1. 您可以在tkinter
  2. 中立即使用哪些字体系列
  3. 如果您想使用的家人无法立即可用。

可用字体自己

python 2

>>> from Tkinter import Tk
>>> from tkFont import families
>>> Tk(); available = families()   ### Tk() is needed to have a running tcl interpreter
<Tkinter.Tk instance at 0x7f977bcbfb90>
>>> len(available)
3011

python 3

>>> from tkinter import Tk
>>> from tkinter.font import families
>>> Tk() ; available = families()
<tkinter.Tk object .>
>>> len(available)
68

此时,您可以检查可用打印,排序切片等的字体等available的内容 - nb列出的名称是您在字体定义tuple中必须使用的名称,如示例代码中。

添加字体

据我所知,这通常可以作为一个依赖(复杂)hack的系统来完成,而已发布的唯一一个是

说hack(我将重复:仅Windows)在此答案中报告。

我不知道该如何进行。


脚注

3011 python 2和68 python 3的字体家庭?是的,Python 2是apt在我的Debian PC上安装的Python系统,而Python 3是Anaconda的Python,并且仅看到Anaconda在其私人树中安装的字体。

最新更新