• We recently switched our forum platform. If you experience any issues please email support@crystalfontz.com

Bitmap font editor for graphic LCD


New member
font editor and C code

Nice simple looking product - but I'd like to also manage fonts over 16 pixels hi.

Is a special version needed for this, or is the XY cell size somehow contained in the Binary Font File ?

I can find no docs on the binary file, and it seems to have a simple preamble ?

We want to do around 24x10 and 30x12, for printing, and larger titles.

Looking for additional LCD resources? Check out our LCD blog for the latest developments in LCD technology.
The binary file is not documented explicitely, although I do remember that ages ago I posted the meaning of the preamble values somewhere. I will provide that info for you: (all 32 bit little endian)
format indicator (to differentiate from an earlier version)
number of chars (i.e. total array size)
number of rows (either 8 or 16)
number of columns (up to 16)
ascii value of first char

Yup, the program is simple, especially because the character cell size is limited to 16 x 16. This makes it easy to do everything as bytes and (short)words, especially in the output text file formatting. To handle larger cell sizes would require a bit of work, which I would not have any motivation to do for free.

Maybe you can use this program:

or google "bitmap font"


New member
Thanks for the format details.

I've tried the DotFactory, useful, but it only masters from a Windows Font.

I did find FontForge.MinGW worked OK on Windows, and that has good range of file
supports, so I may use that, and do a .BDF massage-script to re-scramble the font into compilable form.


BitFontCreator is a professional Bitmap font creator tool for Windows, which allows you create and modify monochrome bitmap fonts that can be used in Windows and electronic devices (Mobil, phone, DVD player and any other LCDs). Also it can export bitmap data in various formats (Big/Little Endian, Row/Column based, Row/Column preferred, Packed or not, etc.) BitFontCreator Key Features: 1. Import fonts: Support all kinds of fonts installed on your Windows PC (True Type, Open Type, Adobe Type 1 and Raster fonts). 2. Edit Tools: Pencil, eraser, line, rectangle, Shifting tools, Invert, flip, and marquee selection.


New member
Thanks - interesting link.
I like this idea
["Attention: Trial copy can only correctly generates data from 'A' to 'N',
'a' to 'g' and '0' to '8'. To get all the correct data,
please order and register BitFontCreator Pro first! "]

So you can actually generate all the frameworks, in order to test the fonts.
Price says $98 in some places, and $128 in others ?
The assembler output is in Motorola hex format, and may not be compatible with Microchip software tools. As for the declaration of the font data, it might do you some good to read the CFE64 help file (which I spent a lot of time composing), because it contains the info you need to deal with your problem. I am assuming that the MPLAB assembler wants "db" for byte declarations, and "dw" for word declarations. If you look at the help file, from the "Code File Format" dialog, you will see the explanation about clicking on the double down-arrow button at the bottom of the Code File dialog. There, you are free to change the asm declarations from "dc" to "db", and "dc.w" to "dw" (or to whatever you want), and check the box to use those settings as the new default.


New member
Excellent program you made Cosmicvoid! I've been experimenting with it, and have succesfully made a character bitmap text file I can easily paste into my assembly. Now I want more, heh, sorry.

Is there any way to have it load or import a .tga file? There is a free program out there called BM Font that can work with TrueType fonts, but it outputs files in .fnt or .tga type file.

I'm trying to use the Courier New TrueType font in a project of mine.

Anyway, thanks for the great program!
I'm assuming you've followed the links to the newest version, with the SFP font files I've bundled with it.

I see that there are ways to convert .tga to other formats (like using zamzar), and many editors can handle it (like GIMP) and save in another format. But the bottom line is that my program is not designed to import any of those complex filetypes. Since I am not doing any development work that uses fonts these days, I have no motivation to add features to do those kinds of imports. Besides, I'm sure the TT fonts would exceed a 64x64 pixel size for all but the smallest point sizes; that would be too big for my editor.

I'm guessing what you ultimately need is a way to convert the TT font into a bitmap format assembly declaration for a given point size. I can't help you there either, but I think I've seen some utilities that can load a Windoze font and dump off hex listings of the characters, maybe even referred to here on the CFA site, I just don't remember at the moment, sorry.