Font cache for basic fonts. More...
#include <fontcache.h>
Public Member Functions | |
FontCache (FontSize fs) | |
Create a new font cache. | |
virtual | ~FontCache () |
Clean everything up. | |
FontSize | GetSize () const |
Get the FontSize of the font. | |
int | GetHeight () const |
Get the height of the font. | |
int | GetAscender () const |
Get the ascender value of the font. | |
int | GetDescender () const |
Get the descender value of the font. | |
int | GetUnitsPerEM () const |
Get the units per EM value of the font. | |
virtual SpriteID | GetUnicodeGlyph (WChar key)=0 |
Get the SpriteID mapped to the given key. | |
virtual void | SetUnicodeGlyph (WChar key, SpriteID sprite)=0 |
Map a SpriteID to the key. | |
virtual void | InitializeUnicodeGlyphMap ()=0 |
Initialize the glyph map. | |
virtual void | ClearFontCache ()=0 |
Clear the font cache. | |
virtual const Sprite * | GetGlyph (GlyphID key)=0 |
Get the glyph (sprite) of the given key. | |
virtual uint | GetGlyphWidth (GlyphID key)=0 |
Get the width of the glyph with the given key. | |
virtual bool | GetDrawGlyphShadow ()=0 |
Do we need to draw a glyph shadow? | |
virtual GlyphID | MapCharToGlyph (WChar key)=0 |
Map a character into a glyph. | |
virtual const void * | GetFontTable (uint32 tag, size_t &length)=0 |
Read a font table from the font. | |
bool | HasParent () |
Check whether the font cache has a parent. | |
Static Public Member Functions | |
static FontCache * | Get (FontSize fs) |
Get the font cache of a given font size. | |
Protected Attributes | |
FontCache * | parent |
The parent of this font cache. | |
const FontSize | fs |
The size of the font. | |
int | height |
The height of the font. | |
int | ascender |
The ascender value of the font. | |
int | descender |
The descender value of the font. | |
int | units_per_em |
The units per EM value of the font. | |
Static Private Attributes | |
static FontCache * | caches [FS_END] = { new SpriteFontCache(FS_NORMAL), new SpriteFontCache(FS_SMALL), new SpriteFontCache(FS_LARGE), new SpriteFontCache(FS_MONO) } |
All the font caches. |
Font cache for basic fonts.
Definition at line 23 of file fontcache.h.
FontCache::FontCache | ( | FontSize | fs | ) |
Create a new font cache.
fs | The size of the font. |
Definition at line 37 of file fontcache.cpp.
References caches, fs, parent, and Layouter::ResetFontCache().
FontCache::~FontCache | ( | ) | [virtual] |
Clean everything up.
Definition at line 47 of file fontcache.cpp.
References caches, fs, parent, and Layouter::ResetFontCache().
virtual void FontCache::ClearFontCache | ( | ) | [pure virtual] |
Clear the font cache.
Implemented in SpriteFontCache, and FreeTypeFontCache.
Get the font cache of a given font size.
fs | The font size to look up. |
Definition at line 127 of file fontcache.h.
References caches.
Referenced by GetCharacterHeight(), GetGlyph(), GetGlyphWidth(), GetUnicodeGlyph(), InitFreeType(), InitializeUnicodeGlyphMap(), SetUnicodeGlyph(), and UninitFreeType().
int FontCache::GetAscender | ( | ) | const [inline] |
Get the ascender value of the font.
Definition at line 53 of file fontcache.h.
References ascender.
int FontCache::GetDescender | ( | ) | const [inline] |
Get the descender value of the font.
Definition at line 59 of file fontcache.h.
References descender.
virtual bool FontCache::GetDrawGlyphShadow | ( | ) | [pure virtual] |
Do we need to draw a glyph shadow?
Implemented in SpriteFontCache, and FreeTypeFontCache.
Referenced by DrawLayoutLine().
virtual const void* FontCache::GetFontTable | ( | uint32 | tag, | |
size_t & | length | |||
) | [pure virtual] |
Read a font table from the font.
tag | The of the table to load. | |
length | The length of the read data. |
Implemented in SpriteFontCache, and FreeTypeFontCache.
Get the glyph (sprite) of the given key.
key | The key to look up. |
Implemented in SpriteFontCache, and FreeTypeFontCache.
Referenced by DrawLayoutLine(), GetGlyph(), and FreeTypeFontCache::GetGlyph().
virtual uint FontCache::GetGlyphWidth | ( | GlyphID | key | ) | [pure virtual] |
Get the width of the glyph with the given key.
key | The key to look up. |
Implemented in SpriteFontCache, and FreeTypeFontCache.
Referenced by DrawLayoutLine(), GetGlyphWidth(), and FreeTypeFontCache::GetGlyphWidth().
int FontCache::GetHeight | ( | ) | const [inline] |
Get the height of the font.
Definition at line 47 of file fontcache.h.
References height.
Referenced by GetCharacterHeight().
FontSize FontCache::GetSize | ( | ) | const [inline] |
Get the FontSize of the font.
Definition at line 41 of file fontcache.h.
References fs.
Referenced by FallbackParagraphLayout::NextLine().
Get the SpriteID mapped to the given key.
key | The key to get the sprite for. |
Implemented in SpriteFontCache, and FreeTypeFontCache.
Referenced by GetUnicodeGlyph(), and FreeTypeFontCache::GetUnicodeGlyph().
int FontCache::GetUnitsPerEM | ( | ) | const [inline] |
Get the units per EM value of the font.
Definition at line 65 of file fontcache.h.
References units_per_em.
Map a character into a glyph.
key | The character. |
Implemented in SpriteFontCache, and FreeTypeFontCache.
Referenced by DrawLayoutLine(), GetGlyph(), GetGlyphWidth(), and FreeTypeFontCache::MapCharToGlyph().
Map a SpriteID to the key.
key | The key to map to. | |
sprite | The sprite that is being mapped. |
Implemented in SpriteFontCache, and FreeTypeFontCache.
Referenced by SetUnicodeGlyph(), and FreeTypeFontCache::SetUnicodeGlyph().