Kanzi 3.9.16
kanzi::ScriptStyleFontResolver Class Reference

Data-driven script -> FontFamily resolver used as the FreeType plugin global resolver. More...

#include <kanzi/plugins/freetype/freetype_script_font_resolver.hpp>

Inheritance diagram for kanzi::ScriptStyleFontResolver:
[legend]

Public Member Functions

std::vector< FontFamilySharedPtr > getExtendedFamilies () const override
 Programmatic Extended chain (registerFallbackFamily), Studio order.
 
const std::vector< FontFamilySharedPtr > & getFallbackFamilies () const
 
bool hasScriptOverrides () const override
 True if this resolver (or a nested fallback) can select a non-primary font.
 
ScriptStyleFontResolver & operator= (const ScriptStyleFontResolver &)=delete
 
ScriptStyleFontResolver & operator= (ScriptStyleFontResolver &&)=delete
 
void registerDefaultFamily (FontFamilySharedPtr family)
 
void registerEmojiFamily (FontFamilySharedPtr family)
 
void registerFallbackFamily (FontFamilySharedPtr family)
 
void registerScriptFamily (UScriptCode script, FontFamilySharedPtr family)
 
FontRuntimeSharedPtr resolveRuntimeFont (FontRuntimeSharedPtr primaryFont, UScriptCode script, bool emoji, const FontStyleDefinition &style) override
 
 ScriptStyleFontResolver (const ScriptStyleFontResolver &)=delete
 
 ScriptStyleFontResolver (FontManager &fm)
 
 ScriptStyleFontResolver (ScriptStyleFontResolver &&)=delete
 
- Public Member Functions inherited from kanzi::IScriptFontResolver
 IScriptFontResolver ()=default
 
 IScriptFontResolver (const IScriptFontResolver &)=delete
 
 IScriptFontResolver (IScriptFontResolver &&)=delete
 
IScriptFontResolver & operator= (const IScriptFontResolver &)=delete
 
IScriptFontResolver & operator= (IScriptFontResolver &&)=delete
 
virtual ~IScriptFontResolver ()=default
 

Detailed Description

Data-driven script -> FontFamily resolver used as the FreeType plugin global resolver.

Never calls FontManager::getRuntimeFont with a null family; falls back to primaryFont instead.

Constructor & Destructor Documentation

◆ ScriptStyleFontResolver() [1/3]

kanzi::ScriptStyleFontResolver::ScriptStyleFontResolver ( const ScriptStyleFontResolver & )
delete

◆ ScriptStyleFontResolver() [2/3]

kanzi::ScriptStyleFontResolver::ScriptStyleFontResolver ( ScriptStyleFontResolver && )
delete

◆ ScriptStyleFontResolver() [3/3]

kanzi::ScriptStyleFontResolver::ScriptStyleFontResolver ( FontManager & fm)
explicit

Member Function Documentation

◆ operator=() [1/2]

ScriptStyleFontResolver & kanzi::ScriptStyleFontResolver::operator= ( const ScriptStyleFontResolver & )
delete

◆ operator=() [2/2]

ScriptStyleFontResolver & kanzi::ScriptStyleFontResolver::operator= ( ScriptStyleFontResolver && )
delete

◆ registerScriptFamily()

void kanzi::ScriptStyleFontResolver::registerScriptFamily ( UScriptCode script,
FontFamilySharedPtr family )

◆ registerDefaultFamily()

void kanzi::ScriptStyleFontResolver::registerDefaultFamily ( FontFamilySharedPtr family)

◆ registerEmojiFamily()

void kanzi::ScriptStyleFontResolver::registerEmojiFamily ( FontFamilySharedPtr family)

◆ registerFallbackFamily()

void kanzi::ScriptStyleFontResolver::registerFallbackFamily ( FontFamilySharedPtr family)

◆ resolveRuntimeFont()

FontRuntimeSharedPtr kanzi::ScriptStyleFontResolver::resolveRuntimeFont ( FontRuntimeSharedPtr primaryFont,
UScriptCode script,
bool emoji,
const FontStyleDefinition & style )
overridevirtual

◆ hasScriptOverrides()

bool kanzi::ScriptStyleFontResolver::hasScriptOverrides ( ) const
overridevirtual

True if this resolver (or a nested fallback) can select a non-primary font.

Used by FreeTypeFontEnginePlugin::getShaper to keep the stock FreeTypeTextShaper when Script Run is inactive (preserves paragraph BiDi for classic tests).

Reimplemented from kanzi::IScriptFontResolver.

◆ getExtendedFamilies()

std::vector< FontFamilySharedPtr > kanzi::ScriptStyleFontResolver::getExtendedFamilies ( ) const
overridevirtual

Programmatic Extended chain (registerFallbackFamily), Studio order.

Reimplemented from kanzi::IScriptFontResolver.

◆ getFallbackFamilies()

const std::vector< FontFamilySharedPtr > & kanzi::ScriptStyleFontResolver::getFallbackFamilies ( ) const

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