25#include <freetype/config/ftheader.h>
39#include <unordered_map>
48class PhysicalFontCollection;
53namespace basegfx {
class B2DPolyPolygon; }
54namespace vcl {
struct FontCapabilities; }
86 int nFaceNum,
int nVariantNum,
104 typedef std::unordered_map<sal_IntPtr, std::shared_ptr<FreetypeFontInfo>>
FontInfoList;
105 typedef std::unordered_map<const char*, std::unique_ptr<FreetypeFontFile>, rtl::CStringHash, rtl::CStringEqual>
FontFileList;
std::unique_ptr< FontConfigFontOptions > mxFontOptions
bool GetAntialiasAdvice() const
const OString & GetFontFileName() const
void ApplyGlyphTransform(bool bVertical, FT_Glyph) const
std::shared_ptr< FreetypeFontInfo > mxFontInfo
FT_Face GetFtFace() const
int GetFontFaceVariation() const
void GetFontMetric(FontMetricDataRef const &) const
FreetypeFontInstance & mrFontInstance
const FontConfigFontOptions * GetFontOptions() const
FreetypeFont(FreetypeFontInstance &, std::shared_ptr< FreetypeFontInfo > rFontInfo)
int GetFontFaceIndex() const
bool GetGlyphOutline(sal_GlyphId, basegfx::B2DPolyPolygon &, bool) const
The FreetypeManager caches various aspects of Freetype fonts.
std::unordered_map< sal_IntPtr, std::shared_ptr< FreetypeFontInfo > > FontInfoList
std::unordered_map< const char *, std::unique_ptr< FreetypeFontFile >, rtl::CStringHash, rtl::CStringEqual > FontFileList
FreetypeFont * CreateFont(FreetypeFontInstance *pLogicalFont)
FreetypeFontFile * FindFontFile(const OString &rNativeFileName)
static FreetypeManager & get()
static void InitFreetype()
FontInfoList m_aFontInfoList
void AnnounceFonts(vcl::font::PhysicalFontCollection *) const
void AddFontFile(const OString &rNormalizedName, int nFaceNum, int nVariantNum, sal_IntPtr nFontId, const FontAttributes &)
FontFileList m_aFontFileList
A PhysicalFontFaceCollection is created by a PhysicalFontCollection and becomes invalid when original...