LibreOffice Module vcl (master)
1
|
#include <PhysicalFontCollection.hxx>
Private Types | |
typedef std::unordered_map< OUString, std::unique_ptr< PhysicalFontFamily > > | PhysicalFontFamilies |
Private Member Functions | |
void | ImplInitMatchData () const |
void | ImplInitGenericGlyphFallback () const |
PhysicalFontFamily * | ImplFindFontFamilyBySearchName (const OUString &) const |
PhysicalFontFamily * | ImplFindFontFamilyBySubstFontAttr (const utl::FontNameAttr &) const |
PhysicalFontFamily * | ImplFindFontFamilyOfDefaultFont () const |
Private Attributes | |
bool | mbMatchData |
PhysicalFontFamilies | maPhysicalFontFamilies |
ImplPreMatchFontSubstitution * | mpPreMatchHook |
ImplGlyphFallbackFontSubstitution * | mpFallbackHook |
std::unique_ptr< std::array< PhysicalFontFamily *, MAX_GLYPHFALLBACK > > | mpFallbackList |
int | mnFallbackCount |
Definition at line 39 of file PhysicalFontCollection.hxx.
|
private |
Definition at line 75 of file PhysicalFontCollection.hxx.
|
explicit |
Definition at line 64 of file PhysicalFontCollection.cxx.
PhysicalFontCollection::~PhysicalFontCollection | ( | ) |
Definition at line 71 of file PhysicalFontCollection.cxx.
References Clear().
void PhysicalFontCollection::Add | ( | PhysicalFontFace * | pNewData | ) |
Definition at line 276 of file PhysicalFontCollection.cxx.
References FindOrCreateFontFamily(), GetEnglishSearchFontName(), and FontAttributes::GetFamilyName().
void PhysicalFontCollection::Clear | ( | ) |
Definition at line 86 of file PhysicalFontCollection.cxx.
References maPhysicalFontFamilies, mbMatchData, mnFallbackCount, and mpFallbackList.
Referenced by ~PhysicalFontCollection().
std::shared_ptr< PhysicalFontCollection > PhysicalFontCollection::Clone | ( | ) | const |
Definition at line 870 of file PhysicalFontCollection.cxx.
References maPhysicalFontFamilies, mpFallbackHook, mpPreMatchHook, and PhysicalFontFamily::UpdateCloneFontList().
|
inline |
Definition at line 48 of file PhysicalFontCollection.hxx.
Referenced by FindFontFamily().
PhysicalFontFamily * PhysicalFontCollection::FindFontFamily | ( | const OUString & | rFontName | ) | const |
Definition at line 299 of file PhysicalFontCollection.cxx.
References GetEnglishSearchFontName(), and ImplFindFontFamilyBySearchName().
Referenced by FindFontFamilyByTokenNames(), GetDeviceFontSizeList(), ImplFontCache::GetFontInstance(), GetGlyphFallbackFont(), ImplFontCache::GetGlyphFallbackFont(), ImplFindFontFamilyBySubstFontAttr(), and ImplInitGenericGlyphFallback().
PhysicalFontFamily * PhysicalFontCollection::FindFontFamily | ( | FontSelectPattern & | rFSD | ) | const |
Definition at line 945 of file PhysicalFontCollection.cxx.
References assert(), Bold, PhysicalFontFamily::CalcType(), Count(), FontSelectPattern::FEAT_PREFIX, FindFontFamilyByAttributes(), FindFontFamilyByTokenNames(), ImplPreMatchFontSubstitution::FindFontSubstitute(), FindMetricCompatibleFont(), utl::DefaultFontConfiguration::get(), utl::DefaultFontConfiguration::getDefaultFont(), GetEnglishSearchFontName(), FontAttributes::GetFamilyName(), FontAttributes::GetFamilyType(), FontAttributes::GetItalic(), GetNextFontToken(), FontAttributes::GetWeight(), FontAttributes::GetWidthType(), ImplFindFontFamilyBySearchName(), ImplFindFontFamilyBySubstFontAttr(), ImplFindFontFamilyOfDefaultFont(), ImplFontSubstitute(), utl::ConfigManager::IsFuzzing(), MsLangId::isKorean(), MsLangId::isSimplifiedChinese(), FontAttributes::IsSymbolFont(), MsLangId::isTraditionalChinese(), Italic, ITALIC_DONTKNOW, ITALIC_NONE, ITALIC_NORMAL, LANGUAGE_JAPANESE, lcl_IsCJKFont(), Light, FontSelectPattern::maSearchName, FontSelectPattern::maTargetName, FontSelectPattern::meLanguage, mpPreMatchHook, nIndex, FontAttributes::SetItalic(), FontAttributes::SetWeight(), StripScriptFromName(), WEIGHT_BOLD, WEIGHT_DONTKNOW, WEIGHT_MEDIUM, WEIGHT_NORMAL, and WIDTH_DONTKNOW.
PhysicalFontFamily * PhysicalFontCollection::FindFontFamilyByAttributes | ( | ImplFontAttrs | nSearchType, |
FontWeight | eSearchWeight, | ||
FontWidth | eSearchWidth, | ||
FontItalic | eSearchItalic, | ||
const OUString & | rSearchFamily | ||
) | const |
Definition at line 393 of file PhysicalFontCollection.cxx.
References Bold, PhysicalFontFamily::GetMatchFamilyName(), PhysicalFontFamily::GetMatchType(), PhysicalFontFamily::GetMatchWeight(), PhysicalFontFamily::GetMatchWidth(), PhysicalFontFamily::GetTypeFaces(), ImplInitMatchData(), Italic, ITALIC_DONTKNOW, ITALIC_NONE, Light, maPhysicalFontFamilies, NoneItalic, NoneSymbol, Normal, pData, Scalable, Symbol, WEIGHT_BOLD, WEIGHT_DONTKNOW, WEIGHT_MEDIUM, WEIGHT_NORMAL, WIDTH_DONTKNOW, and WIDTH_NORMAL.
Referenced by FindFontFamily(), and ImplFindFontFamilyBySubstFontAttr().
PhysicalFontFamily * PhysicalFontCollection::FindFontFamilyByTokenNames | ( | const OUString & | rTokenStr | ) | const |
Definition at line 321 of file PhysicalFontCollection.cxx.
References FindFontFamily(), and GetNextFontToken().
Referenced by FindFontFamily(), and ImplFindFontFamilyOfDefaultFont().
PhysicalFontFamily * PhysicalFontCollection::FindOrCreateFontFamily | ( | const OUString & | rFamilyName | ) |
Definition at line 304 of file PhysicalFontCollection.cxx.
References maPhysicalFontFamilies.
Referenced by Add(), and PhysicalFontFamily::UpdateCloneFontList().
std::unique_ptr< ImplDeviceFontList > PhysicalFontCollection::GetDeviceFontList | ( | ) | const |
Definition at line 888 of file PhysicalFontCollection.cxx.
References maPhysicalFontFamilies, and PhysicalFontFamily::UpdateDevFontList().
Referenced by EmbeddedFontsHelper::fontFileUrl().
std::unique_ptr< ImplDeviceFontSizeList > PhysicalFontCollection::GetDeviceFontSizeList | ( | const OUString & | rFontName | ) | const |
Definition at line 901 of file PhysicalFontCollection.cxx.
References FindFontFamily(), and PhysicalFontFamily::GetFontHeights().
PhysicalFontFamily * PhysicalFontCollection::GetGlyphFallbackFont | ( | FontSelectPattern & | rFontSelData, |
LogicalFontInstance * | pLogicalFont, | ||
OUString & | rMissingCodes, | ||
int | nFallbackLevel | ||
) | const |
Definition at line 174 of file PhysicalFontCollection.cxx.
References LogicalFontInstance::AddFallbackForUnicode(), FindFontFamily(), ImplGlyphFallbackFontSubstitution::FindFontSubstitute(), GetEnglishSearchFontName(), LogicalFontInstance::GetFallbackForUnicode(), FontAttributes::GetWeight(), LogicalFontInstance::IgnoreFallbackForUnicode(), ImplInitGenericGlyphFallback(), FontSelectPattern::maItalicMatrix, FontSelectPattern::maSearchName, FontSelectPattern::mbEmbolden, mnFallbackCount, and mpFallbackHook.
Referenced by ImplFontCache::GetGlyphFallbackFont().
|
private |
Definition at line 286 of file PhysicalFontCollection.cxx.
References assert(), GetEnglishSearchFontName(), and maPhysicalFontFamilies.
Referenced by FindFontFamily().
|
private |
Definition at line 341 of file PhysicalFontCollection.cxx.
References FindFontFamily(), FindFontFamilyByAttributes(), ITALIC_DONTKNOW, utl::FontNameAttr::Substitutions, utl::FontNameAttr::Type, utl::FontNameAttr::Weight, and utl::FontNameAttr::Width.
Referenced by FindFontFamily().
|
private |
Definition at line 814 of file PhysicalFontCollection.cxx.
References FindFontFamilyByTokenNames(), utl::DefaultFontConfiguration::get(), utl::DefaultFontConfiguration::getDefaultFont(), PhysicalFontFamily::GetMatchType(), ImplInitMatchData(), utl::ConfigManager::IsFuzzing(), maPhysicalFontFamilies, and pData.
Referenced by FindFontFamily().
|
private |
Definition at line 99 of file PhysicalFontCollection.cxx.
References FindFontFamily(), PhysicalFontFamily::GetMinQuality(), MAX_GLYPHFALLBACK, mnFallbackCount, and mpFallbackList.
Referenced by GetGlyphFallbackFont().
|
private |
Definition at line 371 of file PhysicalFontCollection.cxx.
References PhysicalFontFamily::InitMatchData(), utl::ConfigManager::IsFuzzing(), maPhysicalFontFamilies, and mbMatchData.
Referenced by FindFontFamilyByAttributes(), and ImplFindFontFamilyOfDefaultFont().
void PhysicalFontCollection::SetFallbackHook | ( | ImplGlyphFallbackFontSubstitution * | pHook | ) |
Definition at line 81 of file PhysicalFontCollection.cxx.
References mpFallbackHook.
void PhysicalFontCollection::SetPreMatchHook | ( | ImplPreMatchFontSubstitution * | pHook | ) |
Definition at line 76 of file PhysicalFontCollection.cxx.
References mpPreMatchHook.
|
private |
Definition at line 76 of file PhysicalFontCollection.hxx.
Referenced by Clear(), Clone(), FindFontFamilyByAttributes(), FindOrCreateFontFamily(), GetDeviceFontList(), ImplFindFontFamilyBySearchName(), ImplFindFontFamilyOfDefaultFont(), and ImplInitMatchData().
|
mutableprivate |
Definition at line 73 of file PhysicalFontCollection.hxx.
Referenced by Clear(), and ImplInitMatchData().
|
mutableprivate |
Definition at line 82 of file PhysicalFontCollection.hxx.
Referenced by Clear(), GetGlyphFallbackFont(), and ImplInitGenericGlyphFallback().
|
private |
Definition at line 79 of file PhysicalFontCollection.hxx.
Referenced by Clone(), GetGlyphFallbackFont(), and SetFallbackHook().
|
mutableprivate |
Definition at line 81 of file PhysicalFontCollection.hxx.
Referenced by Clear(), and ImplInitGenericGlyphFallback().
|
private |
Definition at line 78 of file PhysicalFontCollection.hxx.
Referenced by Clone(), FindFontFamily(), and SetPreMatchHook().