Click here for table of contents, but only after reading the license.

LICENSE

Font Collector is Copyright (c) 2004-2005 Alexander R. Pruss, with portions copyright (C) 2004 Kenny Song (the application icon).

Font Collector is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Font Collector is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with Font Collector (COPYING); if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

Make a backup!

You should make a full backup before using this program.

Table of contents

Quick tutorial for FontSmoother/Fonts4OS5/FontSubst

If you want to do this with smooth FontSmoother fonts, also see below. The instructions here work best with non-smooth fonts.

The basic idea is that a Fonts4OS5/FontSubst/FontSmoother font package contains four slots: standard, bold, large and large-bold. Fill each slot with a font, and save to create a Fonts4OS5 package. A FontHackV package is just a single font, so instead of filling four slots and saving, you need to fill one. You will need to go to the Menu and choose "Options" and "Preferences" to set the output type to the desired type (FontSmoother, Fonts4OS5, FontSubst). For FontSmoother, this example works best for non-smooth fonts, though smooth fonts can also be converted, as long as you do not delete the original font package (the antialiasing resources stay in the original package).

Here are two examples of use. One is geared towards lo-res (Treo 600) users and the other towards hi-res users (everybody else). If you want to use this with FontSubst, first go to the menu, choose "Options" and "Preferences" and set the output type as FontSubst.

Lo-res example: Alpha Book font

  1. Download the free Alpha Fonts.
  2. Unzip to some directory.
  3. Hotsync Alpha-Bk.pdb, Alpha-Bd.pdb, Alpha-Lg.pdb and Alpha-LB.pdb. (You can hotsync more of them if you want.)
  4. Run Font Collector.
  5. Tap on "Alpha-Bk Std". You will see a preview of the font. Tap on the first of the four arrow/hand icons at the top of the screen. You will see "Alpha-Bk Std" jump into its slot (the "standard font slot").
  6. Tap on "Alpha-Bd Std". Tap on the second arrow/hand icon.
  7. Tap on "Alpha-Lg Std". Tap on the third arrow/hand icon.
  8. Tap on "Alpha-LB Std". Tap on the fourth arrow/hand icon.
  9. Tap on "SAVE". When prompted for a name, enter "Alpha Book" or something like that.
  10. Exit Font Collector (tap on PDA's HOME button) and run Fonts4OS5/FontSubst. You can now select the "Alpha Book" font for any applications you want.

Hi-res example: Times New Roman (also works on lo-res)

Note: Whether you are legally allowed to do this depends on details of licensing agreements and copyright laws.

We're going to make two Times New Roman font packages out of your Windows Times New Roman font in this example. One will be a smaller size than the other.

  1. Download and install the free iSiloX utility on your Windows system.
  2. Run iSiloX.
  3. Go to the "Tools" menu and choose "Make font".
  4. In the drop-down list, choose "Times New Roman" (or whatever font you want). Then select your device. (If your PDA is not listed, put 144 for Screen DPI for hi-res devices and 72 for lo-res ones.) Click on "Next".
  5. By default you get four sizes of the font: 8pt, 10pt, 12pt and 14pt, in plain (not bold and not italic). You can remove some of these or add more. For this example, add bold versions of these four fonts: Click on "Bold", and then enter 8 in the "Size box", and click on "Add", and do this again for 10, 12 and 14.
  6. Click on "Queue for HotSync. Wait for the "Successfully saved font" message.
  7. HotSync your PDA.
  8. Run Font Collector.
  9. We will start by making the smaller font. Select the smallest "Times New Roman 8 iS" (the "iS" standard for "iSilo") font in the bottom list. Then tap on the first hand/arrow icon at the top of the screen to put it in one of the four slots of a Fonts4OS5/FontSubst fonts. Then select the "Times New Roman 8 bold iS" font, and then tap on the second hand/arrow icon, the one with the bold "A". Repeat for a somewhat larger non-bold font ("Times New Roman 12 iS" in my test), putting it in the third slot, and a matching-size bold font ("Times New Roman 12 bold iS").
  10. Tap on "SAVE". When prompted for a name, enter something like "TR small". You can now exit Font Collector, go into Fonts4OS5/FontSubst, and enable the "TR small" font.
  11. Or you can make a somewhat larger sized font package given that you have eight fonts in the iSilo Font package. Just put larger "Times New Roman" fonts into the four slots.

Instructions

This is a companion to FontSmoother, Lubak's Fonts4OS5, the FontSubst program and the free (but harder to use) FontHackV, as well as PalmBible+, Plucker and any programs using the standard FontHack 123 font packages (e.g., eReader, iSilo and, in V2 mode, Mobipocket). (Fonts4OS5, FontSubst and FontHackV are OS 5 programs and not supported by Font Collector on OS versions prior to 5.0 as output formats, though they are supported as input formats.) Font Collector scans through your RAM (or Program Memory) and finds fonts that it can convert to these formats. To install, hotsync "FontCollector.prc" to your PDA (either RAM, Program Memory, Internal Drive or flash card). OS 3.5 is required.

As mentioned in the tutorial above, the basic idea is that Fonts4OS5 font packages contain four slots: standard, bold, large and large-bold. Fill each slot with a font, and save to create a Fonts4OS5 package. If you want to convert to a different output format, go to the Menu, choose "Options" and "Preferences" and set the output type appropriately. Here are all the output types and what the different slots mean in sequence:

At the bottom is a list of all available "input fonts". The input fonts are gleaned from font databases, applications, etc. Tap on an input font name to see a quick preview. To copy that font into a slot in the output font package, tap on the hand (hi-res devices) or arrow (Treo 600) icon for the appropriate slot. When you have filled all slots at the top, tap on "Save" to save the font package (and clear it so you can make a new one). You can then install the font package with Fonts4OS5 or whatever program uses this particular font type (note that for PalmBible+, you must go to the "Options" menu and choose "Skins & Plugins" to enable the generated "font skin").

Font Collector gets its input fonts from a number of different sources. For speed and simplicity, the sources must be in RAM (or Program Memory). Currently, Font Collector supports the following input font package formats:

If you would like to use fonts in an unsupported font package, please contact the developer (ideally including information on whether the font package is a resource or record database, and its creator and type IDs) at arpruss@gmail.com.

There are a few additional options. In the PREFERENCES menu, you can choose to stop fonts of some of the supported types from displaying to conserve space in the input list. You can also choose whether Font Collector should look at the low-resolution or high-resolution component of those fonts that contain both components. Hi-res PDA users who choose to look at the low-resolution components will be thereby enabled to make font packages containing very small fonts. Lo-res PDA users choosing to look at the high-resolution components will be able to make font packages containing very large fonts. Tapping on most PREFERENCES settings will clear the output font list.

Finally, if your output mode is "Standard" and you have a Sony OS4 hi-res device, you will have a "Paired resolution outputs" option. This produces standard "Fonthack" files with font entries (memory allowing) arranged in pairs--a low resolution version followed by a high resolution version. Using Fonthack123 for Sony hi-res, map the standard font to the low resolution version and the "HR" version of it to the high resolution version in each pair for best performance. The low resolution fonts are automatically downscaled and hence will be ugly in any applications in which they actually show up unless you are converting from a hand-tweaked OS5 multi-resolution font (e.g., the Fonts4OS5 fonts) in which case the low resolution font will be taken from it.

After you have put a font in an output slot, you can adjust its vertical spacing, generate a synthetic bolding, and set whether you want to extract the high or low resolution component of a multi-resolution font by tapping on the icon to the right of the font name. You cannot increase the vertical spacing, but you can decrease it. This is particularly useful with FontBucket fonts which have too much vertical spacing. If you are generating iSilo fonts, you can also tell iSilo whether the font is a bold or italic one by selecting the right "is bold" and "is italic" buttons (note that selecting "force bold" does not set the "is bold" automatically because you might just want a thicker text font for all Font Collector knows).

Note that occasionally the horizontal spacing after some letters on hi-res devices will be off slightly (one pixel) after the font is converted. This is because the input font was not designed for use as a Palm OS hi-res font (144DPI component of FontTypeV2 font, to be precise), and hence its character widths were not optimized for it (the way the widths in Lubak's own fonts were). There is really no sure way of doing this optimization automatically. Similarly, any applications using low resolution components of fonts may not look very good if Font Collector has to generate the low resolution component by itself (which it does except when converting a multi-resolution input).

Hints for advanced users

FontSmoother notes

Font Collector is designed for standard non-smooth (i.e., aliased) fonts. However, it will also work with FontSmoother smooth fonts, subject to some notes:

LEGAL WARNING

I understand that in the U.S., bitmapped fonts are not copyrightable (though scaled fonts, e.g., TrueType, are), but I am not a lawyer. They are copyrightable, however, in some other countries. Make sure you obey copyright law when copying and converting fonts. Moreover, some fonts may be protected in other ways, e.g., by trademark law or by any licensing contracts you agreed to when you purchased or downloaded them. Thus, even though a font is not copyrighted, a font within an application may be protected from copying and conversion by a license agreement you agreed to when you installed the application. IT IS YOUR RESPONSIBILITY TO ENSURE YOUR USE OF FONT COLLECTOR IS LEGAL.

Free fonts and font generators

Here are some sources of free pre-built fonts:

If you'd like to create your own fonts from TrueType fonts on a desktop system, there are three free utilities to let you do that:

Uninstall Font Collector

To uninstall Font Collector just delete it.

Contact information

The author can be contacted by email at arpruss@gmail.com.

History