grub-dev: Introduction
11.1 Introduction
=================
The goal of this format is to provide a bitmap font format that is
simple to use, compact, and cleanly supports Unicode.
11.1.1 Goals of the GRUB Font Format
------------------------------------
* Simple to read and use. Since GRUB will only be reading the font
files, we are more concerned with making the code to read the font
simple than we are with writing the font.
* Compact storage. The fonts will generally be stored in a small
boot partition where GRUB is located, and this may be on a
removable storage device such as a CD or USB flash drive where
space is more limited than it is on most hard drives.
* Unicode. GRUB should not have to deal with multiple character
encodings. The font should always use Unicode character codes for
simple internationalization.
11.1.2 Why Another Font Format?
-------------------------------
There are many existing bitmap font formats that GRUB could use.
However, there are aspects of these formats that may make them less than
suitable for use in GRUB at this time:
'BDF'
Inefficient storage; uses ASCII to describe properties and
hexadecimal numbers in ASCII for the bitmap rows.
'PCF'
Many format variations such as byte order and bitmap padding (rows
padded to byte, word, etc.) would result in more complex code to
handle the font format.