Table of Contents
Fonts
E2B supports 16-pixel high or 24-pixel high fonts. You can make E2B load a different font by using a setting in the \_ISO\MyE2B.cfg file.
Extract from Sample_MyE2B.cfg (remove one or more ### symbols to uncomment a line)…
# --- CHARACTER SET FONTS ---- # Font settings - specify alternate unifont hex file which is loaded after the E2B unifont file is loaded - many 16-pixel fonts are in /_ISO/docs/Fonts/ folder # Special non-ANSI characters are not included, so only suitable for English language really ###set FONT=()/_ISO/docs/Fonts/terminus.uni.gz # Use Default BIOS Font (tends to be thick+bold for standard ASCII characters) ###set BIOSFONT=1 # Do not load unifont fonts - if NOUNIFONT=1 then the standard E2B unifont font file is not loaded (to save time) but only ASCII characters will be displayed ### set NOUNIFONT=1 # LARGE FONTS - FONTH specifies the font height (default = 16 = unifont) # If you set FONTH=24 E2B will use a default set of 24-pixel high fonts (grub4dos 0.4.6a only) ###set FONTH=24 # You can also load your own font by using the FONT parameter - if FONTH=24 then the font file must be in 24-high format # If 24 pixel high: 1024x768=85 chars x 32 lines, 800x600=66x25 lines # 24 pixel high fonts: yxt.f24=trad Chinese, ltxxx.f24, terminal.f24, developer.f24, X11.f24 - some fonts may not work in some languages ###set FONT=/_ISO/docs/Fonts/developer.f24
Tip: You can add any number of different *.uni.gz or *.f24 files to a menu folder and select any one of them from the E2B menu (v1.A1+).
Note that if using .f24 fonts, the E2B menu dimensions will need to be changed because less lines are available on the screen.
16-pixel high fonts (standard fonts)
To include a different font, simply specify the path and filename of the font file in your MyE2B.cfg file, e.g.
set FONT=()/_ISO/docs/Fonts/sans2.uni.gz
By default, grub4dos will use the BIOS fonts. These contain the BIOS ASCII character set from 0-255, but some characters may differ from those expected. grub4dos uses special hex font files – these font files are not the same ones used by Windows or Linux.
E2B loads a large unifont hex file (unifont.hex.gz) by default. The unifont.hex.gz file contains hundreds of 16-pixel high glyphs for many different languages and is approx. 1MB in size (uncompressed). If your menu does not use these (i.e. you use an English ‘Latin/Roman’ character set for your language) then you can set NOUNIFONT=1 in MyE2B.cfg and it won’t load the large unifont.hex.gz file and thus will save a second or two in boot time.
Use set BIOSFONT=1 in your MyE2B.cfg file to just use the BIOS font (basic English characters only).
E2B will always load the unifont.hex.gz file first to ensure that non-Latin characters like Chinese glyphs will be displayed correctly (unless NOUNIFONT=1 is specified). Then any other font will be loaded over the top of unifont.hex.gz if you have specified a FONT variable value. e.g.
set FONT=()/_ISO/docs/Fonts/terminus.uni.gz
Note: If you have set BIOSFONT=1 then the BIOS font will be used for characters 0x20-0x7F. If you also specify a FONT to be loaded, the full unifont.hex.gz font will be loaded first, then E2B will load the BIOS fonts for the 0x20-0x7F characters and then it will load the specified user font – if one is specified (which also contains characters 0x20-0x7E if you use the E2B font files provided).
\_ISO\docs\Sample mnu files\E2B Menus\Font_Demo.mnu– This menu will add lots of different font choices to the Main menu so you can switch to any font (ASCII codes 32-127 only, so only standard ASCII English characters supported, so they can only be used for English because any special non-English characters will be displayed in the normal unifont font).
There are also other font .mnu files in the Sample mnu Files folder, e.g. Change_Font24.mnu will test large fonts, or you can copy the \_ISO\docs\Fonts\$FontTest.mnu file to the \_ISO\MAINMENU folder test any normal 16-pixel high font with your menu (or add some demo menus using \_ISO\Pimp_my_drive.cmd).
There is also a \_ISO\docs\Sample mnu Files\Change_Font.mnu file – copy this to the \_ISO\MAINMENU folder to test any of the 16-pixel high fonts with your menu.
If your chosen language requires special non-ASCII characters (i.e. non-English languages), use the default unifont file only.
See also blog page.
Large Fonts
E2B v.1.78+ supports 24-pixel high large fonts (see YouTube demo).
Use set FONTH=24 to use the E2B’s default large font (sft.f24).
You can also add an additional command to add an additional font subset using set FONT=/_ISO/docs/Fonts/xxxx.f24 (where xxxx is the name of a font file).
Large fonts have a file extension .f24 and there are over ten different alternatives available in the \_ISO\docs\Fonts folder.
However, the default 24-pixel high font file (chinese+ASCII) does not contain as many glyphs as the 16-pixel high version, so some languages are not supported.
sft.f24 (default) and yxt.f24 contain more characters, terminal and developer have less then these – the other .f24 font files contain mainly English ASCII characters only.
Tip: copy the \_ISO\docs\Sample mnu files\E2B Menus\Change_Font24.mnu file to the \ISO\MAINMENU folder to experiment.
A screen of 24-pixel high characters has:
1024×768 = 85 characters by 32 lines
800×600 = 66 characters by 25 lines
You will need to change the menu box dimensions to fit.
The E2B_Editor.exe does not support large fonts.
See also \_ISO\docs\Templates\LargeFont and Animate config files (copy to \_ISO folder).
Note: set CENTREHD=1 may not centre the menu headings correctly unless rstart is set to 2 or more, if you are using a large font.
You can use set HEADPOS=2500 (line 25) to remove all menu headings (in 800×600 mode, or 3200 (line 32) in 1024×768 mode).
Some alternative 24-pixel high .f24 font files can be loaded using set FONT=xxxxxx.f24, but they only contain a subset of mainly English characters, so if your language requires special non-ASCII characters, only use the default set FONTH=24.
Note: Incorrect setting of the HBTM variable which sets the position of the FOOTER help text can cause the screen to scroll because there are only 25 lines available. Make sure the HBTM variable is correct (e.g. set HBTM=2300).
See also blog page.
Adding more 24-high fonts
If you can find some 24-pixel high fonts in .BDF format, then you can use a Windows script to convert them into the correct format required for grub4dos.
Some ’24-dot’ BDF fonts can be downloaded here.
Download MAKE-FONT24.zip from the Alternate Downloads Area – Other Files folder.
Unpack it and read the ReadMe files for more help.
GFXBoot Menus
Grub4dos fonts are not used by GFXBoot menu systems as they use their own font. You can compile your own GFXBoot ‘message’ menu and then load it using MyE2B.cfg.