OpenTTD Source: FreeTypeFontCache Class Reference

OpenTTD Source 13.1

Public Member Functions | Private Member Functions | Private Attributes
FreeTypeFontCache Class Reference

Font cache for fonts that are based on a freetype font. More...

Inheritance diagram for FreeTypeFontCache:

## 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?
Public Member Functions inherited from TrueTypeFontCache
| 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...
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?
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...
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 Public Member Functions inherited from FontCache
static int | GetDefaultFontHeight (FontSize fs)
static FontCache * | Get (FontSize fs)
| Get the font cache of a given font size. More...
Protected Types inherited from TrueTypeFontCache
typedef SmallMap< uint32, std::pair< size_t, const void * > > | FontTable
| Table with font table cache.
Protected Member Functions inherited from TrueTypeFontCache
GlyphEntry * | GetGlyphPtr (GlyphID key)
void | SetGlyphPtr (GlyphID key, const GlyphEntry *glyph, bool duplicate=false)
Protected Attributes inherited from TrueTypeFontCache
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...
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.
int | units_per_em
| The units per EM value of the font.
Static Protected Attributes inherited from TrueTypeFontCache
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.

## Detailed Description

Font cache for fonts that are based on a freetype font.

Definition at line 31 of file freetypefontcache.cpp.

## Constructor & Destructor Documentation

## ◆ FreeTypeFontCache()

FreeTypeFontCache::FreeTypeFontCache | ( | FontSize | fs,
|  | FT_Face | face,
|  | int | pixels
| ) |  |

Create a new FreeTypeFontCache.

Parameters

  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 57 of file freetypefontcache.cpp.

References face, and FontCache::fs.

## Member Function Documentation

## ◆ GetFontName()

virtual const char* FreeTypeFontCache::GetFontName | ( |  | ) |
| inlinevirtual

Get the name of this font.

Returns
  The name of the font.

Implements FontCache.

Definition at line 44 of file freetypefontcache.cpp.

References face.

## ◆ MapCharToGlyph()

GlyphID FreeTypeFontCache::MapCharToGlyph | ( | WChar | key | ) |
| virtual

Map a character into a glyph.

Parameters

  key | The character.

Returns
  The glyph ID used to draw the character.

Implements FontCache.

Definition at line 282 of file freetypefontcache.cpp.

The documentation for this class was generated from the following file:

- src/fontcache/freetypefontcache.cpp