FreeTypeFontEnginePlugin is the FreeType font engine plugin implementation. More...
#include <kanzi/plugins/freetype/freetype_plugin.hpp>
Public Member Functions | |
FreeTypeFontEnginePlugin ()=default | |
Constructor. | |
FontEngine | getEngineType () const override |
Returns the font engine type that is used by this font engine plugin. | |
FontLoaderPtr | getFontLoader (Domain *domain) const override |
Creates a FontLoader object. | |
TextShaperPtr | getShaper (const FontRuntime &font) const override |
Creates a TextShaper object. | |
void | initialize (const BackendProperties &properties) override |
Initializes the FreeType font backend with the given properties. | |
Public Member Functions inherited from kanzi::Module | |
virtual void | destroy () |
virtual MetaclassContainer | getMetaclassesOverride () |
Module () | |
virtual void | registerDebugRenderingFunctions (DebugRenderRegistry &) |
Registers the debug rendering functions of the module. | |
virtual void | registerMetadataOverride (ObjectFactory &) |
Registers the rest of the module metadata, such as loaders for types in the module. | |
void | setDomain (Domain *domain) |
Sets the domain. | |
Static Public Member Functions | |
static void | registerModule (Domain *domain) |
Registers FreeType font engine available to font manager. | |
Additional Inherited Members | |
Public Types inherited from kanzi::FontEnginePlugin | |
enum class | FontEngine { MockFontEngine , FreeTypeFontEngine , 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 |
Static Public Attributes inherited from kanzi::FontEnginePlugin | |
static const string | s_FreeTypeFontEngineName |
Name of the FreeType font engine plugin. | |
static const string | s_iTypeFontEngineName |
Name of the iType font engine plugin. | |
Protected Member Functions inherited from kanzi::Module | |
virtual | ~Module ()=default |
Destructor. | |
Protected Attributes inherited from kanzi::Module | |
Domain * | m_domain |
The domain this module is registered to. | |
FreeTypeFontEnginePlugin is the FreeType font engine plugin implementation.
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.
FreeTypeFontEnginePlugin uses FreeType for rasterizing fonts, Harfbuzz for shaping, ICU bidirectional algorithm and libunibreak for line breaking.
|
explicitdefault |
Constructor.
Registers FreeType font engine available to font manager.
domain | The domain to which you want the FreeType font engine module to belong. |
|
overridevirtual |
Returns the font engine type that is used by this font engine plugin.
Implements kanzi::FontEnginePlugin.
|
overridevirtual |
Creates a FontLoader object.
domain | The domain to which you want the FreeType font loader to belong. |
Implements kanzi::FontEnginePlugin.
|
overridevirtual |
Creates a TextShaper object.
font | The Font that the shaper will use. |
Implements kanzi::FontEnginePlugin.
|
overridevirtual |
Initializes the FreeType font backend with the given properties.
properties | The properties with which to initialize the FreeType font backend. |
Implements kanzi::FontEnginePlugin.