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
 
const FontCharMapRefGetFontCharMap () 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 vcl::font::FontSelectPattern &rFSD)
 

Private Member Functions

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

Private Attributes

FreetypeFontInstancemrFontInstance
 
tools::Long mnCos
 
tools::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 112 of file glyphcache.hxx.

Constructor & Destructor Documentation

◆ ~FreetypeFont()

FreetypeFont::~FreetypeFont ( )

◆ FreetypeFont()

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

Member Function Documentation

◆ AlmostHorizontalDrainsRenderingPool()

static bool FreetypeFont::AlmostHorizontalDrainsRenderingPool ( int  nRatio,
const vcl::font::FontSelectPattern rFSD 
)
static

◆ ApplyGlyphTransform()

void FreetypeFont::ApplyGlyphTransform ( bool  bVertical,
FT_Glyph   
) const
private

◆ GetAntialiasAdvice()

bool FreetypeFont::GetAntialiasAdvice ( ) const

◆ GetFontCapabilities()

bool FreetypeFont::GetFontCapabilities ( vcl::FontCapabilities ) const

◆ GetFontCharMap()

const FontCharMapRef & FreetypeFont::GetFontCharMap ( ) const

◆ GetFontFaceIndex()

int FreetypeFont::GetFontFaceIndex ( ) const

◆ GetFontFaceVariation()

int FreetypeFont::GetFontFaceVariation ( ) const

◆ GetFontFileName()

const OString & FreetypeFont::GetFontFileName ( ) const

◆ GetFontMetric()

void FreetypeFont::GetFontMetric ( ImplFontMetricDataRef const &  ) const

◆ GetFontOptions()

const FontConfigFontOptions * FreetypeFont::GetFontOptions ( ) const

◆ GetFtFace()

FT_Face FreetypeFont::GetFtFace ( ) const

◆ GetGlyphBoundRect()

bool FreetypeFont::GetGlyphBoundRect ( sal_GlyphId  ,
tools::Rectangle ,
bool   
) const

◆ GetGlyphOutline()

bool FreetypeFont::GetGlyphOutline ( sal_GlyphId  ,
basegfx::B2DPolyPolygon ,
bool   
) const

◆ GetTable()

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

◆ NeedsArtificialBold()

bool FreetypeFont::NeedsArtificialBold ( ) const
inline

Definition at line 123 of file glyphcache.hxx.

◆ NeedsArtificialItalic()

bool FreetypeFont::NeedsArtificialItalic ( ) const
inline

Definition at line 124 of file glyphcache.hxx.

◆ SetFontVariationsOnHBFont()

void FreetypeFont::SetFontVariationsOnHBFont ( hb_font_t *  pHbFace) const

◆ TestFont()

bool FreetypeFont::TestFont ( ) const
inline

Definition at line 120 of file glyphcache.hxx.

Friends And Related Function Documentation

◆ FreetypeFontInstance

friend class FreetypeFontInstance
friend

Definition at line 144 of file glyphcache.hxx.

◆ FreetypeManager

friend class FreetypeManager
friend

Definition at line 145 of file glyphcache.hxx.

Member Data Documentation

◆ maFaceFT

FT_FaceRec_* FreetypeFont::maFaceFT
private

Definition at line 162 of file glyphcache.hxx.

◆ maSizeFT

FT_SizeRec_* FreetypeFont::maSizeFT
private

Definition at line 163 of file glyphcache.hxx.

◆ mbArtBold

bool FreetypeFont::mbArtBold
private

Definition at line 169 of file glyphcache.hxx.

◆ mbArtItalic

bool FreetypeFont::mbArtItalic
private

Definition at line 168 of file glyphcache.hxx.

◆ mbFaceOk

bool FreetypeFont::mbFaceOk
private

Definition at line 167 of file glyphcache.hxx.

◆ mfStretch

double FreetypeFont::mfStretch
private

Definition at line 161 of file glyphcache.hxx.

◆ mnCos

tools::Long FreetypeFont::mnCos
private

Definition at line 154 of file glyphcache.hxx.

◆ mnLoadFlags

FT_Int FreetypeFont::mnLoadFlags
private

Definition at line 160 of file glyphcache.hxx.

◆ mnPrioAntiAlias

int FreetypeFont::mnPrioAntiAlias
private

Definition at line 158 of file glyphcache.hxx.

◆ mnSin

tools::Long FreetypeFont::mnSin
private

Definition at line 155 of file glyphcache.hxx.

◆ mnWidth

int FreetypeFont::mnWidth
private

Definition at line 157 of file glyphcache.hxx.

◆ mrFontInstance

FreetypeFontInstance& FreetypeFont::mrFontInstance
private

Definition at line 151 of file glyphcache.hxx.

◆ mxFontInfo

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

Definition at line 159 of file glyphcache.hxx.

◆ mxFontOptions

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

Definition at line 165 of file glyphcache.hxx.


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