Revision r8 - 25 Apr 2008 - 01:05 - MarcGuay
Rockbox Font Convertor
About the Program
After reading the thread about converting fonts in this post, I decided to code a batch file to do the work for me. This is the result, the Rockbox Font Convertor. It ain't in any way pretty, as it's all in command prompt, but it does the job and does it well and pretty damn fast, too. -- GeoffStokes
- Convert ANY .ttf or .otf file into a Rockbox font, without having to remember two program names - just type "makefont [size] [file]" and bam! it's converted.
- Small, portable - small enough to make no noticable impact on your player's storage.
- Super-fast - does most of the hard work for you! you don't have to intervene between the two conversions which are performed!
- Automatically deletes the middle file - The BDF file used to convert is deleted by the program automatically, making the directory slightly more tidy than if it didn't.
- Waits until you hit a key after finishing so you can check everything went smoothly.
- Now happily converts fonts with long, spaced filenames (Unless the first word is a number - in which case it doesn't work properly - try putting the filename in quotes)
Latest Version: 1.2
With a reasonable understanding of how the command prompt works
Open a command prompt window to the font convertor folder and type:
makefont [Fontsize] [Fontfile]
The original file can be either a TTF (TrueType) or an OTF (OpenType) font. It will then convert the file and save it as
[fontsize]-[Fontfile].fnt in the same directory as the original.
With very little command prompt knowledge
- Go to the Windows Start menu and click Run...
- In the window that appears, type
cmd and hit enter.
cd \ and hit enter.
- Navigate to the folder containing your font file by doing the following:
- Look at the folder window where the program is, and note the full address (or Path)
- In the command prompt window, type "cd " and the name of everything between the first two "\"s
- For example, if my path is "C:\My Documents\fontconvertor\" then I type "cd My Documents", hit enter, then "cd fontconvertor" and hit enter.
- Or, you can type the whole path, ie "cd My Documents\fontconvertor" and hit enter.
makefont [The font size you want in converting] [The name of the font file] and hit enter (The font size isn't necessary - it uses 8pt if you don't specify).
- If it claims there is no such file, make sure you type the extension (For most fonts it's
- The process should complete, displaying it's progress, and tell you when it is complete. Then simply drag the created file onto your player.
- Fixed Drag-Drop usage.
- Fixed Help Prompting.
- Added Multiple Font Processing
- Added command for font size
- GUI (Not really necessary, but asthetically better off, as well as for newbie use. Need a simple, light-weight programming language and compiler. Any ideas? - NOT .NET! LIGHTWEIGHT!)
- if the file is already a BDF, just convert it straight to a .fnt
Both are free, and included, but I'll include the links anyway. Just make sure both application files are in the same folder as the batch file and you'll be fine.
- Most modern fonts use Anti-aliasing to make them look good on-screen. Unfortunately the Rockbox font format does not support this, and fonts created that make heavy use of anti-aliasing may look blocky as any areas even slightly shaded by the font are shown fully when converted. Anti-aliasing is something I can't do for the fonts (It would need to be provided by the Rockbox core), however, I may be able to get the fonts to look better by making the anti-aliased areas default to not showing, however no progress has been made on this.
- Setting a font to 8pt is not necessarily going to make a font that is 8px high. Different fonts have different sizes in their pt size. Have a fiddle with sizing and see what works best.
More information and discussion of this can be found at the MisticRiver Forums, here, and a more technical discussion of the project can be found on the Rockbox forums, here
Revision r7 - 24 Apr 2008 - 23:32 - MarcGuay
Copyright © by the contributing authors.