If you want to find the default font used for a particular item, create
one and interrogate it:
>>> b = Tkinter.Button(app)
>>> b.cget("font")
'-monotype-arial-medium-r-normal-*-12-*-*-*-p-*-iso8859-15'
(in this case, it's a Linux system with the fonts coming from the X
resource database in XLFD format)
You can find out details of the font using the tkFont module:
>>> import tkFont
>>> f = tkFont.Font(b, b.cget("font"))
>>> fo.metrics()
{'fixed': 0, 'ascent': 11, 'descent': 3, 'linespace': 14}
>>> fo.configure()
{'family': 'arial', 'weight': 'normal', 'overstrike': '0', 'size': '9',
'slant': 'roman', 'underline': '0'}
>>> fo.measure("Hello World")
64
You can construct a new font similar to an existing one:
>>> fc = fo.configure()
>>> fc.weight = 'bold'
>>> nf = tkFont.Font(b, **fc)
>>> b.configure(font=nf, text="Bold Button")
>>> b.pack()
You can also find the available "font families":
>>> tkFont.families(b)
('nimbus roman no9 l', 'arial black', 'clearlyu devangari extra', ...
I'm not sure what use this is:
>>> tkFont.names(b)
('font136858972', 'font136997436')
Jeff
_______________________________________________
Tkinter-discuss mailing list
[email protected]
http://mail.python.org/mailman/listinfo/tkinter-discuss