kodi
|
Classes | |
struct | Character |
struct | CTranslatedVertices |
struct | Glyph |
struct | RunInfo |
Public Member Functions | |
void | Clear () |
bool | Load (const std::string &strFilename, float height=20.0f, float aspect=1.0f, float lineSpacing=1.0f, bool border=false) |
void | Begin () |
void | End () |
virtual CVertexBuffer | CreateVertexBuffer (const std::vector< SVertex > &vertices) const |
virtual void | DestroyVertexBuffer (CVertexBuffer &bufferHandle) const |
const std::string & | GetFontIdent () const |
Static Public Member Functions | |
static CGUIFontTTF * | CreateGUIFontTTF (const std::string &fontIdent) |
Protected Member Functions | |
CGUIFontTTF (const std::string &fontIdent) | |
void | AddReference () |
void | RemoveReference () |
std::vector< Glyph > | GetHarfBuzzShapedGlyphs (const vecText &text) |
float | GetTextWidthInternal (const vecText &text) |
float | GetTextWidthInternal (const vecText &text, const std::vector< Glyph > &glyph) |
float | GetCharWidthInternal (character_t ch) |
float | GetTextHeight (float lineSpacing, int numLines) const |
float | GetTextBaseLine () const |
float | GetLineHeight (float lineSpacing) const |
float | GetFontHeight () const |
void | DrawTextInternal (CGraphicContext &context, float x, float y, const std::vector< UTILS::COLOR::Color > &colors, const vecText &text, uint32_t alignment, float maxPixelWidth, bool scrolling, float dx=0.0f, float dy=0.0f) |
Character * | GetCharacter (character_t letter, FT_UInt glyphIndex) |
bool | CacheCharacter (FT_UInt glyphIndex, uint32_t style, Character *ch) |
void | RenderCharacter (CGraphicContext &context, float posX, float posY, const Character *ch, UTILS::COLOR::Color color, bool roundX, std::vector< SVertex > &vertices) |
void | ClearCharacterCache () |
virtual std::unique_ptr< CTexture > | ReallocTexture (unsigned int &newHeight)=0 |
virtual bool | CopyCharToTexture (FT_BitmapGlyph bitGlyph, unsigned int x1, unsigned int y1, unsigned int x2, unsigned int y2)=0 |
virtual void | DeleteHardwareTexture ()=0 |
void | SetGlyphStrength (FT_GlyphSlot slot, int glyphStrength) |
unsigned int | GetTextureLineHeight () const |
the height of each line in the texture. Accounts for spacing between lines to avoid characters overlapping. | |
unsigned int | GetMaxFontHeight () const |
Static Protected Member Functions | |
static void | ObliqueGlyph (FT_GlyphSlot slot) |
Protected Attributes | |
float | m_height {0.0f} |
std::unique_ptr< CTexture > | m_texture |
unsigned int | m_textureWidth {0} |
unsigned int | m_textureHeight {0} |
int | m_posX {0} |
int | m_posY {0} |
UTILS::COLOR::Color | m_color {UTILS::COLOR::NONE} |
std::vector< Character > | m_char |
Character * | m_charquick [LOOKUPTABLE_SIZE] {nullptr} |
bool | m_ellipseCached {false} |
float | m_ellipsesWidth {0.0f} |
unsigned int | m_cellBaseLine {0} |
unsigned int | m_cellHeight {0} |
unsigned int | m_maxFontHeight {0} |
unsigned int | m_nestedBeginCount {0} |
FT_Face | m_face {nullptr} |
FT_Stroker | m_stroker {nullptr} |
hb_font_t * | m_hbFont {nullptr} |
float | m_originX {0.0f} |
float | m_originY {0.0f} |
unsigned int | m_nTexture {0} |
std::vector< CTranslatedVertices > | m_vertexTrans |
std::vector< SVertex > | m_vertex |
float | m_textureScaleX {0.0f} |
float | m_textureScaleY {0.0f} |
const std::string | m_fontIdent |
std::vector< uint8_t > | m_fontFileInMemory |
CGUIFontCache< CGUIFontCacheStaticPosition, CGUIFontCacheStaticValue > | m_staticCache |
CGUIFontCache< CGUIFontCacheDynamicPosition, CGUIFontCacheDynamicValue > | m_dynamicCache |
CRenderSystemBase * | m_renderSystem |
Friends | |
class | CGUIFont |
|
protected |