RasterizeFont utility takes a font on the input (such as Windows .TTF – True-Type Font) and paints individual characters into bitmaps. Utility output includes separate bitmap (.BMP) files for requested characters and C++ source code of the bimap arrays (this was included into microcontroller project).
A configuration .INI file defines rasterizer parameters:
[General] Width=48 Height=72 Horizontal Adjustment=1 Vertical Adjustment=0 Outline=1 [Font] Face=Times New Roman Height=48 Weight=1024 [Bitmaps] PathTemplate=Character-%04x.bmp
And a list of characters of interest is passed as a command line argument.
const BYTE pnCharacter007a[] = // 0x007a z { 0x55, 0x55, 0x55, // 01 01 01 01 01 01 01 01 01 01 01 01 0x55, 0x55, 0x55, // 01 01 01 01 01 01 01 01 01 01 01 01 0x55, 0x55, 0x55, // 01 01 01 01 01 01 01 01 01 01 01 01 0x54, 0x00, 0x05, // 01 01 01 00 00 00 00 00 00 00 01 01 0x52, 0xaa, 0xa1, // 01 01 00 10 10 10 10 10 10 10 00 01 0x52, 0x00, 0xa1, // 01 01 00 10 00 00 00 00 10 10 00 01 0x54, 0x42, 0x85, // 01 01 01 00 01 00 00 10 10 00 01 01 0x55, 0x2a, 0x15, // 01 01 01 01 00 10 10 10 00 01 01 01 0x54, 0xa0, 0x45, // 01 01 01 00 10 10 00 00 01 00 01 01 0x52, 0x80, 0x21, // 01 01 00 10 10 00 00 00 00 10 00 01 0x52, 0xaa, 0xa1, // 01 01 00 10 10 10 10 10 10 10 00 01 0x54, 0x00, 0x05, // 01 01 01 00 00 00 00 00 00 00 01 01 0x55, 0x55, 0x55, // 01 01 01 01 01 01 01 01 01 01 01 01 0x55, 0x55, 0x55, // 01 01 01 01 01 01 01 01 01 01 01 01 };
A binary [Win32] and Visual C++ .NET 2008 source code are available from SVN.
It takes a Windows font through Windows API. So it can be any font registered with Windows, such as residing in \Windows\Fonts or available through name mapping.
Refer to MSDN http://msdn.microsoft.com/en-us/library/dd145037%28v=VS.85%29.aspx “lfWeight” constants.
It is a Windows application, you can run it directly too.