Enabling Linked Fonts
Windows CE provides a font linking capability so that you can link one or more TrueType fonts to another TrueType font. Font linking is typically used to enable Roman fonts to display non-Roman characters. Windows CE provides font linking in the MGTT component.
To enable font linking, configure the FontLinkMethods entry under the HKEY_LOCAL_MACHINE\System\Gdi registry key. You can use the FontLinkMethods entry to enable cell height adjustment. When enabled, the rasterizer ignores internal leading when calculating the cell height of the linked font. Internal leading is commonly used for Roman fonts to allow accent marks to be placed within the interline spacing. Kanji fonts do not use internal leading. By not including internal leading in the realization of the linked font, the font is rendered from one to several point sizes smaller.
The following example shows the FontLinkMethods entry.
HKEY_LOCAL_MACHINE\SYSTEM\GDI
"FontLinkMethods"=dword:n
The value for n can be 1, 2, or 3, as defined in the following table.
Value | Description |
---|---|
1 | Enables cell height adjustment for fonts that are created with a LOGFONTlfHeight member value greater than 0. The adjustment for cell height is most typically warranted for this category of fonts. This setting is enabled in the Enterprise Web Pad configuration of the Platform Builder for Japanese devices. |
2 | Enables cell height adjustment for fonts that are created with a LOGFONTlfHeight member value less than 0. |
3 | Enables cell height adjustment for fonts that are created with a LOGFONTlfHeight member value either greater than 0 or less than 0. |
You can map linked fonts to base fonts by configuring the HKEY_LOCAL_MACHINE\Software\Microsoft\FontLink\SystemLink registry key. The following example shows how to link Tahoma, the base font, to Trebuchet MS, the linked font, by providing the path to the linked font .ttf file and the linked font name.
[HKEY_LOCAL_MACHINE\Software\Microsoft\FontLink\SystemLink]
"Tahoma"="\\windows\\Trebuc.ttf,Trebuchet MS"
When using font linking, you can define one or more Unicode characters that should be obtained from the linked font, even if they are present in the base font. You can define these skipped characters by using the HKEY_LOCAL_MACHINE\Software\Microsoft\FontLink\SkipTable registry key. This registry key is read only when the OS boots.
The following example shows that, even though there is a character in Tahoma at Unicode character 005c, the character in the linked font will be used instead.
"Tahoma"="005c, 00a5, 007e, 0391-03c9, 2026, 2116, 221a, 25a0-25ff"
For bold fonts, the graphics device interface (GDI) determines whether to simulate bold, using the base font only as a reference. If you use a bold font to write a string, and the base font is bold in the .ttf file, but the linked font is not, text in the linked font does not display as bold.
See Also
Font Linking | Customizing Fonts | Fonts Implementation Considerations | Fonts
Last updated on Wednesday, April 13, 2005
© 2005 Microsoft Corporation. All rights reserved.