Symbian
Symbian OS Library

SYMBIAN OS V9.3

[Index] [Spacer] [Previous] [Next]



The Fonts classes

A device-independent font specification is provided —TFontSpec (in the twips domain) — and the means to map the specification to a concrete device-dependent font CFont* (in the device domain). The GetNearestFontInTwips() function provides a means of getting from a TFontSpec to the CFont* which is the nearest font in the graphics device’s typeface store.

The relationships between the font class...

The relationships between the font classes

Due to the necessary number of calculations and typeface store searches involved in the GetNearestFontInTwips() function, a font cache, holding a cache of TFontSpec - CFont* relations for the current graphics map, is provided as an alternative to invoking this function.

As the fonts supported by the device are stored in a device dependent form (TTypefaceSupport), pixels to twips functions are also provided to allow the list of supported font sizes to be presented in user dialogs as twips/points rather than pixels.

The typeface store mechanism allows any font to be used by more than one client and keeps an access count of the number of clients using a particular font. This access count is increased and decreased by the GetNearestFontInTwips() and ReleaseFont() functions respectively, and a font is only deleted from memory when its access count reaches zero.