O'Reilly logo

Mastering Perl/Tk by Nancy Walsh, Stephen Lidie

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 3. Fonts

Every computer system uses fonts. In Perl/Tk applications, you can change any of the fonts for items inside the application, but not the fonts used in the window decoration for titles (which are handled by the window manager). In this chapter, we’ll show you how to use fonts in your Perl/Tk application.

What fonts do you have available? For MS Windows users, the available fonts can be found in the Font control panel. Users of the X Window System can get a font list by running xlsfonts. The font used in this chapter is Linotype Birka. While you can’t do anything about the font used in this book, you can do something about the fonts in the applications you create or run in Perl/Tk.

The simplest way of altering an application’s font is changing the base font for the entire application. You can do that with any Perl/Tk application by using a command-line option:

perl myTkApp.pl -font "Times 12"

Using the -font command-line option doesn’t require any changes to your Perl script. The -font option works because of the way Tk::CmdLine works, described in Chapter 16. Note that you specify the -font option after the name of the program to run. As long as you haven’t explicitly specified the font for any widgets in your application, all widgets will use the new font.

To change the font for only some widgets, you can use the option database, described in Chapter 16. For example, if you wanted to change only the font for Text widgets in your application, specify *text*font=Courier ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required