查找所有tkinter字体

2024-10-01 02:19:04 发布

您现在位置:Python中文网/ 问答频道 /正文

在哪里可以找到tkinter支持的所有字体的列表?我检查了tkinter的源代码,但没有找到。我看到一个(http://www.tcl.tk/man/tcl8.6/TkCmd/colors.htm)有所有颜色,但我没有找到一个字体。在


Tags: http列表源代码颜色tkinterwww字体tcl
2条回答

我有一个程序,如果你从命令行输入,它将在控制台上打印字体名称。它是Python2.7,但是很容易更改为3.x版本。它有一个小的副作用,就是打开一个空白窗口-忽略它。我有10号窗户。在

# show-tk-fonts.py
# Sunday, December 10, 2017      4:45:00 PM     -0600

import datetime
import sys
from   Tkinter import Tk
import tkFont

def mysort(a,b):
    if a[0] == '@':
        a = a[1:]
    if b[0] == '@':
        b = b[1:]
    return cmp(a.lower(), b.lower())

root = Tk()
print "# show-tk-fonts.py output"
print "#", datetime.datetime.now()
print
i    = 0
max  = 1
nam  = ""
fnames = list(tkFont.families())
fnames.sort(mysort)
for s in fnames:
    if len(s) > max:
        max = len(s)
        nam = s
    ls = 32-len(s)
    if i == 0:
        sys.stdout.write('    "'+s+'"'+' '*ls)
    else:
        sys.stdout.write('"'+s+'"'+' '*ls)
    i += 1
    if i == 3:
        sys.stdout.write('\n')
        i = 0
#print "max length = ",max
#print "name       = ",'"'+nam+'"'
print "normal exit"
root.mainloop()

这将输出tkinter字体名称。在

from tkinter import Tk
import tkinter.font
Tk()
for name in sorted(tkinter.font.families()):
    print(name)

相关问题 更多 >