LibreOffice Module vcl (master) 1
|
#include <PhysicalFontCollection.hxx>
Private Types | |
typedef std::unordered_map< OUString, std::unique_ptr< vcl::font::PhysicalFontFamily > > | PhysicalFontFamilies |
Private Member Functions | |
void | ImplInitMatchData () const |
void | ImplInitGenericGlyphFallback () const |
vcl::font::PhysicalFontFamily * | ImplFindFontFamilyBySearchName (const OUString &) const |
vcl::font::PhysicalFontFamily * | ImplFindFontFamilyBySubstFontAttr (const utl::FontNameAttr &) const |
vcl::font::PhysicalFontFamily * | ImplFindFontFamilyOfDefaultFont () const |
Private Attributes | |
bool | mbMatchData |
PhysicalFontFamilies | maPhysicalFontFamilies |
vcl::font::PreMatchFontSubstitution * | mpPreMatchHook |
vcl::font::GlyphFallbackFontSubstitution * | mpFallbackHook |
std::unique_ptr< std::array< vcl::font::PhysicalFontFamily *, MAX_GLYPHFALLBACK > > | mpFallbackList |
int | mnFallbackCount |
Definition at line 47 of file PhysicalFontCollection.hxx.
|
private |
Definition at line 82 of file PhysicalFontCollection.hxx.
|
explicit |
Definition at line 71 of file PhysicalFontCollection.cxx.
vcl::font::PhysicalFontCollection::~PhysicalFontCollection | ( | ) |
Definition at line 78 of file PhysicalFontCollection.cxx.
References Clear().
void vcl::font::PhysicalFontCollection::Add | ( | vcl::font::PhysicalFontFace * | pNewData | ) |
Definition at line 295 of file PhysicalFontCollection.cxx.
References vcl::font::PhysicalFontFamily::AddFontFace(), FindOrCreateFontFamily(), GetEnglishSearchFontName(), and FontAttributes::GetFamilyName().
void vcl::font::PhysicalFontCollection::Clear | ( | ) |
Definition at line 93 of file PhysicalFontCollection.cxx.
References maPhysicalFontFamilies, mbMatchData, mnFallbackCount, and mpFallbackList.
Referenced by ~PhysicalFontCollection().
std::shared_ptr< PhysicalFontCollection > vcl::font::PhysicalFontCollection::Clone | ( | ) | const |
Definition at line 899 of file PhysicalFontCollection.cxx.
References maPhysicalFontFamilies, mpFallbackHook, mpPreMatchHook, and vcl::font::PhysicalFontFamily::UpdateCloneFontList().
|
inline |
Definition at line 56 of file PhysicalFontCollection.hxx.
Referenced by FindFontFamily().
PhysicalFontFamily * vcl::font::PhysicalFontCollection::FindFontFamily | ( | std::u16string_view | rFontName | ) | const |
Definition at line 318 of file PhysicalFontCollection.cxx.
References GetEnglishSearchFontName(), and ImplFindFontFamilyBySearchName().
Referenced by FindFontFamilyByTokenNames(), ImplFontCache::GetFontInstance(), GetGlyphFallbackFont(), ImplFontCache::GetGlyphFallbackFont(), ImplFindFontFamilyBySubstFontAttr(), and ImplInitGenericGlyphFallback().
PhysicalFontFamily * vcl::font::PhysicalFontCollection::FindFontFamily | ( | vcl::font::FontSelectPattern & | rFSD | ) | const |
Definition at line 957 of file PhysicalFontCollection.cxx.
References vcl::font::Bold, vcl::font::PhysicalFontFamily::CalcType(), Count(), vcl::font::FontSelectPattern::FEAT_PREFIX, FindFontFamilyByAttributes(), FindFontFamilyByTokenNames(), vcl::font::PreMatchFontSubstitution::FindFontSubstitute(), vcl::font::FindMetricCompatibleFont(), utl::DefaultFontConfiguration::get(), utl::DefaultFontConfiguration::getDefaultFont(), GetEnglishSearchFontName(), FontAttributes::GetFamilyName(), FontAttributes::GetFamilyType(), FontAttributes::GetItalic(), GetNextFontToken(), vcl::font::PhysicalFontFamily::GetTypeFaces(), FontAttributes::GetWeight(), FontAttributes::GetWidthType(), ImplFindFontFamilyBySearchName(), ImplFindFontFamilyBySubstFontAttr(), ImplFindFontFamilyOfDefaultFont(), vcl::font::ImplFontSubstitute(), utl::ConfigManager::IsFuzzing(), MsLangId::isKorean(), FontAttributes::IsMicrosoftSymbolEncoded(), MsLangId::isSimplifiedChinese(), MsLangId::isTraditionalChinese(), vcl::font::Italic, ITALIC_DONTKNOW, ITALIC_NONE, ITALIC_NORMAL, LANGUAGE_JAPANESE, vcl::font::lcl_IsCJKFont(), vcl::font::Light, vcl::font::FontSelectPattern::maSearchName, vcl::font::FontSelectPattern::maTargetName, vcl::font::FontSelectPattern::meLanguage, mpPreMatchHook, nIndex, FontAttributes::SetItalic(), FontAttributes::SetWeight(), StripScriptFromName(), WEIGHT_BOLD, WEIGHT_DONTKNOW, WEIGHT_MEDIUM, WEIGHT_NORMAL, and WIDTH_DONTKNOW.
PhysicalFontFamily * vcl::font::PhysicalFontCollection::FindFontFamilyByAttributes | ( | ImplFontAttrs | nSearchType, |
FontWeight | eSearchWeight, | ||
FontWidth | eSearchWidth, | ||
FontItalic | eSearchItalic, | ||
std::u16string_view | rSearchFamily | ||
) | const |
Definition at line 412 of file PhysicalFontCollection.cxx.
References vcl::font::Bold, ImplInitMatchData(), vcl::font::Italic, ITALIC_DONTKNOW, ITALIC_NONE, vcl::font::Light, maPhysicalFontFamilies, vcl::font::NoneItalic, vcl::font::NoneSymbol, vcl::font::Normal, pData, vcl::font::Scalable, vcl::font::Symbol, WEIGHT_BOLD, WEIGHT_DONTKNOW, WEIGHT_MEDIUM, WEIGHT_NORMAL, WIDTH_DONTKNOW, and WIDTH_NORMAL.
Referenced by FindFontFamily(), and ImplFindFontFamilyBySubstFontAttr().
PhysicalFontFamily * vcl::font::PhysicalFontCollection::FindFontFamilyByTokenNames | ( | std::u16string_view | rTokenStr | ) | const |
Definition at line 340 of file PhysicalFontCollection.cxx.
References FindFontFamily(), and GetNextFontToken().
Referenced by FindFontFamily(), and ImplFindFontFamilyOfDefaultFont().
PhysicalFontFamily * vcl::font::PhysicalFontCollection::FindOrCreateFontFamily | ( | const OUString & | rFamilyName | ) |
Definition at line 323 of file PhysicalFontCollection.cxx.
References maPhysicalFontFamilies.
Referenced by Add(), and vcl::font::PhysicalFontFamily::UpdateCloneFontList().
std::unique_ptr< PhysicalFontFaceCollection > vcl::font::PhysicalFontCollection::GetFontFaceCollection | ( | ) | const |
Definition at line 917 of file PhysicalFontCollection.cxx.
References maPhysicalFontFamilies, and vcl::font::PhysicalFontFamily::UpdateDevFontList().
PhysicalFontFamily * vcl::font::PhysicalFontCollection::GetGlyphFallbackFont | ( | vcl::font::FontSelectPattern & | rFontSelData, |
LogicalFontInstance * | pLogicalFont, | ||
OUString & | rMissingCodes, | ||
int | nFallbackLevel | ||
) | const |
Definition at line 181 of file PhysicalFontCollection.cxx.
References LogicalFontInstance::AddFallbackForUnicode(), FindFontFamily(), vcl::font::GlyphFallbackFontSubstitution::FindFontSubstitute(), GetEnglishSearchFontName(), LogicalFontInstance::GetFallbackForUnicode(), FontAttributes::GetWeight(), LogicalFontInstance::IgnoreFallbackForUnicode(), ImplInitGenericGlyphFallback(), vcl::font::FontSelectPattern::maItalicMatrix, vcl::font::FontSelectPattern::maSearchName, vcl::font::FontSelectPattern::mbEmbolden, mnFallbackCount, and mpFallbackHook.
Referenced by ImplFontCache::GetGlyphFallbackFont().
|
private |
Definition at line 305 of file PhysicalFontCollection.cxx.
References GetEnglishSearchFontName(), and maPhysicalFontFamilies.
Referenced by FindFontFamily().
|
private |
Definition at line 360 of file PhysicalFontCollection.cxx.
References FindFontFamily(), FindFontFamilyByAttributes(), ITALIC_DONTKNOW, utl::FontNameAttr::Substitutions, utl::FontNameAttr::Type, u, utl::FontNameAttr::Weight, and utl::FontNameAttr::Width.
Referenced by FindFontFamily().
|
private |
Definition at line 843 of file PhysicalFontCollection.cxx.
References FindFontFamilyByTokenNames(), utl::DefaultFontConfiguration::get(), utl::DefaultFontConfiguration::getDefaultFont(), ImplInitMatchData(), utl::ConfigManager::IsFuzzing(), maPhysicalFontFamilies, and pData.
Referenced by FindFontFamily().
|
private |
Definition at line 106 of file PhysicalFontCollection.cxx.
References FindFontFamily(), vcl::font::PhysicalFontFamily::GetMinQuality(), MAX_GLYPHFALLBACK, mnFallbackCount, and mpFallbackList.
Referenced by GetGlyphFallbackFont().
|
private |
Definition at line 390 of file PhysicalFontCollection.cxx.
References vcl::font::PhysicalFontFamily::InitMatchData(), utl::ConfigManager::IsFuzzing(), maPhysicalFontFamilies, and mbMatchData.
Referenced by FindFontFamilyByAttributes(), and ImplFindFontFamilyOfDefaultFont().
void vcl::font::PhysicalFontCollection::SetFallbackHook | ( | vcl::font::GlyphFallbackFontSubstitution * | pHook | ) |
Definition at line 88 of file PhysicalFontCollection.cxx.
References mpFallbackHook.
void vcl::font::PhysicalFontCollection::SetPreMatchHook | ( | vcl::font::PreMatchFontSubstitution * | pHook | ) |
Definition at line 83 of file PhysicalFontCollection.cxx.
References mpPreMatchHook.
|
private |
Definition at line 83 of file PhysicalFontCollection.hxx.
Referenced by Clear(), Clone(), FindFontFamilyByAttributes(), FindOrCreateFontFamily(), GetFontFaceCollection(), ImplFindFontFamilyBySearchName(), ImplFindFontFamilyOfDefaultFont(), and ImplInitMatchData().
|
mutableprivate |
Definition at line 80 of file PhysicalFontCollection.hxx.
Referenced by Clear(), and ImplInitMatchData().
|
mutableprivate |
Definition at line 89 of file PhysicalFontCollection.hxx.
Referenced by Clear(), GetGlyphFallbackFont(), and ImplInitGenericGlyphFallback().
|
private |
Definition at line 86 of file PhysicalFontCollection.hxx.
Referenced by Clone(), GetGlyphFallbackFont(), and SetFallbackHook().
|
mutableprivate |
Definition at line 88 of file PhysicalFontCollection.hxx.
Referenced by Clear(), and ImplInitGenericGlyphFallback().
|
private |
Definition at line 85 of file PhysicalFontCollection.hxx.
Referenced by Clone(), FindFontFamily(), and SetPreMatchHook().