Managing Fonts

When you've installed a large number of fonts, opening a font selection dialog can take an unreasonably long time. You may also spend too much time hunting for a font that is buried among dozens of useless fonts. Ideally, you should keep only the fonts that you use, but how do you know which these are?

FontViewer can analyze your system to determine which fonts appear to be in use. You can then uninstall the unused fonts. If you make a mistake or change your mind, FontViewer can reinstall the font for you. These features are available specifically for TrueType fonts, which make up the vast majority of fonts on most systems.

To determine whether a particular font is in use would require the ability to decipher every possible file format and locate specific references to that font. But deciphering even a single file format can be challenging. For example, different versions of Microsoft Word create differently formatted DOC files. And many file formats aren't documented.

Instead, FontViewer takes an approach tempered by practicality. It only searches files of specified types that are known to contain font references, and it seeks each font name anywhere in the file, without regard to the file format. So, for example, it doesn't attempt to distinguish the word Verdana in text from an actual use of the Verdana font. If the font name appears in the file as text (for example, Miss Gertrude Verdana), FontViewer will count that file as containing the Verdana font. FontViewer's approach isn't perfect, but it will tend to err on the side of caution — false positives. After FontViewer has analyzed the files, you can investigate the files that use a specific font and see if that usage is significant.

When you select Count files for all fonts from the Manage menu, FontViewer first displays the Counting options window ( Figure 5 ). A panel at the left lists five general categories. The larger list at right displays the file extensions associated with the selected category, along with their type names as displayed in Explorer. You can use the controls in the right-hand panel to add or remove extensions from the selected category. If you choose an extension that exists in a different category, it will be moved. Click Restore defaults to put back any of the default extensions that you moved or removed; this won't affect any that you added.

The amount of time required to count the fonts is proportional both to the number of fonts installed and the number of files to be checked. If you have 100 fonts and 1,000 files, FontViewer has to make 100,000 searches. If there are 500 fonts and 2,000 files, the number of searches goes up to a million! You may want analyze a subset of files first, to get a feel for how long searches take on your particular system. To do so, simply uncheck one or more of the categories. You'll probably get the biggest speed gain by unchecking Executable files.

To discard your changes to the categories and file types, click the Cancel button. To save your changes without actually starting the counting process, click OK. When you're ready to begin, press the big COUNT button.

When counting, FontViewer first collects a list of all the files it must analyze. It flips through all the folders on all your local drives, seeking files of the specified types. It skips files marked as hidden or system, and it skips files over 1MB in size. During this process, FontViewer displays how many files it has found ( Figure 6 ). Once the files to be analyzed have been identified, the actual analysis begins.

Checking your files for font usage is very time-consuming; it may well take an hour or more. After analyzing 10 percent of the files, FontViewer starts displaying an approximate finish time for the process, just as some download programs do ( Figure 7 ). And just like those download programs, FontViewer revises the estimate — if necessary — as the process continues. During the counting process, you can minimize FontViewer by clicking the minimize button in the main window's caption bar, or by right-clicking the program's taskbar button and choosing Minimize. FontViewer saves the information it collects in this lengthy analysis, so you don't have to run it often. If you cancel the counting process, any saved information from a previous count is unaffected.

After you've gone through the counting process once, you'll see numbers in the main window's Count column next to all TrueType fonts. A font with a count of dozens or more is probably in use. One with a count of zero is very likely not in use. If the count shows just a few files, you'll want to investigate further to see whether the font is really used or whether its name is just present in the file. Right-click the font in question and choose Show files using selected font. This option is only enabled for fonts with a count greater than zero.

The font usage window ( Figure 8 ) lists each file in which FontViewer found the name of the specified font, along with the file type and the folder in which it resides. When you select a file and press Launch, FontViewer launches the file using the application registered to open files of that type. This lets you determine whether the font is actually used in that file, or just mentioned in the text. Note that some file types — notably Application Extension (DLL) files — cannot be launched in this way.

When you've determined that a particular font is not needed, you can uninstall it. Before doing so, shut down any programs that use fonts, especially the Control Panel | Fonts applet. Now right-click the font in FontViewer's list and choose Uninstall selected font.

As noted earlier, many fonts come in groups with different styles. FontViewer identifies the base name of your selected font and displays all fonts that begin with the base name in the program's Uninstall window ( Figure 9 ). The precise font name that you chose is initially checked; all others are unchecked. You can click Check all or Check none to set or uncheck all the check boxes at once.

The OK button is enabled when at least one box is checked. When you click OK, FontViewer removes the specified fonts from the system-wide font list and moves the corresponding TTF files from the Fonts folder to a subfolder named Uninstalled. Note that FontViewer will refuse to uninstall certain fonts essential to the operating system and will require confirmation before uninstalling other important fonts.

Unlike the Font applet in Control Panel, FontViewer's uninstall process is reversible. Choose Reinstall fonts from the Manage menu to display a list of fonts that have been uninstalled by FontViewer ( Figure 10 ). Check any that you wish to reinstall and click OK; it's as simple as that. FontViewer cannot install new fonts or delete a font permanently. For those tasks, use the Control Panel's Font applet.