The game fonts are bitmap files stored in res/fonts, along with a .txt file describing the font contents. These were generated using FontBuilder.exe from the PopCap framework. The format of these files is described below:
If you open up one of the text files generated by Fontilizer, you will see a whole bunch of numbers and stuff. In most cases you can leave these as they are. However, if you feel the need to edit them, here's a brief description of what some of them do.
- Define CharList
- This simply lists all the characters in the font.
- Define WidthList
- This defines the width, in pixels, of each character in the font. There may be cases where you would want to edit this... if, for instance, one letter had a really odd flourish that you didn't want taken into account for spacing, or if you wanted the characters to overlap in some strange manner.
- Define RectList
- This defines the size and position of each character in the image. Don't think you'd wanna mess with this.
- Define OffsetList
- This defines a set of integer pairs specifying how many pixels in X,Y you want to offset each character. This can be used to move individual characters around without modifying the image.
- Define KerningPairs
- This defines the different pairs of characters that have special kerning numbers set for them.
- Define KerningValues
- This defines how special sets of characters are kerned when they turn up. This is imported directly from the Truetype font and in most cases should be left alone.
- LayerSetCharWidths Main (' ') (X)
- This value in the spew of data below is used to set the width of a space character. If you feel the font needs bigger or smaller spaces, edit this.
- LayerSetImage Main 'X'
- The X here is the file name used for the font. You may need to edit this manually if you are creating a special font.
The remaining items are either the values selected in the GUI when the font was originally generated, or references to other objects in the file to link them together.