LibreOffice Module vcl (master)  1
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
FreetypeFont Class Referencefinal

#include <glyphcache.hxx>

Collaboration diagram for FreetypeFont:
[legend]

Public Member Functions

 ~FreetypeFont ()
 
const OString & GetFontFileName () const
 
int GetFontFaceIndex () const
 
int GetFontFaceVariation () const
 
bool TestFont () const
 
FT_Face GetFtFace () const
 
const FontConfigFontOptionsGetFontOptions () const
 
bool NeedsArtificialBold () const
 
bool NeedsArtificialItalic () const
 
void GetFontMetric (ImplFontMetricDataRef const &) const
 
const unsigned char * GetTable (const char *pName, sal_uLong *pLength) const
 
FontCharMapRef GetFontCharMap () const
 
bool GetFontCapabilities (vcl::FontCapabilities &) const
 
bool GetGlyphBoundRect (sal_GlyphId, tools::Rectangle &, bool) const
 
bool GetGlyphOutline (sal_GlyphId, basegfx::B2DPolyPolygon &, bool) const
 
bool GetAntialiasAdvice () const
 
void SetFontVariationsOnHBFont (hb_font_t *pHbFace) const
 

Static Public Member Functions

static bool AlmostHorizontalDrainsRenderingPool (int nRatio, const FontSelectPattern &rFSD)
 

Private Member Functions

 FreetypeFont (FreetypeFontInstance &, std::shared_ptr< FreetypeFontInfo > &rFontInfo)
 
void ApplyGlyphTransform (bool bVertical, FT_Glyph) const
 

Private Attributes

FreetypeFontInstancemrFontInstance
 
long mnCos
 
long mnSin
 
int mnWidth
 
int mnPrioAntiAlias
 
std::shared_ptr< FreetypeFontInfomxFontInfo
 
FT_Int mnLoadFlags
 
double mfStretch
 
FT_FaceRec_ * maFaceFT
 
FT_SizeRec_ * maSizeFT
 
std::unique_ptr< FontConfigFontOptionsmxFontOptions
 
bool mbFaceOk
 
bool mbArtItalic
 
bool mbArtBold
 

Friends

class FreetypeFontInstance
 
class FreetypeManager
 

Detailed Description

Definition at line 109 of file glyphcache.hxx.

Constructor & Destructor Documentation

FreetypeFont::~FreetypeFont ( )
FreetypeFont::FreetypeFont ( FreetypeFontInstance ,
std::shared_ptr< FreetypeFontInfo > &  rFontInfo 
)
explicitprivate

Member Function Documentation

static bool FreetypeFont::AlmostHorizontalDrainsRenderingPool ( int  nRatio,
const FontSelectPattern rFSD 
)
static
void FreetypeFont::ApplyGlyphTransform ( bool  bVertical,
FT_Glyph   
) const
private
bool FreetypeFont::GetAntialiasAdvice ( ) const
bool FreetypeFont::GetFontCapabilities ( vcl::FontCapabilities ) const
FontCharMapRef FreetypeFont::GetFontCharMap ( ) const
int FreetypeFont::GetFontFaceIndex ( ) const
int FreetypeFont::GetFontFaceVariation ( ) const
const OString& FreetypeFont::GetFontFileName ( ) const
void FreetypeFont::GetFontMetric ( ImplFontMetricDataRef const &  ) const
const FontConfigFontOptions* FreetypeFont::GetFontOptions ( ) const
FT_Face FreetypeFont::GetFtFace ( ) const
bool FreetypeFont::GetGlyphBoundRect ( sal_GlyphId  ,
tools::Rectangle ,
bool   
) const
bool FreetypeFont::GetGlyphOutline ( sal_GlyphId  ,
basegfx::B2DPolyPolygon ,
bool   
) const
const unsigned char* FreetypeFont::GetTable ( const char *  pName,
sal_uLong pLength 
) const
bool FreetypeFont::NeedsArtificialBold ( ) const
inline

Definition at line 120 of file glyphcache.hxx.

bool FreetypeFont::NeedsArtificialItalic ( ) const
inline

Definition at line 121 of file glyphcache.hxx.

void FreetypeFont::SetFontVariationsOnHBFont ( hb_font_t *  pHbFace) const
bool FreetypeFont::TestFont ( ) const
inline

Definition at line 117 of file glyphcache.hxx.

Friends And Related Function Documentation

friend class FreetypeFontInstance
friend

Definition at line 141 of file glyphcache.hxx.

friend class FreetypeManager
friend

Definition at line 142 of file glyphcache.hxx.

Member Data Documentation

FT_FaceRec_* FreetypeFont::maFaceFT
private

Definition at line 159 of file glyphcache.hxx.

FT_SizeRec_* FreetypeFont::maSizeFT
private

Definition at line 160 of file glyphcache.hxx.

bool FreetypeFont::mbArtBold
private

Definition at line 166 of file glyphcache.hxx.

bool FreetypeFont::mbArtItalic
private

Definition at line 165 of file glyphcache.hxx.

bool FreetypeFont::mbFaceOk
private

Definition at line 164 of file glyphcache.hxx.

double FreetypeFont::mfStretch
private

Definition at line 158 of file glyphcache.hxx.

long FreetypeFont::mnCos
private

Definition at line 151 of file glyphcache.hxx.

FT_Int FreetypeFont::mnLoadFlags
private

Definition at line 157 of file glyphcache.hxx.

int FreetypeFont::mnPrioAntiAlias
private

Definition at line 155 of file glyphcache.hxx.

long FreetypeFont::mnSin
private

Definition at line 152 of file glyphcache.hxx.

int FreetypeFont::mnWidth
private

Definition at line 154 of file glyphcache.hxx.

FreetypeFontInstance& FreetypeFont::mrFontInstance
private

Definition at line 148 of file glyphcache.hxx.

std::shared_ptr<FreetypeFontInfo> FreetypeFont::mxFontInfo
private

Definition at line 156 of file glyphcache.hxx.

std::unique_ptr<FontConfigFontOptions> FreetypeFont::mxFontOptions
mutableprivate

Definition at line 162 of file glyphcache.hxx.


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