═══ 1. FontFolder Overview ═══ FontFolder provides an easy, efficient way to manage Adobe Type 1 fonts (also known as ATM fonts) in OS/2. Once a font is registered with a FontFolder Library, the font can be loaded and unloaded in OS/2 from the FontFolder main window with simple point and click operations. With FontFolder you only need to keep loaded those fonts that you are currently using. This saves time and resources since OS/2 only needs to load a small number of fonts on bootup and keep a small number of fonts in memory at any one time. Applications that load all the installed fonts when starting will also start faster, and you will have fewer fonts to scroll through when making font selections. FontFolder provides added convenience by allowing you to groups fonts in a named collection called a FontPack. A FontPack can be loaded and unloaded as a single item, and all the fonts in the FontPack will be loaded or unloaded for you. By creating FontPacks that contain all the fonts required for specific tasks, you can easily keep just those fonts loaded that are required for the work at hand. By removing from the user the task of specifying where font files are to be placed when fonts are loaded in OS/2, FontFolder provides great flexibility in organizing your fonts into meaningful directory structures. In addition to allowing fonts to be used from any directory on a local hard drive, FontFolder supports fonts residing on network servers and on CDROM's, saving local hard drive space. See the following for additional information. Topics: o Overview of ATM Fonts o Overview of OS/2 Fonts o Installing FontFolder o Using FontFolder o Removing FontFolder o Creating and Using FontFolder Libraries o Installing Fonts in OS/2 o Removing fonts from OS/2 o Creating and Using FontPacks o Using Fonts on CDROMs o Using Fonts on Network Drives o FontFolder Settings Notebook o FontFolder Menus o FontFolder Dialogs o Selecting items in listboxes o Error Recovery ═══ 2. Overview of ATM Fonts ═══ ATM font is the popular name for an Adobe Type 1 font, originated by Adobe Systems Incorporated. These fonts are scalable, meaning the system can accurately generate font characters in a wide range of sizes from one font description. This is in contrast to bit-mapped fonts, where there must be a complete, separate font description for each size. ATM fonts can be used for both display and printing and are supported on numerous operating systems in addition to OS/2. As a result thousands of fonts are available from a wide variety of sources. There are also programs available that allow you to generate your own ATM font design. An ATM font comes from the supplier as a collection of files. There is always a file with a name of the form filename.PFB which contains the detailed information needed to construct the font characters. There will be one or more additional files for each font as well. Fonts shipped by Adobe contain a filename.AFM file and a filename.INF file in addtion to the filename.PFB file. For use in OS/2, the PFB file and the AFM file are required. Microsoft Windows (and hence WinOS2) requires the PFB file and a file called filename.PFM. The ATM Control Panel used to install ATM fonts in Windows can use the AFM file and the INF file to construct a PFM file. Some font vendors aiming solely at the Windows market have unfortunately taken to shipping ATM fonts with only the PFB and PFM files. Such fonts are not immediately usable in OS/2. The first recourse is to contact the vendor to attempt to obtain the corresponding AFM file. Vendors such as Adobe are usually quite willing to supply these for free, in fact Adobe has provided a large number of AFM files for their type library in the ADOBE and DTPFORUM forum libraries on Compuserve. There are also font editing programs that will produce an AFM file from the PFB and PFM file and some utilities that attempt to convert a PFM file to an AFM file. ═══ 3. Overview of OS/2 Fonts ═══ OS/2 uses both bit-mapped fonts and ATM fonts for displaying characters. FontFolder does not deal with the OS/2 bit-mapped fonts. OS/2 ships with a basic set of ATM fonts whose files can be found in the \PSFONTS directory on the OS/2 boot drive. An ATM font for OS/2 must have both a filename.AFM and a filename.PFB file. In order for OS/2 to recognize these files they most both reside in the same directory. However, different fonts can reside in different directories. OS/2 keeps a record in the OS2.INI file of the path to each installed font. Note: One consequence of this is that the user must not move the files for an installed font to a different location without first uninstalling the font from OS/2. Once the files are moved, the font can be reinstalled in OS/2. OS/2 requires that the font files for an installed font reside on a hard drive. One reason for this is that OS/2 reads these files on bootup to generate the required information on installed fonts. As a result, when a font is installed in OS/2 from a removable drive such as a floppy drive or CDROM drive the font files must be copied to a directory on a hard drive. The OS/2 Font Pallete defaults to \PSFONTS as the location for these files, but the user can change this to any directory. FontFolder copies these files to a user-designated hard drive location when registering a font with a FontFolder Library from a removable drive. After this, FontFolder never moves the files again when installing and uninstalling the font in OS/2. This gives the user the freedom to organize fonts in directory structures that are meaningful from the user's perspective. For example, all fonts obtained from a specific source might be grouped in their own directory, or fonts might be grouped by a common characteristic (e.g. calligraphic fonts), etc. When an ATM font is installed in OS/2, a compressed equivalent of the AFM file named filename.OFM is generated and placed in the same directory as the PFB file. The OS/2 Font Pallete does not use the AFM file except for installation, and does not copy the AFM file to the target directory. FontFolder copies both the AFM file and the PFB file to the target directory when registering the font with a FontFolder Library from a removable drive. The first time the font is installed in OS/2 FontFolder puts the OFM file created in the existing directory with the AFM and PFB file for the font. FontFolder does not at this time offer the option of automatically erasing the AFM file. ═══ 3.1. Windows Fonts in OS/2 ═══ OS/2 uses and manage ATM fonts in WinOS2 in the same way as Windows. This means that OS/2 requires either a filename.PFM file or a filename.INF file in addition to the filename.PFB file to install the font in WinOS2. When the font is installed in WinOS2 via the ATM Control Panel (FontFolder does not manage ATM fonts for Windows), ATM will move the PFM file to a subdirectory named PFM under the directory containing the PFB file, creating the subdirectory if necessary. OS/2 and WinOS2 can share the same PFB file using a directory structure as shown below │ ┌─────────┐ ├──┬─┤MYFONTDIR│ │ │ └─────────┘ │ ├─ filename.afm (ofm) │ │ ├─ filename.pfb │ │ ┌─────────┐ └─┬─┤ PFM │ │ └─────────┘ │ └─ filename.pfm When FontFolder registers a font with a FontFolder Library from a removable drive, it will also copy either the WinOS2 filename.PFM file to a PFM subdirectory, creating the directory if necessary, or if it finds a filename.INF file but no PFM file, the filename.INF file to the directory containing the AFM and PFB files, provided the user has checked the Copy Windows Font Files box. ═══ 4. Installing FontFolder ═══ This section provides a description of what files and system file entries are created when FontFolder is installed and first opened, and the system resources used by FontFolder. To continue in this section choose one of the following: o FontFolder Files o FontFolder Memory Requirements o Other FontFolder Resource Requirements ═══ 4.1. FontFolder Files ═══ The only files required to use FontFolder are FONTFOLD.EXE and FONTFOLD.HLP. FONTFOLD.EXE can be installed anywhere on the system. FONTFOLD.HLP can be installed either in the same directory as FONTFOLD.EXE or in any directory specified in the set HELP= line in the OS/2 CONFIG.SYS file. It is recommended that FONTFOLD.HLP be kept in the same directory as FONTFOLD.EXE. The first time FontFolder starts it asks the user to provide paths to use to store two sets of files that FontFolder generates during operation. The default in both cases is to store them in the same directory as FONTFOLD.EXE. The first of these sets contains one file, FONTFOLD.INI, which keeps key information about the user preferences for FontFolder such as size and screen position of the main window, etc., and is created the first time FontFolder is closed. One case where one might place this file in a separate directory is if FontFolder is being shared on a network. If the user chooses to place FONTFOLD.INI in a location other than the default, then FontFolder writes this location to OS2.INI. If FONTFOLD.INI is left in the default directory then no entry is made in OS2.INI. The second set of files that FontFolder creates as part of its operation is its data files. These include files named MLIBnnn.FF2, which contain information identifying all the fonts registered with one of FontFolder's Libraries. FontFolder creates one of these files the first time it is closed or when the user chooses Save Library from the Library menu. The first time such a file is created it will have the file name MLIB000.FF2 and will be known to the user as the Base Library. Subsequent libraries created by the user will take an unused filename of the form MLIBnnn.FF2 and a name specified by the user at the time the library is first saved. The location of these files is kept in FONTFOLD.INI. FontFolder will also maintain one generation of backup of each MLIBnnn.FF2 file called MLIBnnn.BAK in the same directory. The combined size of these files should be no more than about 200KB for each library in the worst case of maximum length paths to the font files . In practice, with typical paths each library will more likely be 40KB or less in size for the combined current and backup files. The data files also include files of the form FNTPKnnn.FP2, which contain information identifying all the fonts included in the different FontPacks the user creates. There will be backup files of the form FNTPKnnn.BAK for these files also. Unless the user creates a very large number of FontPacks, these files will take up much less space than the Library files. The Font Cache Directory An optional feature of FontFolder permits the user to keep the fonts registered with a FontFolder Library on a Network Drive, thus allowing many users to share fonts across a LAN, or on a CDROM, saving the space that would be needed if the font files were copied to the hard drive. Because font files need to reside on a local hard drive when the font is actually installed in OS/2, FontFolder maintains a local hard drive directory, referred to as a Font Cache, where it temporary moves font files from Network Drives or CDROM Drives while the font is installed in OS/2. Each installed font has associated files that are 50-100 KB in size. While this space requirement is no different for a font installed from a Network Drive or CDROM Drive than for a font installed from a local drive, the user needs to be aware of the potential space requirements for the Font Cache directory if this feature is used. See the help on establishing the path to the Font Cache for additional details. ═══ 4.2. FontFolder Memory Requirements ═══ When in use FontFolder keeps the current Library and OS/2 Installed Fonts information in linked lists that require about 690 bytes of memory per font entry. Sufficient memory is allocated to allow storing over 1200 fonts in a Library, while the number of fonts actually installed in OS/2 should normally be less than 100 (for performance reasons). Thus maximum use would require somewhat less than one megabyte of memory beyond what the program normally takes. In practice most users will probably limit an individual Library to a few hundred fonts and use multiple Libraries instead for performance reasons, so memory usage should be well less than a megabyte. Since FontFolder uses OS/2's sparse memory allocation methodology, only enough memory is committed to hold the actual font information. The largest potential consumption of memory by FontFolder will occur when the user browses fonts using the Font Information Window. This facility allows the user to quickly examine sample text for very large numbers of fonts. Memory usage will grow in proportion to the number of fonts examined. A rough empirical formula is (500 + 11*fonts) KB, where fonts is the number of fonts browsed. A user browsing hundreds of fonts can quickly consume several megabytes of memory. See the help on using the Font Information Window for additional details. ═══ 4.3. Other FontFolder Resource Requirements ═══ FontFolder uses the standard OS/2 listboxes to display the current Library and Installed Fonts lists. In OS/2 2.1 the total contents of all listboxes in the system is limited to 64 KB. In the worst case of displaying the fully qualified path name view of these lists each entry can be up to 260 bytes, so the total number of fonts that could be displayed in this worst case condition would be around 250 fonts if no other open applications are using listboxes. However, this only applies if the user has specified very long directory paths for the font files. In a more typical case of perhaps 50 characters per path name, FontFolder would be able to display over 1300 fonts. If you have a large number of fonts and run in to this limit, see the Listbox error help for directions on how to recover. ═══ 5. Using FontFolder ═══ FontFolder works on the principle of keeping two separate lists of ATM fonts which are displayed side-by-side in the main FontFolder window. 1. The OS/2 Installed Fonts list The Installed Fonts list is the list of fonts that are actually installed in OS/2 and available for use. It is the same list one sees from the OS/2 Font Pallete or from the Font Dialog of an OS/2 application. 2. The Current Library list The Current Library list of fonts is a larger list of fonts that FontFolder knows about, whether they are currently installed in OS/2 or not. In normal operation this list will be larger than the number of Installed Fonts, in some cases substantially so. The user creates this list by registering fonts with a FontFolder Library using FontFolder's Library pulldown on the menu bar. The only limit to registering fonts with a Library other than resource limits (see Installing FontFolder ) is that this list may not contain fonts residing on removable media such as diskettes (fonts can reside on CDROMs however). Note: The user may still register fonts residing on removable media with a Library, however. FontFolder will copy the necessary files to a user-designated directory on a local hard drive as part of the registration process. In addition to these basic lists of fonts, FontFolder provides the user the facility to create named collections of Library fonts called FontPacks. A FontPack can be treated just like a single font for the purpose of installing it in OS/2 or removing it from OS/2, and FontFolder will handle the installation and removal of the all the fonts in the FontPack. The FontFolder main window also displays a list of all the FontPacks created, and a means is provided for the creation and maintenance of the fonts included in each FontPack. For further information on using FontFolder see the following: o Starting FontFolder for the first time o Everyday FontFolder use ═══ 5.1. Starting FontFolder for the first time ═══ Once FontFolder has been installed by copying FONTFOLD.EXE and FONTFOLD.HLP to the system, FontFolder is ready for use. The first time FontFolder is started it will display the FontFolder Setup Dialog which asks for four pieces of information: o The Drive letters of all the removable drives on the system o The Drive letters of all the CDROM drives on the system o The location to store the initialization file FONTFOLD.INI o The location to store the data files created by FontFolder, MLIBnnn.FF2 and FNTPKnnn.FP2 See the FontFolder Setup Dialog Help for details on the meaning and values for these settings. Note: While these are the basic settings that are required to use FontFolder, there are many other settings that allow the user to customize FontFolder or take advantage of optional additional function. See the help on the Settings Notebook for the details. The first thing FontFolder does on startup is to read in the list of fonts already installed in OS/2 from OS2.INI. It is possible for this list to include corrupted font files. If FontFolder encounters a file that it can not successfully read to obtain the required font information, it displays a dialog box giving the details of the suspect font and offering the user the option to remove it from OS2.INI. The user should normally take this option since FontFolder can not deal with this file (and OS/2 can not use it) and will redisplay this error message on every startup until the font is removed. In any case FontFolder will not list the font in the Installed Fonts list. See the Load Installed Fonts List Dialog Help for details. On the first startup FontFolder generates an initial Library by copying the list of fonts already installed in OS/2 to the Library list. This Library is given the name Base Library and is stored in the data file MLIB000.FF2. From this point on the user is free to add or delete entries in the Library independent of what fonts are actually installed in OS/2. ═══ 5.2. Everyday FontFolder use ═══ Once a font is registered with a FontFolder Library the user can install the font in OS/2 by selecting the font from the current Library list and clicking on the Install button. Multiple selections are permitted. To remove (uninstall) a font from OS/2 the user selects the font in the Installed Fonts list and clicks on the Remove button. Installing and removing fonts in this manner has no effect on the Library list. Separate editing facilities are provided for maintaining the current Library. When a font is registered with a Library, FontFolder creates an entry which contains both the name of the font (e.g. Courier Bold) and the fully qualified path to the font files. If the source for the files is a removable medium such as a diskette, FontFolder copies the files to a user-designated directory on a hard drive at the time of registration. It is this hard drive location that is stored in the Library. When a font already residing on a local hard drive is installed in OS/2 from the current Library, no files are moved. FontFolder simply provides OS/2 with the information on where to find the font files. Similarly, when such a font is removed from OS/2, no files are moved. Only the entries in OS/2 referring to these files are deleted. This means that the user has complete freedom in organizing font files in whatever directory organizations make sense. The user has the option of Saving the current Library at any point. If the current Library has been changed but not saved when FontFolder is closed, the user is prompted as to whether the current Library changes should be saved or discarded. FontFolder keeps one level of backup of each Library file, and there is provision for the user to Revert to the backup copy of the current Library. The Installed Fonts information is always saved as soon as a font is installed or removed from OS/2. Advanced FontFolder Features In addition to the basic FontFolder operations described above, FontFolder also offers advanced features that provide more powerful ways to organize and manage fonts. FontPacks allow the user to create a collection of fonts that can be installed or removed as a single unit. In addition to storing Library font files on a local hard drive, FontFolder supports having these font files reside on a Network Drive so that font files can be shared by many users or directly on a CDROM, saving the hard drive space that would be consumed if these font files had to be copied to a hard drive. FontFolder automatically manages the movement of these files to and from a local hard drive as required when then are installed or removed from OS/2. Also, the user can create up to 100 separate Libraries, each of which can be used as described above. A Library can be dedicated to a specific source of fonts, for example one would normally create a separate dedicated Library for font CDROM, or it can contain fonts that share common characteristics, for example a list of all of the user's script fonts. The user is completely free to create these Libraries according to whatever principle makes sense to the user. FontFolder provides facilities that make it easy to create and manage these multiple Libraries. For details on using FontFolder see o Registering Fonts with a Library o Deleting Fonts from a Library o Saving a Library o Reverting a Library o Installing Fonts in OS/2 o Removing Fonts from OS/2 o Using and Maintaining FontPacks o Using Fonts on Network Drives o Using Fonts on CDROMs o Views of Fonts o FontFolder Settings Notebook ═══ 6. Removing FontFolder ═══ FontFolder can be removed from the system by finding and deleting the following files o FONTFOLD.EXE o FONTFOLD.HLP o FONTFOLD.INI o MLIBnnn.FF2 o MLIBnnn.BAK o FNTPKnnn.FP2 o FNTPKnnn.BAK and, depending on what FontFolder features were used, o REGFONTS.LOG o MAPDRIVE.LOG If versions 1.0 or 1.1 of FontFolder were used, there may also be data files of the following type o MASTLIB.FF1 o MASTLIB.BAK o MASTLIB.OLD o FNTPKnnn.FP1 o FNTPKnnn.BAK o FNTPKnnn.OLD In addition, there may be an empty subdirectory, FFCACHE, which should be deleted. If the user has never changed the default settings, all of these files and the FFCACHE subdirectory should be in the same directory. If the user specified other paths for the FONTFOLD.INI file or for the data files, these paths must be searched as well. If the FontFolder Settings for these paths were changed multiple times while FontFolder was installed, there could be copies of these files in each of these paths. If a path other than the default was specified for FONTFOLD.INI, this information was recorded in OS2.INI under the application name FontFolder. This entry can be removed from OS2.INI by resetting the FONTFOLD.INI path to the same directory as FONTFOLD.EXE using the Settings Notebook. There are no other changes that FontFolder makes to the system. ═══ 7. Creating and Using FontFolder Libraries ═══ FontFolder is built around the concept of Libraries in which the user registers all the fonts that are available for installation in OS/2. Once a font is registered with a Library, the user can install it in OS/2 with simple point and click operations from the FontFolder main window. When a font is registered with a Library, FontFolder creates an entry which contains both the name of the font (e.g. Courier Bold) and the fully qualified path to the font files. If the source for the files is a removable medium such as a diskette, FontFolder copies the files to a user-designated directory on a local hard drive at the time of registration. It is this hard drive location that is stored in the Library. When a Library font is installed in OS/2 from a local hard drive, no files are moved. FontFolder simply provides OS/2 with the information on where to find the font files. Similarly, when such a font is removed from OS/2, no files are moved. Only the entries in OS/2 referring to these files are deleted. This means that the user has complete freedom in organizing font files in whatever directory organizations make sense. FontFolder also allows the user to have access to font files that reside on Network Drives and CDROMs registered with a Library. o Network Drives In this case, the network location of the font files is stored in the Library. FontFolder automatically manages moving the font files to and from a temporary local hard drive location when a font is installed in or removed from OS/2. o CDROMs In this case, the CDROM location of the font files is stored in the Library, including the Volume ID of the CDROM. FontFolder automatically manages moving the font files to and from a temporary local hard drive location when a font in installed in or removed from OS/2. If the correct CDROM is not in the CDROM drive, FontFolder will prompt the user to insert the CDROM, using a user-supplied identification label for the CDROM. FontFolder allows the user to create up to 100 separate Libraries. The user selects a Library to use, called the Current Library, using the FontFolder Libraries menus. Once a Library is made the Current Library, the user is free to register and remove fonts from the Library and carry out all other FontFolder operations independent of the contents of the other Libraries. One common use for the multiple Library facility is to create a separate Library for each font CDROM. This allows the user to freely browse and install fonts from a CDROM without having to constantly shuffle between different CDROMs. The user can also create specialized libraries that contain fonts with common properties, for example all the user's script fonts. The same font may be registered multiple times with different libraries. In addition to the Library lists of fonts, FontFolder provides the user the facility to create up to 100 named collections of Library fonts called FontPacks. A FontPack can be treated just like a single font for the purpose of installing it in OS/2 or removing it from OS/2, and FontFolder will handle the installation and removal of all the fonts in the FontPack. A FontPack may contain fonts from multiple Libraries. Uninstalling a font from OS/2 has no effect on the Library entry. Operations on Libraries are done by first selecting Libraries from the main window menu bar or opening the popup menu associated with the Library listbox. The popup menu is opened by clicking Mouse Button 2 anywhere in the Library listbox. Throughout this documentation these alternative ways of accessing the Libraries menu items will be referred to collectively as the Libraries menus. For additional details see the following: o Creating a Library o Opening a Library o Maintaining a Library o Deleting a Library and the following advanced Library topics: o Importing and Exporting a Library o Creating a Custom Library o Creating and Using a Pre-registered Library ═══ 7.1. Creating a Library ═══ On the first startup FontFolder generates an initial Library by copying the list of fonts already installed in OS/2 to the Library list and naming it the Base Library. From this point on the user is free to add or delete entries in this Library independent of what fonts are actually installed in OS/2. When FontFolder is closed for the first time it will offer the user the opportunity to save this Library. If the user chooses this option, the Base Library will be saved in a file called MLIB000.FF2. If the user declines, FontFolder will recreate a Base Library based on the currently installed fonts on the next startup. The normal action would be to Save the Library. In addition to this Base Library, the user may create up to 99 additional libraries (100 total). To create a new library, the user chooses New Library from the Libraries menus. A newly created library will be empty and will be given the name Untitled, which will appear above the Library listbox in the main FontFolder window. The user may register and delete fonts for this library as described in the section on Maintaining a Library . The user may Save the Library at any point, giving it a user-supplied name consisting of any 31 character string. When the Library is saved, FontFolder will assign a filename of the form MLIBnnn.FF2, where nnn will be the first unused 3-digit number available in the range 000 to 099. As libraries are created and deleted, FontFolder will reuse the file names of deleted libraries, so there are always a total of 100 library file names available. ═══ 7.2. Opening a Library ═══ Once multiple libraries are created, FontFolder offers the option of switching between libraries using the Open Library option from the Libraries menus. When a library is open, it is referred to as the Current Library, its name is displayed above the Library listbox in the main FontFolder window, and the list of fonts registered with the Library is displayed in the Library listbox. With the exception of Deleting a Library and some FontFolder Utilities, FontFolder operations are performed only on the Current Library. When Open Library is selected, FontFolder checks to see if changes have been made to the Current Library first, and if they have, offers the option to Save the Current Library before changing Libraries. ═══ 7.3. Maintaining a Library ═══ Operations on Libraries are done by selecting the appropriate item from the Libraries menus Most Library maintenance operations are performed on the Current Library, which is the Library displayed in the Library listbox in the main FontFolder window. The name of the Current Library is display above this listbox. To perform maintenance operations on a library, the user must first make it the Current Library by selecting it using the Open Library menu item on the Libraries menus. The Libraries menus allow the user to perform the following: o Register fonts o Delete fonts o Create a new Library o Open an existing Library o Save the Current Library to disk o Revert to a previous version of the Current Library o Import a Library o Export a Library o Delete a Library o Open a Font Information window that displays the information stored in the Current Library for any Library font along with sample text for the font. The user has the option of Saving the Current Library at any point. If the Current Library has been changed but not saved when FontFolder is closed, the user is prompted as to whether the Library changes should be saved or discarded. FontFolder keeps one level of backup of each Library file, and there is provision for the user to revert to the backup copy of the Current Library. ═══ 7.4. Deleting a Library ═══ Use Delete Library from the Libraries menus to delete a Library from FontFolder. The Current Library can not be deleted and the last library can not be deleted. When a Library is deleted, the information on all fonts registered with that library is lost (unless they are also registered with another library), the file MLIBnnn.FF2 associated with the library is deleted, and the filename MLIBnnn.FF2 is returned to the pool of available Library filenames. No font files are deleted by this operation. If a font is installed in OS/2 when the only Library in which it is registered is deleted, the font will continue to be available for use in OS/2 as long as it is installed. However, if the font is uninstalled, then it can not be reinstalled until it is re-registered with one of the FontFolder Libraries. Note: While it is possible to delete the library named Base Library, it is recommended that the user not do this. FontFolder treats the name Base Library as special, using it as its first recourse for recovery from certain error conditions. If FontFolder can not find any library named Base Library, it will attempt to find and use another library and should be able to recover to the same extent as is possible when the Base Library exists. However, maintaining a library named Base Library will offer the best chance for recovery. ═══ 7.5. Importing and Exporting a Library ═══ In addition to creating Libraries directly in FontFolder, it is possible to Import an already created Library and use it in FontFolder, and to Export an existing Library in a special installation neutral format for use on other sytems. The latter feature is intended for use with font CDROMs to create Pre-registered Libraries for these CDROMs. Import a Library To Import a Library choose Import Library from the Libraries menus. FontFolder offers three options for Importing: o Importing an Exported Library (FX2 file) FontFolder can import a library created by Export Library (See below) in a special installation neutral format. Files for these exported libraries have the extension .FX2, and are intended for use with the Pre-registered Library capability of FontFolder in connection with font CDROMs. When an exported Library is imported, FontFolder will restore the CDROM drive letters for the CDROM fonts in the Library and prompt the user to insert the relevant CDROM in the drive so that the correct Volume Serial Number for this CD can be read. o Importing Other Libraries FontFolder can import any other valid Library file as well. This feature can be used to move Library files between systems, provided the font files exist in the same directories on both systems. It can also be used to restore backed up copies of Library files after the Library has been intentionally or accidentally deleted. o Importing FontPacks FontFolder can import an existing FontPack as a Library. Libraries and FontPacks have identical data file formats. The essential difference between a Library and a FontPack is how they behave when installing fonts in OS/2. In a FontPack, all the fonts are always installed, and the FontPack is listed in the Installed Fonts List, whereas in a Library it is possible to install fonts individually. For an example of using the capability to Import a FontPack see Creating a Custom Library When a Library is imported the name of the Library is added to FontFolder's list of Library names (the user is prompted if there is a conflict with an existing Library name), and a Library file with an unused filename of the form MLIBnnn.FF2 is created. This file is created in the path specified for the FontFolder data files in the Settings Notebook, and is independent of the original import file. The original import file is not changed in any way. Note: The user is not given the option to change the Library name at the time the Library is imported (unless there is a name conflict). If the user wishes to change the Library name, this can be done after the Library is imported by first Opening the Library and then using the Saving the Library as.. option from the Libraries menus to give the Library a new name. After doing this, the original Library with the unwanted name can be deleted with Delete Library . Exporting a Library To Export a Library choose Export Library from the Libraries menus . This facility is intended for use with font CDROMs to create a Pre-registered Library for a CDROM that can then be imported in to FontFolder on any other system, so that the CDROM may be used without having to go through the task of registering all the fonts on the CDROM, which can be quite time consuming for CDROMs containing hundreds of fonts. When an existing Library is exported, a special form of the Library data file is created with all the drive letter information for CDROM font files removed from the file in a way that allows it to be easily replaced with the appropriate CDROM drive letter(s) when the Library is imported on a different system. The CDROM Volume Serial Number is also removed since this can be different for different copies of the same CD. A new data file is written, without affecting the existing library data file, and given an extension of .FX2 which FontFolder uses to find the file when it is later imported. Note: The .FX2 extension is only a convenience to allow users to quickly find these files when importing them. FontFolder will export them and import them correctly no matter what the extension. Normal operation of the export facility is to use it only to export Libraries consisting exclusively of fonts from a single CDROM, but this is not enforced as a restriction. However, the export operation only modifies drive letter information for CDROM font files. If the Library contains fonts residing on hard drives the drive letters will be retained. This could create problems if the same fonts do not exist in the same locations on the system that imports the file. ═══ 7.6. Creating a Custom Library ═══ There are cases where the user wishes to create a Custom Library that gathers in one place fonts that have already been registered in other Libraries. For example, the user may have fonts from multiple CDROMs organized into a separate library for each CDROM and wishes to have an additional Library that gathers together in one place all the fonts that share a common characteristic such as all the script fonts, all the pi fonts, all the Cyrillic fonts, etc.. These fonts will typically be spread across all the CDROM-specific libraries the user has already created. It is always possible to create such a Custom Library from scratch by individually registering the desired fonts with the Library as described in Creating a Library. However, there is an easier way to do this using FontFolder's FontPack and Library Import facilities. Steps to Create a Custom Library In the case where the fonts have already been registered in other Libraries, the user can easily assemble a set of fonts in to a new Custom Library by the following steps: 1. Step 1 Open a New FontPack. 2. Step 2 Open the first Library that contains fonts that should be included in the Custom Library. 3. Step 3 Select the Library fonts that are to be included in the Custom Library and add them to the FontPack. Hint: To easily find the fonts to be included in the Custom Library, open the Font Information Window and browse the fonts until an appropriate font is found. Without closing the Font Information Window, click the install button to add the font to the FontPack, and then continue browsing for more fonts to add. 4. Step 4 Repeat Steps 2 and 3 for each Library containing fonts to be included in the Custom Library. 5. Step 5 Save the FontPack, giving it the name you wish the Custom Library to have. Close the FontPack. Note: There is a restriction here in that a FontPack name can be at most 29 characters while a Library name can be 31 characters. If this presents a problem, give the FontPack an arbitrary 29 character name and then change the Library name to the desired name after the FontPack has been imported as a Library. See the Note in Importing a Library for how to change a Library name. 6. Step 6 Import the FontPack as a Library. 7. Step 7 Delete the FontPack unless there is another reason to retain it. The above procedure is much faster (because no font files have to be opened) and more convenient (because the user can see the font names and browse the fonts to determine which ones are appropriate) than using the font registration process. Some Useful Custom Libraries The following are some suggestions for useful collections of fonts that can be assembled in to Custom Libraries. It is by no means an exhaustive list: o Script Fonts o Pi Fonts (Symbols and other miscellaneous drawings) o Monospaced Fonts o Specialty Fonts (Bar Codes, OCR Fonts, etc.) o Language related Fonts (Cyrillic, Eastern European, Hebrew, etc.) ═══ 7.7. Creating and Using a Pre-registered Library ═══ Creating a Library by registering fonts with FontFolder is not a difficult process. However, for CDROMs that can contain hundreds of fonts (e.g. the BitStream 500 Font CDROM or the Corel 4 or Corel 5 font CDROMs) the process can be quite lengthy just because of all the work that the system must do to find all the font files and open them to extract the font name. Even on a fast system this can take 15 or 20 minutes for the larger CDROMs. Since these CDROMs are identical for all users, there is no reason this needs to be done more than once. FontFolder provides a way to transform a Library created for a font CDROM in to a Pre-registered Library for this CDROM that can be shared with other users. A Pre-registered Library is like any other Library except that it has been processed by FontFolder to remove the drive letter information from all the Library File CDROM font entries in a way that permits the drive letter to be easily re-inserted when the Library is transferred to another user's system. The CDROM Volume Serial Number information is also removed since this can be different for different copies of the same CDROM. This is also done in a way that FontFolder can restore the correct Volume Serial Number when the Library is imported in to another system. Since these are the only ways in which a font CDROM Library will differ from one system to another, the resulting Pre-registered Library is portable across systems. Note: The Pre-registered Library feature is intended for use only with font CDROMs, and can not be easily used to move other Libraries across systems. In particular, no action is taken on drive letters for fonts residing on hard drives, so this system-specific information is still present if the Library contains any registered hard drive fonts. Unless the user knows that the hard drive font directory structures are identical on two different systems, Libraries containing hard drive fonts should not be moved across systems. Creating a Pre-registered Library To create a Pre-registered Library for a Font CDROM select Export Library from the Libraries menus and select the Library to be Exported. This can be the Current Library or any other existing Library. FontFolder will create the appropriate Export Library file and present the standard OS/2 File Save dialog to allow the user to specify the file name and location. The default for the file extension is FX2 which will make it easy for the user importing the Pre-registered Library to locate the file. This is only a convention, and FontFolder will import and export the Pre-registered Library correctly no matter what extension is used. Using a Pre-registered Library To use a Pre-registered Library import the FX2 file for the Library by selecting Import Library/FX2 format library from the Libraries menus. If FontFolder already knows about this CDROM, no further interaction is required to create the Library. If this CDROM has not been seen before by FontFolder, it will ask you to identify the drive letter for the drive you intend to use for mounting this CDROM. FontFolder will also prompt you to insert your copy of the CDROM in the specified drive so that the Volume Serial Number for your copy can be read and added to the Library file. FontFolder will take care of constructing and saving a proper Library file and will add the Library name to the list of available Libraries. The Library can then be accessed via the Open Library menu item. At the time of release of FontFolder 1.2 the following Pre-registered Libraries were independently released as zipfile packages identified by an FZ2 (zipped FX2) extension. Each package contains the Pre-registered Library as a filename.FX2 file and an accompanying filename.TXT file described below: o Bitstream 500 Font CDROM o CorelDraw 2.5 for OS/2 CDROM fonts o Hobbes October, 1993 CDROM fonts In addition to the actual Library FX2 file, each Pre-registered Library ships with an accompanying TXT file that includes the following information: o The name of the CDROM from which the fonts were registered including version number, date or any other information necessary to specifically identify the CDROM; o The name and e-mail id of the creator of the Library so that the author can be contacted if users have problems or questions; o The date on which the Library was created; o The fonts excluded from the Library, if any, by the registration process as reported in FontFolder's REGFONTS.LOG file. This should only occur in registering a font CDROM if the CDROM contains more than one font with an identical 31 character font name. This may be because the same font has been included on the CDROM twice with different file names (see the example below for the Hobbes October 1993 CDROM) or because the font names for two legitimately different fonts are identical through the first 31 characters, which is all that OS/2 uses. Users of the Pre-registered Library can use this information to understand what CDROM fonts are not included in the Library, and to substitute an excluded font for the included one if desired. o The result of screening all the registered fonts, using FontFolder's font browsing capability, to identify and remove from the Library any fonts that do not display properly or cause OS/2 errors when displayed in FontFolder's Font Information Window. There are a small number of properly constructed fonts that OS/2 has had a problem with in versions prior to OS/2 Warp (there are reports that the problem is corrected, or at least not as destructive in Warp, but I have not yet been able to test or otherwise verify this). In addition, there is always the possibility of a genuinely "bad" font getting included on a CDROM. (This is unlikely for "professional" font CDROMs like the Bitstream 500 Font CDROM, but could possibly occur on "collection" CDROMs like the Hobbes CDROM. I have personally never seen this occur.) By screening for these fonts and removing them, the Library creator has made a best-efforts attempt to save other users the work of doing this and to protect them from these fonts. The list of fonts excluded for this reason is included so that users who wish to do so may test these fonts for themselves. User-created Pre-registered Libraries User's who own font CDROMs are encouraged to create and share Pre-registered Libraries for these CDROMs with other users. When doing so, the user is strongly urged to follow the conventions described above to create an accompanying TXT file containing the information described, and to name the Library, the text file and the zip file using the extensions indicated. If the user has not screened the fonts for problem fonts, this should be so stated in the TXT file. Example of a TXT file for a Pre-registered Library The following is the TXT file that is shipped with the Pre-registered Library for the Hobbes October 1993 CDROM Fonts Hobbes October 1993 CDROM Fonts Notes on preregistered library: 1. 15 fonts were excluded because they had duplicate 31 character names. The relevant portion of the log file follows: Problem registering N:\PSFONTS\ARNOLD.PFB Unable to register font because the font name ArnoldBoecklin is already registered Previously registered font is N:\PSFONTS\AB______.AFM Problem registering N:\PSFONTS\CALIG___.PFB Unable to register font because the font name Caligula is already registered Previously registered font is N:\PSFONTS\CALIGULA.AFM Problem registering N:\PSFONTS\CRILLEE.PFB Unable to register font because the font name Crillee is already registered Previously registered font is N:\PSFONTS\CRILL.AFM Problem registering N:\PSFONTS\DRAGONWI.PFB Unable to register font because the font name Dragonwick is already registered Previously registered font is N:\PSFONTS\DRAGON.AFM Problem registering N:\PSFONTS\GOCMSEQ_.PFB Unable to register font because the font name GoodCityModern is already registered Previously registered font is N:\PSFONTS\GOCMASE_.AFM Problem registering N:\PSFONTS\KLINZHAI.PFB Unable to register font because the font name Klinzhai is already registered Previously registered font is N:\PSFONTS\KLINZ.AFM Problem registering N:\PSFONTS\LI______.PFB Unable to register font because the font name Livia is already registered Previously registered font is N:\PSFONTS\LIVIAOS2.AFM Problem registering N:\PSFONTS\LUXEMBRG.PFB Unable to register font because the font name Luxembourg Normal is already registered Previously registered font is N:\PSFONTS\LUXEM.AFM Problem registering N:\PSFONTS\MURIE___.PFB Unable to register font because the font name Muriel is already registered Previously registered font is N:\PSFONTS\MURIEL.AFM Problem registering N:\PSFONTS\POSTCRY_.PFB Unable to register font because the font name PostCrypt is already registered Previously registered font is N:\PSFONTS\POSTCRYP.AFM Problem registering N:\PSFONTS\RUDELSBE.PFB Unable to register font because the font name Rudelsberg is already registered Previously registered font is N:\PSFONTS\RUDEL.AFM Problem registering N:\PSFONTS\SCRIPTIT.PFB Unable to register font because the font name Script Normal Italic Normal is already registered Previously registered font is N:\PSFONTS\SCRIPT.AFM Problem registering N:\PSFONTS\STFRANCI.PFB Unable to register font because the font name SaintFrancis is already registered Previously registered font is N:\PSFONTS\SAINTFRA.AFM Problem registering N:\PSFONTS\TRIBECA.PFB Unable to register font because the font name Tribeca is already registered Previously registered font is N:\PSFONTS\TRIBE.AFM Problem registering N:\PSFONTS\UPWS____.PFB Unable to register font because the font name UpperWestSide is already registered Previously registered font is N:\PSFONTS\UPPERWES.AFM 2. 6 fonts were excluded because they did not display properly in OS/2 or caused a problem FUTBLK_.* Futuri-Black MACHINE1.* Machine Block SHALOSTI.* ShalomStick /* Problem may be that */ SHALOSCR.* ShalomScript /* these are Hebrew fonts */ SHALOOLD.* ShalomOldStyle /* that need special setup */ UPPERWES.* UpperWestSide Library created on 11/10/94 by Cliff Cullum [75013,1701] 75013.1701@compuserve.com Disclaimer: To the best knowledge of the author this library is an accurate representation of the fonts on the subject CDROM, and the information on fonts excluded is accurate. However, no warranties are given that there not errors in the library or information supplied, and no warranty is given that the fonts included in the library will function correctly with OS/2. ═══ 8. Installing Fonts in OS/2 ═══ In order to install a font in OS/2 the font must first be registered with the Current Library. To install one or more fonts in OS/2, first mark the fonts to be installed in the Library list. Then click on the Install button. Multiple fonts are marked/unmarked by holding down the Ctrl key while marking. A consecutive set of fonts in the list can be marked by dragging the mouse in the list. See Selecting items in listboxes for additional information. Once a font is installed in OS/2 from FontFolder it is immediately available for use by applications. Some applications may need to be restarted in order to see the newly installed fonts. A few applications manage their own font lists. These applications may or may not see all fonts installed in OS/2. If a newly installed font does not show up in your application, try opening the OS/2 Font Pallete and looking in the list of fonts shown via the Edit font button. If the font shows up in the Font Pallete list it is properly installed in OS/2. In this case you should contact your application vendor to find out how they are managing fonts. In addition to this basic mechanism for installing fonts in OS/2, FontFolder provides a means to create a named collection of Library fonts called a FontPack. All the fonts in a FontPack can be installed in a single action by selecting and installing the FontPack from a FontPacks listbox in a manner identical to that used to install a single font. See Using and Maintaining FontPacks for additional information. ═══ 9. Removing Fonts from OS/2 ═══ To remove one or more fonts from OS/2, first mark the fonts to be removed in the OS/2 Installed Fonts listbox. Then click on the Remove button. Multiple fonts are marked/unmarked by holding down the Ctrl key while marking. A consecutive set of fonts in the list can be marked by dragging the mouse in the list. See Selecting items in listboxes for additional information. In addition to this basic mechanism for removing fonts from OS/2, FontFolder provides a means to create a named collection of Library fonts called a FontPack. All the fonts in a FontPack can be removed in a single action by selecting and removing the FontPack from the OS/2 Installed Fonts listbox in a manner identical to that used to install a single font. See Using and Maintaining FontPacks for additional information. Removing fonts from OS/2 is a complicated operation. It is best understood by thinking of OS/2 keeping two lists of fonts. o The first OS/2 list is the long term list, kept in OS2.INI, which tells OS/2 which fonts to load on bootup. FontFolder always updates this list when a font is removed from OS/2, so the font will be gone on the next OS/2 bootup. o The other OS/2 font list is the list of fonts currently loaded and available in memory. This is the font list one sees from the OS/2 Font Palette or when opening the Font Dialog in an application that uses the standard OS/2 Font Dialog. Since multiple applications can be running in OS/2 simultaneously, OS/2 must protect one application from another application unloading a font that the first application is currently using. OS/2's mechanism for accomplishing this protection is to only permit a font to be unloaded by the process that loaded it. If an application is started, loads a font, is stopped, and then restarted, it is now running a difference process so it can no longer unload the font it originally loaded. On bootup, OS/2 loads all the fonts listed in OS2.INI in the Workplace Shell process. Thus only applications which run in the Workplace Shell process can unload these fonts while OS/2 is running. The OS/2 Font Palette is such an application; FontFolder is not. Therefore FontFolder can not remove these fonts from the list of fonts currently available in memory. FontFolder takes the view that if the user said to unload the font, it should be shown in the OS/2 Installed Fonts listbox as unloaded, so the OS/2 Installed Fonts listbox is updated and the font removed from the list even if FontFolder was unable to unload the font from OS/2 memory. As noted above, the font will be gone the next time OS/2 boots because FontFolder updates OS2.INI. Successfully Managing Fonts using FontFolder The strategy for successfully managing fonts using FontFolder is to keep loaded in OS/2 only those basic fonts that should always be available to all applications. When OS/2 boots, these should be the only fonts loaded by the Workplace Shell process. Then as fonts are needed, they can be loaded by FontFolder and then unloaded by FontFolder when they are no longer needed. For this to be successful, FontFolder must be kept loaded (not stopped and restarted). For users who expect to be regularly loading and unloading a large number of fonts during a single OS/2 session, it makes sense to include FontFolder in the OS/2 Startup Folder. ═══ 10. Font Information Window ═══ The Font Information Window is an independent PM window that displays information and sample text for any font shown in the listboxes in the FontFolder main window. To open the Font Information Window window, either double-click on a font in one of the listboxes, or highlight a Library font and then select Font Information from the Library menus. The Font Information Window shows the Font Name and Font Pathname of the selected font and also displays sample text for the selected font. The sample text display can be varied in content and point size by the user. The content can be switched between a user-supplied text string up to 512 characters in length and a display of the ASCII character set. If a character in the sample text is highlighted, clicking Mouse Button 2 in the sample text window will pop up the ASCII code (decimal) for the highlighted character. All main window functions are available while the Font Information Window is open. For example, it is possible to review a font in the Font Information Window and then either install the font in OS/2 or delete it from the Current Library without having to close the Font Information window. Both the size and location of the Font Information Window can be changed by the user. Any size changes in the Font Information Window are taken up by the Sample Text window, so the user can adjust the area available for displaying sample text (for instance to accomodate the display of larger point sizes). The font displayed will change as the selection in the main window listboxes is changed, so the user can browse the fonts by leaving the Font Information Window open while changing the selected font by clicking in one of the main window listboxes. When changing the font selection to a different listbox, if the font being selected is already highlighted from an earlier selection, it is necessary to double-click on the font in order to re-select it. WARNING! Browsing fonts can use considerable memory. The first few fonts browsed will consume around 50K bytes per font. Continued browsing will consume an additional 10-15K bytes per font. Browsing hundreds of fonts can cause your swap file to grow by several megabytes. This memory is not released until FontFolder is closed (closing the Font Information Window does not release the memory). If you are short of swap file space, be careful how much font browsing you do! Changing the Content of the Sample Text Window The sample text can either be a user-defined text string or it can be a display of all the displayable characters in the font. The choice is controlled by radio buttons to the right of the sample text window. In UserText mode the text string can be modified by directly editing it in the sample text window. Changing the Point Size of the Sample Text The point size of the sample text can be changed via the spin button located to the right of the sample text window. The sizes available can range from 1 to 99 points, and can be modified by the user via the Settings Notebook. Displaying the ASCII code for a character While displaying the character set for the font, highlight a character and click Mouse Button 2 (default: right mouse button) to display the ASCII character code for the character. If multiple characters are selected, the code for the first selected character will be displayed. An easy way to highlight a single character is to set the Insert/Overwrite toggle (Insert key) to Overwrite. All changes made to the Font Information Window are stored for use in subsequent sessions. This includes size and position, user text string, point size and user text/character set selection. ═══ 11. Creating and Using FontPacks ═══ A FontPack is a named collection of fonts that can be installed and removed as a single unit. The user creates and manages FontPacks in much the same way as he or she manages the fonts installed in OS/2. Choosing New under FontPacks on the menu bar or from the FontPacks popup menu places FontFolder in FontPack Edit mode, which allows fonts to be added to and removed from the FontPack. In this mode the FontFolder main window changes the right hand listbox to display the FontPack Fonts listbox, which shows the fonts currently installed in the FontPack. Once the appropriate fonts have been installed in the FontPack, it can be saved by choosing Save or Save As from the menu bar or the FontPack Fonts popup menu. The user is prompted to give the FontPack a name, which can be any string up to 29 characters in length. Once it is named and saved, the FontPack is available for installation in OS/2. All currently existing FontPacks are listed in the FontPacks listbox in the FontFolder main window. To install a FontPack, the user highlights the FontPack name in the FontPacks listbox, and clicks on the Install button to the right of the FontPacks listbox. All of the fonts in the FontPack are installed in OS/2, and in addition the name of the FontPack is added to the OS/2 Installed Fonts listbox. The name is bracketed with special characters to signal that it is a FontPack, e.g. My FontPack. To remove a FontPack and all its fonts from OS/2, the user highlights the FontPack name in the OS/2 Installed Fonts listbox, and clicks on the Remove button. The FontPack and all its fonts are removed from OS/2. FontPack menu items can be found both under FontPacks on the main menu bar and on the popup menus for the FontPacks listbox and the FontPack Fonts listbox which appears as the listbox on the right side of the main window when in FontPack Edit mode. The popup menus each contain a subset of the main menu commands that are appropriate to the parent listbox. Throughout this Help material, this collection of menus is referred to as the FontPack menus. For further information on using FontPacks, see the following: o Installing a FontPack in OS/2 o Removing a FontPack from OS/2 o Creating a FontPack o Editing an existing FontPack o Saving a FontPack (Save and Save As) o Deleting a FontPack o Reverting a FontPack to the backup version o Quitting FontPack Edit mode ═══ 11.1. Installing a FontPack in OS/2 ═══ To install a FontPack in OS/2, first click on the FontPack name in the FontPacks listbox in the FontFolder main window to select the FontPack, and then click on the Install button to the right of of the FontPacks listbox. All of the fonts in the FontPack will be installed in OS/2. In addition, the FontPack name will be added to the OS/2 Installed Fonts listbox to indicate that the FontPack is installed. The name will be enclosed in angle brackets, Example If a FontPack named My FontPack is installed in OS/2, the OS/2 Installed Fonts listbox will contain an entry of the form My FontPack All installed FontPack names will appear at the beginning of the list in the OS/2 Installed Fonts listbox, before the individual font names. Note: If all the fonts in the FontPack are already installed in OS/2, the FontPack name will not be listed in the OS/2 Installed Fonts listbox. This presumption here is that since all the fonts were installed prior to installing the FontPack, the user would not want the fonts to be removed when the FontPack is removed. The only way to accomplish this is by not adding the FontPack name to the OS/2 Installed Fonts listbox. If the user wishes the name to be added (and the fonts to be removed when the FontPack is removed), first remove any one of the fonts contained in the FontPack from OS/2, and then install the FontPack. Since now one of the fonts in the FontPack is new, the FontPack name will be added to the OS/2 Installed Fonts listbox. ═══ 11.2. Removing a FontPack from OS/2 ═══ To remove a FontPack (and all its fonts) from OS/2, first click on the FontPack name in the OS/2 Installed Fonts listbox in the FontFolder main window to select the FontPack, and then click on the Remove button below the OS/2 Installed Fonts listbox. All of the fonts in the FontPack will be removed from OS/2. The FontPack name will also be removed from the OS/2 Installed Fonts listbox. Note: It is possible for a given font to be "installed" in OS/2 multiple times as a result of being installed as an individual font and/or being installed because it is part of one or more FontPacks. When a FontPack is removed from OS/2, all the fonts that are part of the FontPack are removed, even if a font has also been installed individually or as part of another FontPack. This does not cause a problem for FontFolder or OS/2, but it can cause the user a problem if he or she mistakenly believes the font is still installed. The list of installed fonts in the OS/2 Installed Fonts listbox is always correct, but the fact that a given FontPack is shown as installed can not be relied on in this case. It is a good idea when creating FontPacks to try as much as possible to avoid having the same fonts included in FontPacks which might be installed at the same time. If in doubt, the user can make certain all the fonts in a given FontPack are installed by installing the FontPack again. The FontPack does not have to be removed prior to reinstallation. ═══ 11.3. Creating a FontPack ═══ To create a new FontPack, click on New under FontPacks in the menu bar or in the FontPacks popup menu. The FontFolder main window will change to FontPack Edit mode, replacing the OS/2 Installed Fonts listbox in the right hand portion of the screen with the FontPack Fonts listbox. The text above the listbox changes to say Editing FontPack on the first line. The second line shows the name of the FontPack being edited. For a new FontPack the name shown is Untitled. The listbox shows the fonts currently installed in the FontPack. For a new FontPack the list is empty. Adding one or more fonts to the FontPack is accomplished in exactly the same way as installing fonts in OS/2. Select one or more fonts in the Library listbox by clicking on them, and then click on the Install button located adjacent to the Library listbox. The selected fonts will be added to the FontPack Fonts listbox. The user is free to change Libraries while adding fonts to a FontPack. The only restriction is that a single FontPack may contain fonts from at most 10 different CDROMs. To remove fonts from the FontPack, first select the fonts to be removed in the FontPack Fonts listbox, and then click on the Remove button below the listbox. Once the FontPack contains the desired fonts, the FontPack can be named and saved by clicking on either Save or Save As from the FontPack menus. Since the FontPack has not yet been named, both Save and Save As will display a dialog box where the user can enter a name for the FontPack. The name can be any text string up to 29 characters long. Spaces and other special characters are permitted, although it is recommended not to use backslashes (\) or the characters () and () as these have special meanings. Example Names Basic Fonts FontPack # 5 Calligraphic Fonts Spreadsheet Fonts Monthly Sales Report Fonts Once the name has been entered, click the OK button. The FontPack will be saved in the directory identified in the Path to FontFolder data files. See Saving a FontPack for more details. After saving the FontPack, the user can either quit FontPack Edit mode by choosing Close from the FontPack menus, or edit another FontPack by choosing New or Open from the FontPack menus or by double-clicking on an existing FontPack name in the FontPacks listbox. If the user chooses Close before saving the FontPack, the user will be prompted as to whether the FontPack should be saved before quiting. Choosing No will end FontPack Edit mode without creating the FontPack. ═══ 11.4. Editing an existing FontPack ═══ To edit an existing FontPack, either first highlight the FontPack in the FontPacks listbox and then select Open from the FontPack menus, or else double-click on the FontPack in the FontPacks listbox. The FontFolder main window will change to FontPack Edit mode, replacing the OS/2 Installed Fonts listbox in the right hand portion of the screen with the FontPack Fonts listbox. The text above the listbox changes to say Editing FontPack on the first line. The second line shows the name of the FontPack being edited, and the listbox shows the fonts currently installed in the FontPack. When in FontPack edit mode, you can also change to editing a different FontPack by double-clicking on the new FontPack name in the FontPacks listbox or choosing New or Open from the FontPack menus. Adding one or more fonts to the FontPack is accomplished in exactly the same way as installing fonts in OS/2. Select one or more fonts in the Library listbox by clicking on them, and then click on the Install button located adjacent to the Library listbox. The selected fonts will be added to the FontPack Fonts listbox. The user is free to change Libraries while adding fonts to a FontPack. The only restriction is that a single FontPack may contain fonts from at most 10 different CDROMs. To remove fonts from the FontPack, first select the fonts to be removed in the FontPack Fonts listbox, and then click on the Remove button below the listbox. Once the FontPack editing is complete, the FontPack can be saved by clicking on Save in the FontPack menus. If the user wishes to change the name of the FontPack, this can be done by clicking on Save As in the FontPack menus. A dialog box will prompt for a name for the FontPack. Once a name is supplied, clicking the OK button will save the FontPack with the new name. The old FontPack will still be available under the original name. If the old FontPack is no longer wanted, it can be deleted (See Deleting FontPacks). After saving the FontPack, the user can either quit FontPack Edit mode by choosing Close from the FontPack menus, or edit another FontPack by choosing New or Open from the FontPack menus or by double-clicking on an existing FontPack name in the FontPacks listbox. If the user chooses Close before saving the FontPack, the user will be prompted as to whether the FontPack should be saved before quiting. Choosing No will end FontPack Edit mode without saving the changes to the FontPack. ═══ 11.5. Saving a FontPack (Save and Save As) ═══ When in FontPack Edit mode, a FontPack can be saved by clicking on either Save or Save As in the FontPack menus. Save is used to save an already existing FontPack under its present name. Save As is used to either save a new (as yet unnamed) FontPack, or to save an existing FontPack under a new name. If Save is clicked for a new FontPack, Save As will be invoked instead. Once the FontPack has been saved, the user is returned to FontPack Edit mode. The name of the FontPack currently being edited shows above the FontPack Fonts listbox. If Save As was chosen and the FontPack name modified, the FontPack being edited will be the one named in Save As. Save Clicking on Save for an existing FontPack will immediately save the current contents of the FontPack Fonts listbox to the file corresponding to the FontPack name. The existing version of the file will first be saved as a backup version. To access the backup version of the FontPack, see Reverting a FontPack to the backup version. If the FontPack has not yet been named, clicking on Save will invoke Save As instead. Save As Clicking on Save As opens a dialog box which prompts the user to provide a name for the FontPack. If the FontPack has not yet been named, Untitled will appear in the entry field already highlighted so that it can be replaced. A FontPack can not be saved with the name Untitled. An attempt to do so will be rejected. The user can enter any text string of up to 29 characters. Spaces and other special characters are permitted, although it is recommended not to use backslashes (\) or the characters () and () as these have special meanings. Example Names Basic Fonts FontPack # 5 Calligraphic Fonts Spreadsheet Fonts Monthly Sales Report Fonts Once the name has been entered, click the OK button. The FontPack will be saved in the directory identified in the Path to FontFolder data files. If the FontPack already has a valid name, this name will appear in the entry field. If the FontPack name is not modified, then clicking OK will cause the FontPack to be saved to the existing FontPack file as if the user had chosen Save instead of Save As. If the FontPack name is modified, then clicking OK will cause a new, additional FontPack to be created under the new name. This new name will be added to the FontPacks listbox. The original FontPack will still be available under its old name. If the user no longer wants this old FontPack, it can be deleted (See Deleting a FontPack). A FontPack file with a filename of the form FNTPKnnn.FP2 will be created to store the list of fonts in the FontPack. nnn is a number from 0 to 99 that is managed by FontFolder to assure that there is a unique filename for every FontPack. FontFolder is currently limited to a maximum of 100 simultaneously defined FontPacks. If the user chooses Cancel from the Save As dialog box, the user is returned to FontPack Edit mode and the FontPack is not saved. Changes to the FontPack name are discarded. ═══ 11.6. Deleting a FontPack ═══ To delete a FontPack, first select the FontPack to be deleted in the FontPacks listbox, and then click Delete in the FontPack menus. This operation can not be performed while FontFolder is in FontPack Edit mode. The user will be prompted to confirm that he or she wants to delete the indicated FontPack. Choosing Yes will delete the FontPack. Choosing No cancels the operation. Once a FontPack is deleted, all records of it are erased from FontFolder, the associated FontPack files are deleted, and the filename corresponding to the FontPack is returned to the FontFolder pool of unused FontPack filenames. ═══ 11.7. Reverting a FontPack to the backup version ═══ Once a FontPack has been saved at least twice, FontFolder maintains a backup copy of the FontPack file that contains the immediately previous version of the FontPack. If the user wants to revert to the previous version of the FontPack, this can be done by choosing Revert from the FontPack menus when in FontPack Edit mode (Revert is only available in FontPack Edit mode). The user will be prompted to confirm the operation. Choosing Yes will replace the existing version of the FontPack with the previous version. At the same time, the existing version will now be made the backup version, so another Revert will restore the FontPack to the original version. Choosing No from the confirmation dialog will cancel the operation. ═══ 11.8. Quitting FontPack Edit mode ═══ To quit FontPack Edit mode, choose Close from the FontPack menus. If the currently open FontPack has changed since the last Save or Save As, the user will be asked if the FontPack should be saved before quitting. Choosing Yes or closing the dialog box without making a choice will result in the FontPack being saved before quiting FontPack Edit mode. If the FontPack has not yet been named (name shown as Untitled), the Save As dialog procedure will be invoked. In this case choosing Cancel or closing the dialog box without making a choice will result in the FontPack not being saved. ═══ 12. Using Fonts on CDROMs ═══ To use a font in OS/2, OS/2 must either have or be able to create a font OFM file in the same directory as the font PFB file. Since no CDROMs today come with OFM files, this makes it necessary to copy the CDROM font files to a hard drive in order to use them with OS/2. This has left the user the choice of either consuming a large amount of hard drive space by moving all the font files to a hard drive location, or else manually managing the installation and removal of individual CDROM fonts as needed. FontFolder overcomes this limitation, allowing the user to directly see and browse all CDROM fonts directly from the CDROM and at the same time permitting the same simple point and click font installation available for hard drive fonts. FontFolder does this by accessing the fonts directly from the CDROM when browsing, and by automatically moving the required font files to a special directory call the FontCache when the fonts are installed in OS/2. When a CDROM font is later uninstalled from OS/2, FontFolder detects that the font files reside in the FontCache and automatically erases them. Thus hard drive space is only required for CDROM fonts while they are installed in OS/2, and this space is automatically managed by FontFolder. Note: There is a problem in OS/2 if a font is installed, removed and then reinstalled in OS/2 all in the same session. To circumvent this problem, FontFolder saves the OFM file in the Font Cache in case the user wants to reinstall the font in the same session. OFM files are typically around 5 KB, so the space consumed is minimal. These OFM files are erased when FontFolder is closed. The CDROM support is activated from the Settings Notebook by identifying the CDROM drive letter(s) on the Drives page and specifying a path to the FontCache on the Paths page. On a new FontFolder installation, the CDROM drive(s) will be identified automatically and a default FontCache path will be set. (It is recommended that these automatic settings be reviewed for accuracy and suitability before using the CDROM support.) If FontFolder has been upgraded from Version 1.1 or earlier, the user may need to open the Settings Notebook and make these changes manually to activate the CDROM support, depending on what options were chosen at the time of the upgrade. Registering CDROM Fonts Once the CDROM support is activated, the user interacts with CDROM fonts in much the same way as with any other fonts. The first task is to Register the CDROM fonts with a FontFolder Library. This can be done either with an existing library or the user may create a new library specifically for this CDROM. Because of the large number of fonts involved, most users will probably want to create a separate library (or several) for each CDROM. Also, FontFolder supports Pre-registered Libraries and provides several for common CDROMs, eliminating the need for the user to carry out the registration step. When the user first registers the fonts from a CDROM with FontFolder, the user is prompted to supply a User Label for the CDROM that can be any 31 character text string. This User Label will be used by FontFolder to identify the CDROM to the user when the CDROM is needed when dealing with the CDROM fonts. This User Label, along with the volume label and serial number of the CDROM is recorded in FontFolder and all fonts from this CDROM are tagged in a way that ties them to this volume information. The CDROM fonts are registered with the library from their locations on the CDROM; no font files are copied to the hard drive at this time. Note: FontFolder will enforce a unique identity for each CDROM. Only one User Label and one drive location for each CDROM is allowed. When FontFolder runs in to a previously registered CDROM, it will check this information and prompt the user to resolve any inconsistencies. Later, if the user decides to browse one of the fonts from this CDROM, FontFolder will detect that it is a CDROM font, retrieve the volume information, and check the CDROM drive associated with this volume (multiple CDROM drives are supported for those among us wealthy enough to have such luxury) to see if the correct CDROM is mounted, and if necessary prompt the user to insert the correct CDROM in the drive, using the User Label supplied. Installing CDROM Fonts in OS/2 When the users installs one or more fonts from a CDROM in OS/2, a procedure identical to that described for browsing fonts is followed in order to get the correct CDROM in the drive. Once that is accomplished, FontFolder will copy the font files for the selected fonts to a special FontCache directory on the hard drive (identified on the Paths page. in the Settings Notebook), and install them from there. When the user uninstalls the fonts, FontFolder detects that they are in the FontCache and deletes the files from the hard drive. CDROM fonts only take up hard drive space when the fonts are actually installed in OS/2. Note: This is the same mechanism used to support fonts on Network drives, and they share the FontCache. Organizing CDROM Fonts One logical way to organize CDROM fonts is to put them in their own library to avoid having to be constantly swapping CDROMs while browsing through the fonts in a given library. For CDROMs with very large nubers of fonts, it may even be more convenient to split a single CDROM across multiple libraries (e.g. font names beginning with A_H in one library, I-P in a second, and Q-Z plus non-alpabetic names in a third) to improve library loading performance. See Creating and Using Libraries for information on how to set up one or more libraries devoted to CDROM fonts. While an exclusive library devoted to a single CDROM often makes sense, there are times when it makes sense to mix fonts from multiple CDROMS in the same library (e.g. a custom library listing all the user's script fonts from all sources). FontFolder supports mixing hard drive fonts, network drive fonts and fonts from up to 10 CDROMs in a single library or FontPack. When operating on fonts in a mixed environment (e.g. installing or uninstalling them), FontFolder will sort the fonts so that all the fonts from a single CDROM are processed before it prompts to insert the next CDROM. ═══ 13. Using Fonts on Network Drives ═══ FontFolder permits users to keep their font libraries on Network Drives provided those drives have drive letter aliases. UNC Names are NOT SUPPORTED and will cause problems if used. If the user identifies certain drive letters as Network Drive Letters in the Settings Notebook, FontFolder will use the font files directly from the network drive while making sure that the fonts actually installed in OS/2 are available locally so that OS/2 can access them on bootup. FontFolder does this by maintaining a Font Cache on a local hard drive, designated by the user. When the user installs a font in OS/2, FontFolder examines the drive letter of the font file and if the drive has been designated as a network drive then FontFolder copies the necessary files to the Font Cache and installs them in OS/2 from that location. If the font is later removed from OS/2, FontFolder recognizes that the font being removed is a Font Cache font and deletes the font files from the Font Cache. Note: There is a problem in OS/2 if a font is installed, removed and then reinstalled in OS/2 all in the same session. To circumvent this problem, FontFolder saves the OFM file in the Font Cache in case the user wants to reinstall the font in the same session. OFM files are typically around 5 KB, so the space consumed is minimal. These OFM files are erased when FontFolder is closed. Identifying Network Drives to FontFolder: To use the Network Drives capability of FontFolder the user must identify a drive as a Network Drive on the Drives Page of the FontFolder Settings Notebook, and set the path to the FontCache on the Paths Page of the FontFolder Settings Notebook. Once this has been done, FontFolder will automatically manage all fonts on this drive as Font Cache fonts. ═══ 14. Settings Notebook ═══ FontFolder uses an OS/2 style Settings Notebook to maintain various application settings. The Settings Notebook can be opened either by clicking on Settings under Options on the main window menu bar, or by clicking Mouse Button 2 anywhere in the background of the FontFolder main window to bring up the Options popup menu. Settings are updated when the Settings Notebook is closed. For details of the pages in the Settings Notebook, see the following: o Paths page o Drives page o Other page ═══ 14.1. Settings Notebook - Paths Page ═══ The Paths page of the Settings Notebook contains the following entries: o Path to FontFolder INI file The first time FontFolder is closed it creates a file called FONTFOLD.INI and writes a set of information about its state to the file. Examples of the type of information are the size and location of the FontFolder windows on the screen, the Removable Drive Letters setting, and the location of the FontFolder data files. The default is to create this file in the same directory as FONTFOLD.EXE. However the user may want to locate the file in a different directory. For example, if FontFolder resides on a network server and is shared by several users, each user needs an individual copy of FONTFOLD.INI. In this case the user should change the path to the FontFolder INI file to point to a location on the local workstation. If the path to the FontFolder INI file is changed, an entry is made in OS2.INI specifying where this file is located. o Path to FontFolder data files FontFolder uses this path to determine where to store its data files. The default is for these files to reside in the same directory as the FONTFOLD.EXE file, but the user can change the path to point to another location. The Path to FontFolder data files information is stored in FONTFOLD.INI. The following files are kept in the directory specified in this path: - The Library data files, MLIBmmm.FF2, contain the font registration information for the fonts included in the Libraries. - The FontPack data files, FNTPKnnn.FP2, contain the font registration information for the fonts included in the FontPacks. - One backup copy of each of the above files, of the form MLIBnnn.BAK and FNTPKnnn.BAK respectively. One consideration in deciding where to locate the these files is their size. The size will vary depending on the number of fonts registered with the Libraries and the number of fonts in FontPacks. For the largest library that FontFolder can currently support the size of MLIBnnn.FF1 would be approximately 100KB. Since one backup copy, MLIBnnn.BAK, is also maintained, the maximum total space requirement for the Library files is approximately 200KB times the number of libraries. However, this assumes the font file information stored includes maximum length path names. In actual practice the Library files will probably only be 20-30% of this size. The FontPack files will normally be much smaller since they typically contain much smaller numbers of fonts. o Path to Font Cache If the user has identified any drive letters to FontFolder as Network Drives or CDROM Drives, then FontFolder will copy any font files located on these drives to a special directory on a local hard drive when these fonts are installed in OS/2. This is done so that OS/2 can access these font files when booting, since the network drive may not yet be available. This special directory is known as the Font Cache. If there are Network Drives or CDROM Drives identified to FontFolder, the user must provide a path to the directory on a local hard drive where the Font Cache should be located. It is not necessary to provide this path if no such drives are identified. The default is for the Font Cache to be located in the same directory as the FontFolder data files. FontFolder will create a subdirectory with the name FFCACHE at the location identified by this path. If the user adds FFCACHE to the end of the path supplied, FontFolder will use this path without adding an additional FFCACHE to the path. The FFCACHE directory will contain the font files for all fonts currently installed in OS/2 that originated on network drives or CDROM drives. As fonts are removed from OS/2, these font files will be erased from the FFCACHE directory. Each such font installed in OS/2 will typically have associated files that consume 50-100 KB of space. If the user maintains the number of fonts installed in OS/2 to around 50, then the maximum space needed for the Font Cache (assuming all installed fonts are in the Font Cache) will be of the order of 2.5-5 MB. Users should take this into account when deciding on where to locate the Font Cache. ═══ 14.2. Settings Notebook - Drives Page ═══ FontFolder takes special actions with a font depending on what kind of drive the font's files reside on. The first time FontFolder is started, it analyzes the drives attached to the system and automatically sets defaults for Removable Drive Letters, CDROM Drive Letters and Network Drive Letters. All other drive letters are treated as local hard drives. The user should review these settings and make appropriate changes if required. After the first startup FontFolder keeps these drives settings in the FONTFOLD.INI file and does not repeat the automatic analysis. The user can have FontFolder repeat the analysis and reset the drive letters to their defaults by clicking on the Default button on the Drives page. The Drives page of the Settings Notebook contains the following entries: o Removable Drive Letters When the user trys to register a font with the FontFolder Master Library, FontFolder needs to check whether the source location for the font files is on a removable medium such as a diskette. If the font files are on a removable medium, FontFolder must copy them to a location on a local nonremovable drive (a hard drive) as part of the registration process. OS/2 requires that fonts reside on a hard drive when installed. FontFolder uses the Removable Drive Letters entry to identify the removable drives. The user should enter the drive letters of all the removable drives on the system in the Removable Drive Letters entry field. The form of the entry is the drive letters with no spacing or other punctuation. Example: If the system has two diskette drives, A and B and a removable hard drive identified as F, then the Removable Drive Letters entry would be ABF Failure to properly identify the removable drives can lead to unpredictable results. o CDROM Drive Letters If a drive is identified to FontFolder as a CDROM Drive, fonts residing on this drive are first copied to the Font Cache before they are installed in OS/2. See Using Fonts on CDROM Drives for a detailed description of this feature. FontFolder uses the CDROM Drive Letters entry to identify CDROM Drives. The user should enter the drive letters of all the CDROM drives on the system in the CDROM Drive Letters entry field. The form of the entry is the drive letters with no spacing or other punctuation. Example: If the user has two CDROM drives L and M, then the CDROM Drives entry would be LM A CDROM drive should be identified to FontFolder as either a CDROM drive or as a Removable Drive. If a CDROM drive is not identified to FontFolder as one of the above, FontFolder will treat it as a local hard drive. This can lead to problems with fonts not being available in OS/2 if the correct CDROM is not in the CDROM drive, with no indication as to which CDROM is required. o Network Drive Letters If a drive is identified to FontFolder as a Network Drive, fonts residing on this drive are first copied to the Font Cache before they are installed in OS/2. See Using Fonts on Network Drives for a detailed description of this feature. FontFolder uses the Network Drive Letters entry to identify Network Drives. The user should enter the drive letters of all the network drives on the system in the Network Drive Letters entry field. The form of the entry is the drive letters with no spacing or other punctuation. Example: If drives L and N are remote drives on a LAN, then the Network Drives entry would be LN If a network drive is not identified to FontFolder as such, FontFolder will treat it as a local hard drive. This can lead to problems with fonts not being available in OS/2 if the network drive is not available during OS/2 bootup. ═══ 14.3. Settings Notebook - Other Page ═══ The Other page of the Settings Notebook contains the following miscellaneous FontFolder settings: o Copy Windows Font Files checkbox When the font that a user registers with a Library resides on a removable drive such as a diskette drive, FontFolder must copy the font files to a hard drive location in order for OS/2 to use them. If the Copy Windows Font Files checkbox is checked then FontFolder will also copy the appropriate Windows font files to the hard drive at the same time. o Sample Text Pt Sizes The Font Information Window allows the user to view sample text of fonts in various point sizes. The point size displayed is set via a spin button in the Font Information window. In turn, the sizes that appear on the spin button are determined by the entries in the Sample Text Pt Sizes setting. The user can enter a point size from 1 to 99 points (a point is approximately 1/72 of an inch) in each of the 10 entry boxes. As the spin button is changed, the point size entries in the Sample Text Pt Sizes field will be presented in left to right, top to bottom order. After the last entry is presented the spin button will cycle back to the first entry. ═══ 15. Utilities ═══ FontFolder comes with a set of utilities that assist in maintaining FontFolder's ini and data files. These utilities are accessible via Utilities on the main window menu bar. Only registered FontFolder users can access them. The utilities provided are: o Edit CDROM info o Map Drives ═══ 15.1. Edit CDROM info ═══ FontFolder stores in FONTFOLD.INI a set of basic information about all CDROMs it encounters. This information includes the name that the user wishes the CDROM to be known by, called the User Label, the Volume Label and Volume Serial Number from the CDROM, and the drive letter for the drive from which the CDROM will be used. This information allows FontFolder to associate individual font files with the CDROM on which they are stored. The information is collected the first time the CDROM is used with FontFolder. For the most part, this information can not be changed by use of the CDROM. The only exception to this is that FontFolder will detect if the user attempts to register a font from the CDROM from a drive other than that registered with the system, and offer the user the opportunity to reassign the drive letter for the CDROM. Otherwise, the system will use its internally stored information to override the CDROM information in the FontFolder data files at the time the data files are read in to the system. In this way, the FontFolder data files are maintained at a consistent level. While the above approach allows FontFolder to maintain consistency, it does not leave a direct avenue to change the CDROM information on those occasions when it is necessary to do so. Examples of such times are when the user has made changes to reassign the drive letter from which the CDROM will be used, when the user wishes to change the User Label that has been assigned, or when the user no longer intends to use a CDROM and would like to delete the information about it from the system. The Edit CDROM info utility provides a means of editing and deleting this information. Note: Adding CDROM information to FontFolder can only be done by using the CDROM with the system, either by registering fonts from the CDROM directly or by using a Pre-registered Library for the CDROM. The Edit CDROM info utility display all CDROMs known to FontFolder by their User Labels . The user may select a CDROM from the list and o Change the User Label o Change the Drive Letter assignment o Delete the CDROM information If the user attempts to delete the CDROM information, FontFolder will ask for confirmation and then check to see if this CDROM is used by the Current Library or a FontPack that is open for editing. If it is, the deletion will not be processed and the user will be informed. If the CDROM is not currently in use, FontFolder will delete the CDROM information from FONTFOLD.INI. This deletion is effective immediately. Note: While the information on a CDROM can be deleted as long as the CDROM is not in current use, if another Library or FontPack contains fonts from this CDROM, the information will be added back in to FONTFOLD.INI the first time a Library or FontPack requiring it is loaded. To completely delete all information about the CDROM, the user should first remove all fonts from this CDROM from all Libraries and FontPacks and then use Edit CDROM info to remove the CDROM information from FONTFOLD.INI. See the Edit CDROM info menu Help for details of how to use this utility. ═══ 15.2. Map Drives ═══ FontFolder stores a great deal of font-related information that contains specific drive letters such as the fully qualified paths to all of the font files registered in FontFolder libraries and the drive letters assigned to font CDROMs. In addition, OS2.INI stores the fully qualified paths to all the fonts currently installed in OS/2. This presents a problem for the user if a system change causes the drive letters assigned to some or all of the OS/2 drives to change. One common reason this can occur is if the user buys an additional hard drive. While it is possible to add hard drive capacity to the system without changing any drive letter assignments, it is much more common for some or all of the drive letters to change. This is particularly true of CDROM drives, which are assigned letters after the hard drives. The FontFolder Map Drives utility provides a convenient way for the user to reset all of the drive-related font information in both FontFolder, FontFolder's data files and OS2.INI's installed fonts list. The user specifies the drive letter mappings using a convenient A -> B description, entering as many drive mappings of this form as required. Once the required mappings are entered, FontFolder automatically updates all drive-related font information in OS2.INI's installed fonts list and in the FONTFOLD.INI file, and searches and updates all the known Library and FontPack data files. If changes are made to OS2.INI, FontFolder warns the user of this and recommends a shutdown and reboot since there are also internal OS/2 tables containing font information that are not accessible. Rebooting rebuilds these tables using the updated font information in OS2.INI. NOTES Bit-Mapped fonts The above only applies to the ATM fonts installed in OS/2 since that is all that FontFolder manages. Drive-related information in OS2.INI for the installed bit-mapped fonts is not changed. Since the only bit-mapped fonts most users will have are those installed with OS/2 in its own partition, this will not present much of a probem. However, users who have installed additional bit-mapped fonts will need to update their drive locations manually. Windows fonts An important consideration for users who are also running Windows applications under OS/2 is that the same drive letter mappings will need to be done for the Windows files that record drive locations for font files since FontFolder does not manage Windows fonts. Users will need to manage the reassignment of drive letters for these fonts using the Windows font management utilities. Limitations It is important to understand the limitations of this utility. o It is only capable of changing all drive letters for font-related files. It is intended for use when system reconfiguration has caused existing drive letters to change. o It can not be used to handle a case where the user wishes to move some font files to a different drive unless these are the only font files on that drive. o It does not handle directory location changes. Only drive letters are changed. o It does not do any actual movement of font files. It only changes the location entries in various tables that are used to find these files. See the Map Drives menu Help for details of how to use this utility. ═══ 16. FontFolder Menus. ═══ The menu items available in FontFolder are shown below. Most menu items are available either from the main menu bar or from popup menus associated with the main window itself and with the main window listboxes. Popup menus are activated by clicking Mouse Button 2 on the appropriate element. Throughout this documentation, these alternative means of accessing menu items will be referred to collectively as the (Menu name) menus, e.g. the Libraries menu items will be referred to as available on the Libraries menus. In the menu list below, the following symbols indicate which popup menu each menu item appears on: MW Main Window L Library Listbox FP FontPacks Listbox FPF FontPack Fonts Listbox (in Edit FontPacks mode) Click on the appropriate item for further information. o Libraries - Register Fonts L - Delete Fonts L - New Library L - Open Library L - Save Library L - Save Library as... - Revert Library L - Import Library L - Export Library L - Delete Library L - Font Information L o FontPacks - New FontPack FP FPF - Open FontPack FP - Save FontPack FPF - Save FontPack as... FPF - Delete FontPack FP - Revert FontPack FPF - Close FontPack FPF o Options - View MW - Settings MW o Utilities - Edit CDROM info MW - Map Drives MW ═══ 16.1. Libraries Menu ═══ The choices on the Libraries menu are o Register Fonts o Delete Fonts o New Library o Open Library o Save Library o Save Library as o Revert Library o Import Library o Export Library o Delete Library o Font Information ═══ 16.1.1. Register Fonts ═══ Select this menu item to register one or more fonts with the Current Library. When selected, a Register Fonts file dialog panel will appear which allows the user to select the drive and directory on which the fonts to be registered are located (the source location). Fonts are represented in the file dialog by their PFB file. Multiple font files may be selected. If the source location is on a removable drive an additional Copy Fonts to Hard Drive dialog panel will be displayed where the user can specify where to place the selected fonts on a hard drive (the target location). The user can also specify on this panel whether or not to copy any companion Windows font files that are found. If the operation is successful the fonts selected will appear in the Library list. This list must be saved to make these additions permanent. If any fonts can not be registered, a popup message will appear at the end of the registration operation identifying the number of fonts that could not be registered. Details of the problems registering the fonts will have been recorded in a REGFONTS.LOG file located in the path where the FontFolder data files are kept. The most common reasons for not being able to register a font are that either the font is already registered or that another font already registered has an indentical font name through the first 31 characters, which is all the characters OS/2 uses to identify the font. ═══ 16.1.2. Delete Fonts ═══ First mark one or more fonts in the Library list for deletion and then select this menu item from the Libraries menus to delete the marked fonts from the Current Library. FontFolder will prompt the user to confirm the deletion or cancel the operation. Upon confirmation the fonts will be deleted from the Library list. This list must be saved to make these deletions permanent. If no font has been marked before Delete Fonts is selected an error message is displayed and the operation is cancelled. No font files are deleted from the hard drive when a font is deleted from the Library list. Use the standard OS/2 file management facilities to delete the font files if desired. ═══ 16.1.3. New Library ═══ Select this menu item from the Libraries menus to create a new Library in FontFolder. If the Current Library has changed since the last time it was saved, FontFolder will offer an opportunity to save the Current Library before creating the new Library. Then FontFolder will clear the Library listbox and and change the title of the Current Library to Untitled. The user may now register fonts with this Library using the Register Fonts menu. This Library must be named and saved to be permanently created. FontFolder will offer the opportunity to do this if the user attempts to close either the Current Library or FontFolder itself before the Library has been saved. See Creating a Library for additional information. ═══ 16.1.4. Open Library ═══ Select this menu item from the Libraries menus to make a different Library the Current Library in FontFolder. If the Current Library has changed since the last time it was saved, FontFolder will offer an opportunity to save the Current Library before changing Libraries. Next FontFolder will present the Library Selection Dialog from which the user can choose a Library to open (make the Current Library) from among the existing libraries. Once the user has selected the Library to open, FontFolder will replace the title of the Library listbox in the main FontFolder window with the title of the selected Library, and the contents of the Library listbox will be changed to the fonts registered with the selected Library. This Library becomes the Current Library. The user may change Libraries via the Open Library command at any time. This includes changing Libraries while performing other tasks such as browsing fonts or while creating or editing a fontpack. See also Opening a Library. ═══ 16.1.5. Saving a Library (Save and Save as) ═══ Select this menu item from the Libraries menus to save a copy of the Current Library. list to disk. Save is used to save an already existing Library under its present name. Save As is used to either save a new (as yet unnamed) Library, or to save an existing Library under a new name. If Save is clicked for a new Library, Save As will be invoked instead. Once the Library has been saved, the user is returned to the FontFolder main window. The name of the Current Library shows above the Library listbox. If Save As was chosen and the Library name modified, the Current Library will be the one named in Save As. Save Clicking on Save for an existing Library will immediately save the current contents of the Library listbox to the file corresponding to the Library name. The existing version of the file will first be saved as a backup version. To access the backup version of the Library, see Reverting a Library to the backup version. If the Library has not yet been named, clicking on Save will invoke Save As instead. Save As Clicking on Save As opens a dialog box which prompts the user to provide a name for the Library. If the Library has not yet been named, Untitled will appear in the entry field already highlighted so that it can be replaced. A Library can not be saved with the name Untitled. An attempt to do so will be rejected. The user can enter any text string of up to 31 characters. Spaces and other special characters are permitted, although it is recommended not to use backslashes (\) or the characters () and (). Example Names Basic Library Bitstream 500 Font CDROM Script Fonts Once the name has been entered, click the OK button. The Library will be saved in the directory identified in the Path to FontFolder data files. If the Library already has a valid name, this name will appear in the entry field. If the Library name is not modified, then clicking OK will cause the Library to be saved to the existing Library file as if the user had chosen Save instead of Save As. If the Library name is modified, then clicking OK will cause a new, additional Library to be created under the new name. The original Library will still be available under its old name. If the user no longer wants this old Library, it can be deleted (See Deleting a Library). A Library file with a filename of the form MLIBnnn.FF2 will be created to store the list of fonts in the Library. nnn is a number from 0 to 99 that is managed by FontFolder to assure that there is a unique filename for every Library. FontFolder is currently limited to a maximum of 100 simultaneously defined Libraries. If the user chooses Cancel from the Save As dialog box, the user is returned to the main window and the Library is not saved. Changes to the Library name are discarded. ═══ 16.1.6. Revert Library ═══ Select this menu item from the Libraries menus to make the backup copy of the Current Library. file, MLIBnnn.BAK, the current copy. Note: The existing current copy, MLIBnnn.FF2, will in turn be made the backup copy, so two Revert operations cancel the operation. The Library list held in memory and seen on the screen is reset to show the contents of the new copy of the Current Library. ═══ 16.1.7. Import Library ═══ Select this menu item from the Libraries menus to add an existing Library file to the list of Libraries known to FontFolder or to create a Library based on one of the existing FontPacks. FontFolder can accept any data file that conforms to the FontFolder Data File Format and Import it as a FontFolder Library. Sources of such files can be archived copies of Libraries, Libraries created on other systems, and FontPacks. Note: While FontFolder will accept any file that has a valid file format, this does not mean that the data will be meaningful and the Library usable. For example, a Library file created on another system with different font files located in different file system paths will be of no use. It is the user's responsibility to assure that the data contained in the file being imported will be usable. Unusable data should not create errors other than the "font not found" type that would be expected, provided the data format is valid. When Import Library... is selected, a secondary menu will open giving a choice of three types of files to import. o FX2 format library... o Other Library... o FontPack... The details connected with selecting each of these menu items is described below. Once the type of file to import and any necessary dialog steps (see below for details) have been completed, FontFolder creates a new Library based on the contents of the selected file. Note: The file selected for importing will hereafter be referred to as the Import File to distinguish it from the Library data file created once the Library is imported. The Imported Library is added to the list of FontFolder Libraries using the Library name contained in the Import File (if this name is already in use, the user is prompted to either change the name or else accept that the library created will overwrite the existing library). A FontFolder Library data file is written with a file name assigned by FontFolder of the form MLIBnnn.FF2 in the path specified by the Path to FontFolder Data Files Setting. This file is independent of the Import File, and no changes are made to the Import File. The Imported Library is not opened in this process, i.e. the Current Library is not changed. To view the Imported Library, make it the Current Library using Open Library from the Libraries menus. See Importing and Exporting a Library for additional information. SELECTING FROM THE IMPORT LIBRARY SUBMENU o FX2 format library... Selecting this menu item will open a standard OS/2 File Dialog with the file choices restricted to files with an FX2 extension. The FX2 extension is FontFolder's convention for files created with the Export Library command. These files are intended for CDROM Libraries and have a special system-neutral format that allows them to be imported on other systems. When the user chooses an FX2 file from the File Dialog, the FontFolder CDROM Import Dialog opens and guides the user through the steps required to convert this file so that it is usable on the current system. 1. Drive Identification First the user is asked to identify the drive letter for the drive from which the CDROM will be used (multiple CDROM drives are supported, but an individual CDROM must be associated with just one drive). 2. CDROM Volume Verification Once the user selects the CDROM drive letter and clicks OK, FontFolder reads the CDROM in the selected drive to see if it corresponds to the CDROM indentified in the FX2 file. The CDROM Volume Label is used to do this matching. If the Volume Labels do not match, the user is given the option of either inserting a different CDROM in the drive and trying again (the user can avoid this by inserting the correct CDROM in the drive before starting the Import operation). Alternatively, if the user is certain the CDROM really is the correct one, and that the Volume Label mismatch should be ignored, the user can proceed and FontFolder will use the CDROM volume information instead of the volume information in the Import File 3. Entry of CDROM in FONTFOLDER Data Base Once the CDROM has been accepted as correct, FontFolder will check its internal CDROM list to see if this CDROM has been seen before by FontFolder. If the CDROM is already in its database, FontFolder will complete the import with no further user intervention required. If the CDROM is new to FontFolder, the FontFolder CDROM Import Dialog will change to ask the user to review and accept or modify the User Label for the CDROM. The initial User Label presented will be the one contained in the Import File. Note: The fact that the dialog has proceeded to a second stage of the import process is signified by the title bar changing to say Step 2 and by the descriptive text in the dialog window flashing for three seconds. The User Label is used by FontFolder to identify the CDROM to the user in all messages dealing with the CDROM. The User Label may either be accepted as shown, or the user may change it to any other 31 character text string. Once the OK button is clicked in this dialog window, FontFolder completes the import operation with no further user intervention required required. See Importing and Exporting a Library and Using Fonts on CDROMs for additional information. o Other Library... Selecting this menu item will open a standard OS/2 File Dialog to allow the user to choose the file to be imported. All files are shown in the File Dialog, and it is up to the user to be certain that the file is a valid FontFolder Library file. FontFolder will do a minimal check to see if the correct data file identifier is included in the file, but it will not in any other way check for validity. When the user chooses a file from the File Dialog, FontFolder will first check the file for the data file identifier as described above. Next FontFolder will check to see if the file has the format of an FX2 file (this check is based on the modfications made to a Library file during the Export Library operation, not on whether the file has an FX2 extension) and if it does the Import operation will proceed as described above for FX2 files. Otherwise, the file will be imported with no further user intervention required. See Importing and Exporting a Library for additional information. o FontPack... Selecting this menu item will open the FontPack Selection Dialog which shows all of the FontPacks defined in FontFolder. Once a specific FontPack is selected the FNTPKnnn.FP2 file corresponding to this FontPack will be used as the Import File. The file will be imported with no further user intervention required. Note: This operation is possible because there is no difference in the format of a Library data file and a FontPack data file. The difference is only in how FontFolder operates on the fonts in these files. See Importing and Exporting a Library and Creating a Custom Library for additional information. ═══ 16.1.8. Export Library ═══ Select this menu item from the Libraries menus to create a library data file for a CDROM library in a format that can be transferred to other systems. The feature is intended for use with font CDROMs to allow users to create Pre-registered Libraries for these CDROMs that can be shared with other users. An Exported Library is a library data file that has been modified to remove CDROM information that is specific to a particular copy of a CDROM and to a specific system in such a way that the information can be easily restored on another system. This feature is intended for use only with libraries that describe all or a portion of the contents of a single font CDROM. When this menu item is selected, a list of all Libraries known to FontFolder is presented. The user can select any library, including the Current Library . FontFolder does not check to verify that the library selected is a proper CDROM library as described above. To select a Library from the list, either double-click on the Library name in the listbox, or click on the name to highlight it and then click on OK. The Cancel button will cancel the operation and return the user to the FontFolder main window. Once a library is selected, a standard OS/2 File Save Dialog will be presented. Select the drive and directory where the Export Library file should be created, and give the file a name. The default for the extension for an Export Library file is FX2. Note: Using this extension makes it easy to find the file when it is later Imported, but this is only a convention. FontFolder will detect the Export Library file format and handle the file properly no matter what extension is used. Once the File Save Dialog has been properly filled in, click on Save to create the Export Library file in the selected drive and directory. FontFolder will create the data file and return the user to the main FontFolder window. Creating this Export Library file has no effect on the existing FontFolder Library file from which it was created. See Creating and Using Pre-registered Libraries for more information. ═══ 16.1.9. Delete Library ═══ Select this menu item from the Libraries menus to delete an existing Library When this menu item is selected, a list of all Libraries known to FontFolder is presented. To select a Library from the list, either double-click on the Library name in the listbox, or click on the name to highlight it and then click on OK. The Cancel button will cancel the operation and return the user to the FontFolder main window. Once a Library is selected for deletion FontFolder will display a message asking for confirmation, and then will remove the Library from FontFolder's list of available Libraries and delete the data files for the Library. Information pertaining to CDROMs whose fonts were registered with the Library will not be deleted since these CDROMs may also have fonts registered with other Libraries. If the user wishes to also delete information on a CDROM, use the Edit CDROM info utility to delete the CDROM information. The Current Library can not be deleted. To delete the Current Library, first change Libraries using the Open Library menu item. It is also not possible to delete a Library is there is only one library. Note: While it is possible to delete the library named Base Library, it is recommended that the user not do this. FontFolder treats the name Base Library as special, using it as its first recourse for recovery from certain error conditions. If FontFolder can not find any library named Base Library, it will attempt to find and use another library and should be able to recover to the same extent as is possible when the Base Library exists. However, maintaining a library named Base Library will offer the best chance for recovery. See Deleting a Library for additional information. ═══ 16.2. FontPacks Menu ═══ The choices on the FontPacks menu are o New FontPack o Open FontPack o Save FontPack o Save FontPack as... o Delete FontPack o Revert FontPack o Close FontPack ═══ 16.2.1. New FontPack ═══ Choose New FontPack from the FontPacks menus to create a new FontPack. See the Creating a FontPack help for more details. ═══ 16.2.2. Open FontPack ═══ Choose Open FontPack from the FontPacks menus to edit an existing FontPack. See the Editing an existing FontPack help for more details. ═══ 16.2.3. Save FontPack ═══ Choose Save FontPack from the FontPacks menus to save an existing FontPack under its current name. See the Saving a FontPack (Save and Save As) help for more details. ═══ 16.2.4. Save FontPack as ═══ Choose Save FontPack as from the FontPacks menus to name and save a new FontPack or to save an existing FontPack under a new name. See the Saving a FontPack (Save and Save As) help for more details. ═══ 16.2.5. Delete FontPack ═══ Choose Delete FontPack from the FontPacks menus to delete an existing FontPack. See the Deleting a FontPack help for more details. ═══ 16.2.6. Revert FontPack ═══ Choose Revert FontPack from the FontPacks menus to revert a FontPack to the backup copy. See the Reverting a FontPack help for more details. ═══ 16.2.7. Close FontPack ═══ Choose Close FontPack from the FontPacks menus to close FontPack Edit mode and return to the Install Fonts mode. See the Quitting FontPack Edit mode help for more details. ═══ 16.3. Options Menu ═══ The choices on the Options menu are shown below: o View o Settings ═══ 16.3.1. View ═══ The View menu option allows the user to change how the font lists are displayed in the main FontFolder window. The default display lists the fonts by their font names (e.g. Courier Bold). The user can also choose to have the lists display the fonts by their file names (COURB.OFM) or by their fully qualified path names (C:\PSFONTS\COURB.OFM). In each view the font lists are sorted alphabetically by the currently displayed names. Note: One way in which an alternate view is useful is that the path names view groups all fonts residing in the same directory together in the list so a user who wants to move a font directory for space or other reasons and needs to discover which font files from that directory are currently loaded in OS/2 can easily find them. All FontFolder functions are fully operational from whatever view is currently displayed. To select a new view, choose the View menu item from the Options menus, then choose the appropriate view from the submenu. ═══ 16.3.2. Settings ═══ Choose the Settings menu item from the Options menus to bring up the FontFolder Settings Notebook. From this dialog the user can change various settings that FontFolder uses to customize its operation. See the FontFolder Settings Notebook help for more details. ═══ 16.4. Utilities Menu ═══ The choices on the Utilities menu are shown below: o Edit CDROM info... o Map Drives... ═══ 16.4.1. Edit CDROM info menu ═══ Choose this menu item from the Utilites menus to invoke the Edit CDROM info utility. Note: This utility is only available to registered users of FontFolder. See Product Information for how to register FontFolder. Selecting this menu item opens the Edit CDROM info Dialog. See the Edit CDROM info Dialog Help for help with using this dialog. ═══ 16.4.2. Map Drives menu ═══ Choose this menu item from the Utilites menus to invoke the Map Drives utility. Note: This utility is only available to registered users of FontFolder. See Product Information for how to register FontFolder. Selecting this menu item opens the Map Drives Dialog. See the Map Drive Dialog Help for help with using this dialog. ═══ 16.5. Help Menu Help ═══ Help is available for the following Help menu items: o Keys Help o Product information ═══ 16.5.1. Keys Help ═══ The following are the FontFolder shortcut keys. When the names of two keys are shown joined by a plus (+) sign, press both keys simultaneously. Main Window Shortcut Keys Key Purpose Ctrl+M Tab to Library list in Main Window Ctrl+O Tab to OS/2 Installed Fonts list in Main Window Ctrl+I Install font in OS/2 Ctrl+U Remove(Uninstall) font from OS/2 Menu Item Shortcut Keys Key Purpose Ctrl+R Register font with Current Library Ctrl+D Delete font from Current Library F2 Save Library Shift+F2 Revert Library Ctrl+Q Open Font Information Window Ctrl+A Create new FontPack Ctrl+B Open existing FontPack Ctrl+C Save FontPack Ctrl+E Save As... Font Pack Ctrl+G Delete Font Pack Ctrl+H Revert Font Pack Ctrl+J Quit FontPack edit mode Ctrl+N View fonts by fontname Ctrl+F View fonts by filename Ctrl+P View fonts by pathname Ctrl+S View/Change Settings ═══ 16.5.2. Product Information ═══ Select this menu item from the Help Menu to display product related information about FontFolder. Information includes the version number, author and date of production of FontFolder, product registration information, and how to get assistance. ═══ 17. FontFolder Dialogs ═══ Help is available for the following FontFolder dialogs: o CDROM Import Dialog o Copy Fonts to Hard Drive Dialog o Edit CDROM info Dialog o FontPack Selection Dialog o Library Selection Dialog o Load Installed Fonts List Dialog o Map Drives Dialog o Register Fonts Dialog o Setup Dialog ═══ 17.1. CDROM Import Dialog ═══ This dialog is a two-step dialog. The current step is indicated in the title bar by the addition of either Step 1 or Step 2 to the title. o Step 1 - Drive Identification First the user is asked to identify the drive letter for the drive from which the CDROM will be used (multiple CDROM drives are supported, but an individual CDROM must be associated with just one drive). The Volume Label for the CDROM recorded in the FX2 file is shown for reference. Enter the single letter for the drive letter and click OK to proceed to the next step. Click Cancel to dismiss the dialog and abort the import operaton. Once the user selects the CDROM drive letter and clicks OK, FontFolder reads the CDROM in the selected drive to see if it corresponds to the CDROM indentified in the FX2 file. The CDROM Volume Label is used to do this matching. If the Volume Labels do not match, the user is given the option of inserting a different CDROM in the drive and trying again (the user can avoid this by inserting the correct CDROM in the drive before starting the Import operation). Alternatively, if the user is certain the CDROM really is the correct one, and that the Volume Label mismatch should be ignored, the user can proceed and FontFolder will use the CDROM volume information instead of the volume information in the FX2 file in creating the Library. Once the CDROM has been accepted as correct, FontFolder will check its internal CDROM list to see if this CDROM has been seen before by FontFolder. If the CDROM is already in its database, FontFolder will complete the import with no further user intervention required. o Step 2 - Assignment of a User Label If the CDROM is new to FontFolder, the dialog text will change to ask the user to review and accept or modify the User Label for the CDROM. The initial User Label presented will be the one contained in the Import File. Note: The fact that the dialog has proceeded to a second stage of the import process is signified by the title bar changing to include Step 2 in the title and by the descriptive text in the dialog window flashing for three seconds. The User Label is used by FontFolder to identify the CDROM to the user in all messages dealing with the CDROM. Either accept the User Label as shown, or change it to any other 31 character text string. Click the OK button to proceed. FontFolder will complete the import operation with no further user intervention required required. Click Cancel to dismiss the dialog and abort the import operaton. ═══ 17.2. Copy Fonts to Hard Drive Dialog ═══ When the font that a user registers with a Library resides on a removable drive such as a diskette drive, FontFolder must copy the font files to a hard drive location in order for OS/2 to use them. The Copy To Hard Drive dialog will be displayed, and the user must enter the path to the directory on the hard drive where the fonts should be copied. A checkbox gives the user the option of making the path entered the default for future Copy Fonts to Hard Drive dialogs. The user also may change the Copy Windows Font Files setting as shown in the Copy Windows Font Files checkbox. If the Copy Windows Font Files checkbox is checked then FontFolder will also copy the appropriate Windows font files to the hard drive. This setting may also be changed from the Settings Notebook. ═══ 17.3. Edit CDROM info Dialog ═══ The left half of the dialog presents a list of all CDROMs known to FontFolder, by their User Labels . The right half of the dialog presents the detailed information kept by FontFolder on each CDROM. Initially the right half of the dialog has no information presented. Select a CDROM by clicking on a User Label. The details for that CDROM will now be displayed. The User Label and Assigned Drive fields can be modified. The Volume Label and Volume Serial Number fields are presented for information only and can not be modified. Once a CDROM has been selected, the user may either edit and update the CDROM information or else delete it entirely from FontFolder. Update CDROM info Make changes to the User Label and Drive Assignment fields by directly editing them. The User Label can be any 31 character text string. The Drive Assignment must be the drive letter of the CDROM drive from which the CDROM will be used. FontFolder will insist that the letter be a valid CDROM drive as defined in the Drives Settings in the Settings Notebook. Just the single character of the drive letter should be entered (FontFolder will not allow more). Once the changes are made, click on Update CDROM info to make the changes. Delete CDROM info Once the CDROM has been selected, click Delete CDROM info to delete all information about this CDROM from FontFolder. FontFolder will ask for confirmation. Next the Current Library and any FontPack open for editing will be checked to see if they contain any fonts from this CDROM. If they do, the operation will be rejected. Otherwise, the information about this CDROM in FONTFOLD.INI will be deleted. Note: While the information on a CDROM can be deleted as long as the CDROM is not in current use, if another Library or FontPack contains fonts from this CDROM, the information will be added back in to FONTFOLD.INI the first time a Library or FontPack requiring it is loaded. To completely delete all information about the CDROM, the user should first remove all fonts from this CDROM from all Libraries and FontPacks and then use Edit CDROM info to remove the CDROM information from FONTFOLD.INI. Closing the Edit CDROM info Dialog Click the Close button or choose Close from the Window menu to close the dialog and quit the utility. If a CDROM has been selected and the User Label or Drive Assignment has been modified but the update has not been processed, the user will be given an opportunity to make the update at this time. ═══ 17.4. Library(FontPack) Selection Dialog ═══ Use this dialog box to select from the list of existing Libraries or FontPacks. Either double-click on the name of the desired Library(FontPack), or click on the name of the desired Library(FontPack) to highlight it and then click OK. ═══ 17.5. Load Installed Fonts List Dialog ═══ This dialog box appears during FontFolder startup when FontFolder encounters a font already installed in OS/2 that is either unreadable by OS/2 or for which the OS/2 font information is corrupt. It is possible to add such fonts to the list of OS/2 Installed Fonts using the OS/2 Font Pallete. However, OS/2 cannot use such fonts, and they do not show up in the Font Pallete. FontFolder rejects these fonts. The Load Installed Fonts List dialog shows the name of the unusable font file, and gives the user the option of either removing it from the list of Installed Fonts or leaving it alone. In either case, FontFolder will not show this font on its list of Installed Fonts. Normally the user should choose to Remove the font. The only case where one might choose otherwise is if the user wants to temporarily leave it alone while the user investigates to understand what the problem might be with the font file. If the user chooses the Leave Alone option, this dialog box will reappear every time FontFolder is started, until the user chooses Remove. ═══ 17.6. Map Drives Dialog ═══ To set up a drive letter change (e.g. to change references to drive letter D to drive letter F) first set the left hand spin button to the old drive letter that should be changed (e.g. D). This can be done either by using the spin button arrows or by typing the drive letter directly. Next set the right hand spin button to the new drive letter (e.g. F). Once the spin buttons are set to show the desired drive letter mapping, click the Set button. The drive letter mapping will be added to the listbox of pending changes in the format D -> F. The drive letter change is not actually made until the Process button is clicked. Continue adding additional drive letter changes as required. To correct a pending change, enter it again. To cancel a pending change (e.g. D -> E), reenter the change with the left hand side set equal to the right hand side (e.g. D -> D). Process When all required changes have been entered, click on the Process button. After confirmation, the changes will be processed. A Progress Indicator window will open and show the percentage of the task completed and a MAPDRIVE.LOG file will be created containing a record of what actions were taken. WARNING: Process all drive letter mappings together! If you do not do this, you risk corrupting your data files beyond repair! If you intend to map C->D and D->E as an example, FontFolder will keep these separated properly as long as the changes are processed together. If you were to do C->D first and then try to process D->E separately, the first processing pass would change all references to C to D while leaving the original references to D still in place, making the new D references indistinguishable from the old D references. The second pass would change both to E, making the effect of the two passes the equivalent of mapping C->E and D->E. Cancel To cancel the drive mapping without making any of the pending changes, click Cancel. ═══ 17.7. Register Fonts Dialog ═══ Use this dialog box to mark the font files that you want to register with the Current Library. First select the Drive on which the font files are located from the Drive: box, then select the Directory on which the font files are located by doubleclicking on the correct directory in the Directory: box. The File: box will fill with the names of all the font PFB files in the selected directory. FontFolder uses the font PFB files to identify the fonts, unlike the OS/2 Font Pallete, which uses the font AFM files. Mark all the font files you want to register and then click OK. Multiple files can be marked by holding down the control key while marking. Consecutive files can be marked by dragging the mouse in the list of files while holding down Mouse Button 1 (and the control key if required). The selected fonts will be registered, and a REGFONTS.LOG file will be created describing the actions taken. If FontFolder was unable to register any of the fonts, a message box will appear informing the user of this and directing them to the REGFONTS.LOG for the details. Selecting Cancel will return you to the Main FontFolder Window. ═══ 17.8. Setup Dialog ═══ The FontFolder Setup Dialog is displayed when first starting FontFolder and in any case when FontFolder cannot find the FONTFOLD.INI file on startup. This dialog presents the user with key choices that must be made before FontFolder can run. They are o Removable Drive Letters When the user trys to register a font with a FontFolder Library, FontFolder needs to check whether the source location for the font files is on a removable medium such as a diskette. If the font files are on a removable medium, FontFolder must copy them to a location on a nonremovable drive (a hard drive) as part of the registration process. OS/2 requires that fonts reside on a hard drive when installed. FontFolder uses the Removable Drive Letters entry to identify the removable drives. The user should enter the drive letters of all the removable drives on the system in the Removable Drive Letters entry field. The form of the entry is the drive letters with no spacing or other punctuation. Example: If the system has two diskette drives, A and B, and a removable hard drive identified as F, then the Removable Drive Letters entry should be ABF Failure to properly identify the removable drives can lead to unpredictable results. o CDROM Drive Letters If a drive is identified to FontFolder as a CDROM Drive, FontFolder will treat the fonts on that drive differently than it treats fonts on a hard drive or a removable drive. It will leave the fonts in place on the CDROM as long as they are not installed in OS/2, but when a CDROM font is installed in OS/2 the font files will be temporarily copied to the hard drive in a special directory called the Font Cache If the font is later uninstalled from OS/2, FontFolder will detect that it is a Font Cache font and erase the font files from the hard drive. This gives the user the freedom to have access to all their CDROM fonts while at the same time minimizing the amount of hard drive space required. The user should enter the drive letters of all the removable drives on the system in the CDROM Drive Letters entry field. The form of the entry is the same as for the Removable Drive Letters. A CDROM drive should be indentified to FontFolder as either a CDROM drive or as a removable drive. Failure to do so will cause FontFolder to attempt to treat it as a hard drive, which will lead to failure when FontFolder tries to install a font from this drive in OS/2. For additional information, see Using Fonts on CDROMs. o Path to FontFolder INI file The first time FontFolder is closed it creates a file called FONTFOLD.INI and writes a set of information about its state to the file. Examples of the type of information are the size and location of the FontFolder window on the screen, the Removable Drive Letters setting, and the location of the FontFolder data files. The default is to create this file in the same directory as FONTFOLD.EXE. However the user may want to locate the file in a different directory. For example, if FontFolder resides on a network server and is shared by several users, each user needs an individual copy of FONTFOLD.INI. In this case the user should change the path to the FontFolder INI file to point to a location on the local workstation. If the path to the FontFolder INI file is changed, an entry is made in OS2.INI specifying where this file is located. o Path to FontFolder data files FontFolder creates several data files during operation. The Library data files, MLIBnnn.FF2, contain the font registration information for the fonts included in the Libraries. The default is for thess files to reside in the same directory as the FONTFOLD.EXE file, but the user can change the path to point to another location. The Path to FontFolder date files information is stored in FONTFOLD.INI. One consideration in deciding where to locate the Library data files is the size of these file. The size will vary depending on the number of fonts registered with the the Libraries. For the largest library that FontFolder can currently support the size of MLIBnnn.FF2 would be approximately 100KB. Since one backup copy, MLIBnnn.BAK, is also maintained, the maximum total space requirement for the Library files is approximately 200KB times the number of libraries. However, this assumes the font file information stored includes maximum length path names. In actual practice the Library files will probably only be 20-30% of this size. The data files also include files of the form FNTPKnnn.FP2, which contain information identifying all the fonts included in the different FontPacks the user creates. There will be backup files, of the form FNTPKnnn.BAK for these files also. Unless the user creates a very large number of FontPacks, these files will take up much less space than the Library files. ═══ 18. Selecting Items in Listboxes ═══ Many of the listboxes in FontFolder use an OS/2 selection style known as Extended Selection which permits multiple consecutive items to be selected by dragging the mouse in the listbox. The listboxes which use this selection style are: o Library listbox o OS/2 Installed Fonts listbox o FontPack Fonts listbox o File selection listbox in the Register Fonts dialog The methods for selection and deselection in these listboxes is as follows: Selection o To select a single item simply click Mouse Button 1 on that item. Any items previously selected will be deselected. o To select multiple consecutive items in the list. Hold down Mouse Button 1 while dragging the mouse through the items to be selected. o To select multiple isolated items, hold down the Ctrl key while clicking Mouse Button 1 on each of the items. o To select multiple blocks of consecutive items that are separated in the list, hold down the Ctrl key while dragging the mouse through each separate block of items. Deselection o To deselect all items but one in the list, click Mouse Button 1 on that item. All previously selected items will be deselected. o To deselect one or more items from a list of multiple selected items, hold down the Ctrl key while clicking Mouse Button 1 on each of the items to be deselected. o To deselect consecutive items from a list of multiple selected items, hold down the Ctrl key while dragging the mouse through the items to be deselected. ═══ 19. FontFolder Appendices ═══ See the following: o FontFolder Data File Format o Error Recovery ═══ 19.1. FontFolder Data File Format ═══ FontFolder uses the same data format for Library files and FontPack files. These files are flat ASCII files. The present version of the files, Version 2, is described below. A different, incompatible format was used with FontFolder versions 1.0 and 1.1. The current format has been used beginning with FontFolder Version 1.2. Data File Format Line No. Content 1 Library or FontPack name 2 Data file version string - FontFolder 2.0 3 Number of fonts in library or FontPack 4 User Label of CDROM 1 5 Volume Label of CDROM 1 6 Volume Serial Number of CDROM 1 7 Assigned Drive Letter of CDROM 1 8-11 Volume data for CDROM 2 (same format as CDROM 1) 12-15 Volume data for CDROM 3 (same format as CDROM 1) 16-19 Volume data for CDROM 4 (same format as CDROM 1) 20-23 Volume data for CDROM 5 (same format as CDROM 1) 24-27 Volume data for CDROM 6 (same format as CDROM 1) 28-31 Volume data for CDROM 7 (same format as CDROM 1) 32-35 Volume data for CDROM 8 (same format as CDROM 1) 36-39 Volume data for CDROM 9 (same format as CDROM 1) 40-43 Volume data for CDROM 10 (same format as CDROM 1) 44 Font Facename of Font 1 45 Fully qualifed path to Font 1 font metrics file (either AFM or OFM) 46 Font Family name of Font 1 47 Reserved for future use 48 Index (0-10) of CDROM volume containing this font (0 indicates hard drive) 49... Repetition of lines 44-48 for remaining fonts in Library or FontPack For an Export Library (FX2 file), two changes are made to the above format: 1. The Volume Serial Number for each CDROM (there would normally only be one in an Export Library) is replaced by ********. This is done because the Volume Serial Numbers can be different for different copies of the same CDROM. The correct Volume Serial Number will be read from the user's CDROM when the Library is imported. 2. The drive letter in each of the CDROM records is replaced by a two digit number corresponding to the CDROM index, i.e. for CDROM 1 the drive letter is replaced by 01. The same replacement is made for the drive letter-colon portion of the fully qualified path to the font metrics file, with the number corresponding to the CDROM index for the font, e.g. a font on CDROM 1 would have its path shown as 01\FONTS\... instead of N:\FONTS\... ═══ 19.2. Error Recovery ═══ See the following for help with specific errors: o Listbox Error ═══ 19.2.1. Listbox Error ═══ Error Message: OS/2 can not insert any more items in the listbox name listbox. Your data should be safe. Refer to the Help section on Error Recovery for instructions on how to recover from this error. Explanation: This error occurs when OS/2 has reached its limit of 64K bytes of listbox text for all listboxes in the system. In FontFolder this usually only occurs when in full pathname view mode and the font directory paths are very long. If you have large numbers of fonts stored in directories with long path names, try the following: 1. If you are not already in Pathname view mode, switch to this mode, ignoring the error message. 2. Select all the entries in the Library listbox that are located in the directory with the long path name. 3. Select Delete from the Library menus. 4. Select Pathname view mode again from the Options menu to refresh the listboxes and repeat steps 2 and 3. Do this as many times as is required to purge all the items for the long path name directory. 5. Save the Library. You should now be able to switch in and out of the Pathname view mode without encountering the Listbox error. If not, you may have to repeat the above steps for another directory. 6. If any of the fonts you have just removed are installed in OS/2, uninstall them. 7. Close FontFolder and reboot the system. The reboot may not be necessary, but you should do it anyway as a safety precaution. 8. Reorganize your font directories so that they have shorter path names, and then re-register the fonts with FontFolder. If after doing the above, you still get the Listbox error message, you have reached the limit of the total number of fonts you can register in FontFolder for a single library. Break up your library in to multiple smaller libraries. ═══ ═══ FontFolder uses the term register in the sense that information about the font and where to find the font files is added to the library. This term is used in preference to add to try to make the point that no files are added to the system as part of the registration process. The exception to this is when the files reside on a removable drive, in which case FontFolder both registers them and adds them to the system.