Pluggable Fonts Registry Settings (Windows Embedded CE 6.0)

1/6/2010

Applies to Windows Embedded CE 6.0 R2

In Windows Embedded CE 6.0 R2, the font rasterizers for TrueType, AC3, and bitmap fonts are put into DLLs that can be loaded at system startup. This enables the use of third–party font rendering schemes, such as stroke–based font packages. At system startup, these drivers will be loaded in the order determined by a set of protected registry keys. These registry keys are in the HKEY_LOCAL_MACHINE\SYSTEM\GDI\FontDrivers registry. Each font driver has an entry that includes its friendly name.

Value : type Description

File : REG_DWORD

Specifies the file name of the font driver.

Order : REG_DWORD

Specifies the order that the driver should load.

Drivers that have a lower order value are loaded before those with a higher order value. Multiple drivers can have the same order. This indicates that all drivers in the group can load at the same time, in any order, in relation to one another.

Order values do not have to be consecutive. Therefore, you can leave slots empty for future font drivers.

For example, your FontDrivers section may resemble the following key.

HKEY_LOCAL_MACHINE\SYSTEM\GDI\FontDrivers
    [key] "TrueType/AC3 Driver"
        [value] "file" = "tt.dll"
        [value] "order" = 1
    [key] "Bitmap Font Driver"
        [value] "file" = "bitmap.dll"
        [value] "order" = 2

In this example, tt.dll will load and apply before bitmap.dll.

The order should be determined by which fonts the drivers can handle. Generally, more optimized or specific drivers load before drivers that are more general.

If you do not define the order of a driver or if it is invalid, that font driver will load after all drivers that have valid order assignments load.

As you build the ordered list of drivers, try to load the driver and check its exports to make sure that the file is a valid font driver. If it is not a valid font driver, it should not be included in the list.

If no drivers can be loaded because the specified drivers are not valid or there are no FontDriver registry keys, the system will load the standard Windows Embedded CE font driver.

See Also

Other Resources

Pluggable Fonts