OpenTTD Source
12.0-beta2
|
Font cache for fonts that are based on a freetype font. More...
Public Member Functions | |
FreeTypeFontCache (FontSize fs, FT_Face face, int pixels) | |
Create a new FreeTypeFontCache. More... | |
~FreeTypeFontCache () | |
Free everything that was allocated for this font cache. | |
virtual void | ClearFontCache () |
Reset cached glyphs. | |
virtual GlyphID | MapCharToGlyph (WChar key) |
Map a character into a glyph. More... | |
virtual const char * | GetFontName () |
Get the name of this font. More... | |
virtual bool | IsBuiltInFont () |
Is this a built-in sprite font? | |
![]() | |
TrueTypeFontCache (FontSize fs, int pixels) | |
Create a new TrueTypeFontCache. More... | |
virtual | ~TrueTypeFontCache () |
Free everything that was allocated for this font cache. | |
int | GetFontSize () const override |
Get the nominal font size of the font. More... | |
SpriteID | GetUnicodeGlyph (WChar key) override |
Get the SpriteID mapped to the given key. More... | |
void | SetUnicodeGlyph (WChar key, SpriteID sprite) override |
Map a SpriteID to the key. More... | |
void | InitializeUnicodeGlyphMap () override |
Initialize the glyph map. | |
const Sprite * | GetGlyph (GlyphID key) override |
Get the glyph (sprite) of the given key. More... | |
const void * | GetFontTable (uint32 tag, size_t &length) override |
Read a font table from the font. More... | |
void | ClearFontCache () override |
Reset cached glyphs. | |
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... | |
bool | IsBuiltInFont () override |
Is this a built-in sprite font? | |
![]() | |
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... | |
int | GetUnitsPerEM () const |
Get the units per EM value 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 | |
void | SetFontSize (FontSize fs, FT_Face face, int pixels) |
virtual const void * | InternalGetFontTable (uint32 tag, size_t &length) |
virtual const Sprite * | InternalGetGlyph (GlyphID key, bool aa) |
Private Attributes | |
FT_Face | face |
The font face associated with this font. | |
Additional Inherited Members | |
![]() | |
static FontCache * | Get (FontSize fs) |
Get the font cache of a given font size. More... | |
![]() | |
typedef SmallMap< uint32, std::pair< size_t, const void * > > | FontTable |
Table with font table cache. | |
![]() | |
GlyphEntry * | GetGlyphPtr (GlyphID key) |
void | SetGlyphPtr (GlyphID key, const GlyphEntry *glyph, bool duplicate=false) |
![]() | |
static int | GetDefaultFontHeight (FontSize fs) |
![]() | |
int | req_size |
Requested font size. | |
int | used_size |
Used font size. | |
FontTable | font_tables |
Cached font tables. | |
GlyphEntry ** | glyph_to_sprite |
The glyph cache. More... | |
![]() | |
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 constexpr int | MAX_GLYPH_DIM = 256 |
Maximum glyph dimensions. | |
static constexpr uint | MAX_FONT_MIN_REC_SIZE = 20u |
Upper limit for the recommended font size in case a font file contains nonsensical values. | |
Font cache for fonts that are based on a freetype font.
Definition at line 391 of file fontcache.cpp.
FreeTypeFontCache::FreeTypeFontCache | ( | FontSize | fs, |
FT_Face | face, | ||
int | pixels | ||
) |
Create a new FreeTypeFontCache.
fs | The font size that is going to be cached. |
face | The font that has to be loaded. |
pixels | The number of pixels this font should be high. |
Definition at line 417 of file fontcache.cpp.
References face, and FontCache::fs.
|
inlinevirtual |
Get the name of this font.
Implements FontCache.
Definition at line 404 of file fontcache.cpp.
References face.
Map a character into a glyph.
key | The character. |
Implements FontCache.
Definition at line 648 of file fontcache.cpp.