FontEnginePlugin is the interface definition for font engine plugins. More...
#include <kanzi/core.ui/font/font_engine_plugin.hpp>
Classes | |
struct | BackendProperties |
Font backend properties. More... | |
Public Types | |
enum | FontEngine { FontEngine::MockFontEngine, FontEngine::FreeTypeFontEngine, FontEngine::ITypeFontEngine } |
Enumeration for different types of font engine (rasterizer library). More... | |
Public Types inherited from kanzi::Module | |
typedef vector< const Metaclass * > | MetaclassContainer |
typedef MetaclassContainer::iterator | MetaclassIterator |
Public Member Functions | |
virtual FontEngine | getEngineType () const =0 |
Returns the font engine type that is used by this font engine plugin. More... | |
virtual FontLoaderPtr | getFontLoader (Domain *domain) const =0 |
Creates a FontLoader object. More... | |
virtual TextShaperPtr | getShaper (const FontRuntime &font) const =0 |
Creates a TextShaper object. More... | |
virtual void | initialize (const BackendProperties &properties)=0 |
Initializes a font backend with the given properties. More... | |
Public Member Functions inherited from kanzi::Module | |
virtual void | destroy () |
virtual MetaclassContainer | getMetaclassesOverride () |
Module () | |
virtual void | registerDebugRenderingFunctions (DebugRenderRegistry &) |
Register the module debug rendering functions. More... | |
virtual void | registerMetadataOverride (ObjectFactory &) |
Register the rest of module metadata, such as loaders for types in module. More... | |
void | setDomain (Domain *domain) |
Set the domain. More... | |
Static Public Attributes | |
static const string | s_FreeTypeFontEngineName |
Name of the FreeType font engine plugin. More... | |
static const string | s_iTypeFontEngineName |
Name of the iType font engine plugin. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from kanzi::Module | |
virtual | ~Module ()=default |
Destructor. More... | |
Protected Attributes inherited from kanzi::Module | |
Domain * | m_domain |
The domain this module is registered to. More... | |
FontEnginePlugin is the interface definition for font engine plugins.
Font engine plugins contain both font loaders for creating FontFile objects and shapers. Kanzi uses the shapers to shape text that uses Fonts from the same plugin.
|
strong |
Enumeration for different types of font engine (rasterizer library).
|
pure virtual |
Returns the font engine type that is used by this font engine plugin.
Implemented in kanzi::ItypeFontEnginePlugin, and kanzi::FreeTypeFontEnginePlugin.
|
pure virtual |
Creates a FontLoader object.
domain | The UI domain to which you want the font family to belong. |
Implemented in kanzi::ItypeFontEnginePlugin, and kanzi::FreeTypeFontEnginePlugin.
|
pure virtual |
Creates a TextShaper object.
font | The Font that the shaper will use. |
Implemented in kanzi::ItypeFontEnginePlugin, and kanzi::FreeTypeFontEnginePlugin.
|
pure virtual |
Initializes a font backend with the given properties.
properties | The properties with which to initialize a font backend. |
Implemented in kanzi::ItypeFontEnginePlugin, and kanzi::FreeTypeFontEnginePlugin.
|
static |
Name of the FreeType font engine plugin.
Kanzi uses this name to automatically search and register font engine with this name to be available to the font manager.
|
static |
Name of the iType font engine plugin.
Kanzi uses this name to automatically search and register font engine with this name to be available to the font manager.