EKB This is a little proc to choose the first font in a list that is available on a system, similar to the options in CSS.
proc firstfont {fontlist default} { set avail {} foreach f [font families] { lappend avail [string tolower $f] } foreach try $fontlist { if {[lsearch $avail [string tolower $try]] != -1} { return $try } } return $default }
The "default" should be one of the font families that Tk guarantees it will supply a font for on any system (Courier, Times, and Helvetica). Here's an example:
set fontfam [firstfont {{Palatino Linotype} {Times New Roman}} \ Times] font create body -family $fontfam -size 11 font create title -family $fontfam -size 16