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 (LogicalFontInstance *pFontInstance, FreetypeFontInfo *)
 
 ~FreetypeFont ()
 
const OString & GetFontFileName () const
 
int GetFontFaceIndex () const
 
int GetFontFaceVariation () const
 
bool TestFont () const
 
FT_Face GetFtFace () const
 
int GetLoadFlags () const
 
const FontConfigFontOptionsGetFontOptions () const
 
void ClearFontOptions ()
 
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
 
FreetypeFontInstanceGetFontInstance () const
 
void SetFontVariationsOnHBFont (hb_font_t *pHbFace) const
 

Static Public Member Functions

static bool AlmostHorizontalDrainsRenderingPool ()
 

Private Member Functions

void AddRef () const
 
long GetRefCount () const
 
long Release () const
 
sal_uLong GetByteCount () const
 
void ReleaseFromGarbageCollect ()
 
void ApplyGlyphTransform (bool bVertical, FT_Glyph) const
 

Private Attributes

rtl::Reference< FreetypeFontInstancempFontInstance
 
long mnRefCount
 
sal_uLong mnBytesUsed
 
FreetypeFontmpPrevGCFont
 
FreetypeFontmpNextGCFont
 
long mnCos
 
long mnSin
 
int mnWidth
 
int const mnPrioAntiAlias
 
FreetypeFontInfompFontInfo
 
FT_Int mnLoadFlags
 
double mfStretch
 
FT_FaceRec_ * maFaceFT
 
FT_SizeRec_ * maSizeFT
 
std::unique_ptr< FontConfigFontOptionsmxFontOptions
 
bool mbFaceOk
 
bool mbArtItalic
 
bool mbArtBold
 

Friends

class GlyphCache
 
class FreetypeFontInstance
 
class X11SalGraphics
 
class CairoTextRender
 

Detailed Description

Definition at line 91 of file glyphcache.hxx.

Constructor & Destructor Documentation

FreetypeFont::FreetypeFont ( LogicalFontInstance pFontInstance,
FreetypeFontInfo  
)
FreetypeFont::~FreetypeFont ( )

Member Function Documentation

void FreetypeFont::AddRef ( ) const
inlineprivate

Definition at line 133 of file glyphcache.hxx.

References mnRefCount.

static bool FreetypeFont::AlmostHorizontalDrainsRenderingPool ( )
static
void FreetypeFont::ApplyGlyphTransform ( bool  bVertical,
FT_Glyph   
) const
private
void FreetypeFont::ClearFontOptions ( )
bool FreetypeFont::GetAntialiasAdvice ( ) const
sal_uLong FreetypeFont::GetByteCount ( ) const
inlineprivate

Definition at line 136 of file glyphcache.hxx.

References mnBytesUsed.

bool FreetypeFont::GetFontCapabilities ( vcl::FontCapabilities ) const
FontCharMapRef FreetypeFont::GetFontCharMap ( ) const
int FreetypeFont::GetFontFaceIndex ( ) const
int FreetypeFont::GetFontFaceVariation ( ) const
const OString& FreetypeFont::GetFontFileName ( ) const
FreetypeFontInstance* FreetypeFont::GetFontInstance ( ) const
inline

Definition at line 117 of file glyphcache.hxx.

References mpFontInstance.

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
int FreetypeFont::GetLoadFlags ( ) const
inline

Definition at line 102 of file glyphcache.hxx.

References mnLoadFlags.

long FreetypeFont::GetRefCount ( ) const
inlineprivate

Definition at line 134 of file glyphcache.hxx.

References mnRefCount.

const unsigned char* FreetypeFont::GetTable ( const char *  pName,
sal_uLong pLength 
) const
bool FreetypeFont::NeedsArtificialBold ( ) const
inline

Definition at line 105 of file glyphcache.hxx.

References mbArtBold.

bool FreetypeFont::NeedsArtificialItalic ( ) const
inline

Definition at line 106 of file glyphcache.hxx.

References mbArtItalic.

long FreetypeFont::Release ( ) const
private
void FreetypeFont::ReleaseFromGarbageCollect ( )
private
void FreetypeFont::SetFontVariationsOnHBFont ( hb_font_t *  pHbFace) const
bool FreetypeFont::TestFont ( ) const
inline

Definition at line 100 of file glyphcache.hxx.

References mbFaceOk.

Friends And Related Function Documentation

friend class CairoTextRender
friend

Definition at line 131 of file glyphcache.hxx.

friend class FreetypeFontInstance
friend

Definition at line 129 of file glyphcache.hxx.

friend class GlyphCache
friend

Definition at line 128 of file glyphcache.hxx.

friend class X11SalGraphics
friend

Definition at line 130 of file glyphcache.hxx.

Member Data Documentation

FT_FaceRec_* FreetypeFont::maFaceFT
private

Definition at line 160 of file glyphcache.hxx.

FT_SizeRec_* FreetypeFont::maSizeFT
private

Definition at line 161 of file glyphcache.hxx.

bool FreetypeFont::mbArtBold
private

Definition at line 167 of file glyphcache.hxx.

Referenced by NeedsArtificialBold().

bool FreetypeFont::mbArtItalic
private

Definition at line 166 of file glyphcache.hxx.

Referenced by NeedsArtificialItalic().

bool FreetypeFont::mbFaceOk
private

Definition at line 165 of file glyphcache.hxx.

Referenced by TestFont().

double FreetypeFont::mfStretch
private

Definition at line 159 of file glyphcache.hxx.

sal_uLong FreetypeFont::mnBytesUsed
mutableprivate

Definition at line 146 of file glyphcache.hxx.

Referenced by GetByteCount().

long FreetypeFont::mnCos
private

Definition at line 152 of file glyphcache.hxx.

FT_Int FreetypeFont::mnLoadFlags
private

Definition at line 158 of file glyphcache.hxx.

Referenced by GetLoadFlags().

int const FreetypeFont::mnPrioAntiAlias
private

Definition at line 156 of file glyphcache.hxx.

long FreetypeFont::mnRefCount
mutableprivate

Definition at line 145 of file glyphcache.hxx.

Referenced by AddRef(), and GetRefCount().

long FreetypeFont::mnSin
private

Definition at line 153 of file glyphcache.hxx.

int FreetypeFont::mnWidth
private

Definition at line 155 of file glyphcache.hxx.

FreetypeFontInfo* FreetypeFont::mpFontInfo
private

Definition at line 157 of file glyphcache.hxx.

rtl::Reference<FreetypeFontInstance> FreetypeFont::mpFontInstance
private

Definition at line 142 of file glyphcache.hxx.

Referenced by GetFontInstance().

FreetypeFont* FreetypeFont::mpNextGCFont
private

Definition at line 149 of file glyphcache.hxx.

FreetypeFont* FreetypeFont::mpPrevGCFont
private

Definition at line 148 of file glyphcache.hxx.

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

Definition at line 163 of file glyphcache.hxx.


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