OpenTTD Source
20241121-master-g67a0fccfad
|
Font cache for fonts that are based on a freetype font. More...
#include <spritefontcache.h>
Public Member Functions | |
SpriteFontCache (FontSize fs) | |
Create a new sprite font cache. More... | |
void | SetUnicodeGlyph (char32_t key, SpriteID sprite) override |
Map a SpriteID to the key. More... | |
void | InitializeUnicodeGlyphMap () override |
Initialize the glyph map. | |
void | ClearFontCache () override |
Clear the font cache. | |
const Sprite * | GetGlyph (GlyphID key) override |
Get the glyph (sprite) of the given key. More... | |
uint | GetGlyphWidth (GlyphID key) override |
Get the width of the glyph with the given key. More... | |
bool | GetDrawGlyphShadow () override |
Do we need to draw a glyph shadow? More... | |
GlyphID | MapCharToGlyph (char32_t key, bool allow_fallback=true) override |
Map a character into a glyph. More... | |
std::string | GetFontName () override |
Get the name of this font. More... | |
bool | IsBuiltInFont () override |
Is this a built-in sprite font? | |
Public Member Functions inherited from FontCache | |
FontCache (FontSize fs) | |
Create a new font cache. More... | |
virtual | ~FontCache () |
Clean everything up. | |
FontSize | GetSize () const |
Get the FontSize of the font. More... | |
int | GetHeight () const |
Get the height of the font. More... | |
int | GetAscender () const |
Get the ascender value of the font. More... | |
int | GetDescender () const |
Get the descender value of the font. More... | |
virtual int | GetFontSize () const |
Get the nominal font size of the font. More... | |
virtual const void * | GetOSHandle () |
Get the native OS font handle, if there is one. More... | |
bool | HasParent () |
Check whether the font cache has a parent. | |
Private Member Functions | |
SpriteID | GetUnicodeGlyph (GlyphID key) |
Get SpriteID associated with a GlyphID. More... | |
Private Attributes | |
std::unordered_map< GlyphID, SpriteID > | glyph_to_spriteid_map {} |
Mapping of glyphs to sprite IDs. | |
Additional Inherited Members | |
Static Public Member Functions inherited from FontCache | |
static void | InitializeFontCaches () |
static int | GetDefaultFontHeight (FontSize fs) |
static FontCache * | Get (FontSize fs) |
Get the font cache of a given font size. More... | |
static std::string | GetName (FontSize fs) |
Get the font name of a given font size. More... | |
Protected Attributes inherited from FontCache | |
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. | |
Static Protected Attributes inherited from FontCache | |
static FontCache * | caches [FS_END] |
All the font caches. | |
Font cache for fonts that are based on a freetype font.
Definition at line 17 of file spritefontcache.h.
SpriteFontCache::SpriteFontCache | ( | FontSize | fs | ) |
Create a new sprite font cache.
fs | The font size to create the cache for. |
Definition at line 38 of file spritefontcache.cpp.
References FontCache::ascender, FontCache::height, InitializeUnicodeGlyphMap(), ScaleFontTrad(), and ScaleGUITrad().
|
overridevirtual |
Do we need to draw a glyph shadow?
Implements FontCache.
Definition at line 126 of file spritefontcache.cpp.
|
inlineoverridevirtual |
Get the name of this font.
Implements FontCache.
Definition at line 27 of file spritefontcache.h.
Get the glyph (sprite) of the given key.
key | The key to look up. |
Implements FontCache.
Definition at line 104 of file spritefontcache.cpp.
References GetUnicodeGlyph().
|
overridevirtual |
Get the width of the glyph with the given key.
key | The key to look up. |
Implements FontCache.
Definition at line 111 of file spritefontcache.cpp.
References GetUnicodeGlyph().
Get SpriteID associated with a GlyphID.
key | Glyph to find. |
Definition at line 50 of file spritefontcache.cpp.
References glyph_to_spriteid_map.
Referenced by GetGlyph(), and GetGlyphWidth().
|
overridevirtual |
Map a character into a glyph.
key | The character. |
fallback | Allow fallback to the parent font. |
Implements FontCache.
Definition at line 118 of file spritefontcache.cpp.
|
overridevirtual |
Map a SpriteID to the key.
key | The key to map to. |
sprite | The sprite that is being mapped. |
Implements FontCache.
Definition at line 57 of file spritefontcache.cpp.
References glyph_to_spriteid_map.