IBSimu 1.0.4
Classes | Public Member Functions | Static Public Member Functions | Static Public Attributes

FontLib Class Reference

Font engine using FreeType, FontConfig and cairographics. More...

#include <fonts.hpp>

List of all members.

Classes

struct  Symbolname
 Glyph symbol name entry. More...

Public Member Functions

 FontLib ()
 ~FontLib ()
FcConfig * fc (void)
void push_auto_search_font (const std::string &family)
int pop_auto_search_font (void)
std::string family (void) const
cairo_font_slant_t slant (void) const
cairo_font_weight_t weight (void) const
cairo_font_face_t * font_face (void) const
FcPattern * fcpattern (void) const
void push_font (FcPattern *pat)
void push_font (const std::string &family, cairo_font_slant_t slant, cairo_font_weight_t weight)
int pop_font (void)
void text_extents (cairo_t *cairo, const std::string &str, cairo_text_extents_t *extents)
void draw_text (cairo_t *cairo, const std::string &str, double &x, double &y)
 Draw piece of text at (x,y)

Static Public Member Functions

static void combine_extents (cairo_text_extents_t *extents1, double x1, double y1, const cairo_text_extents_t *extents2, double x2, double y2)
 Combine extents.

Static Public Attributes

static const Symbolname symbols []
 Chart of glyph symbol names.

Detailed Description

Font engine using FreeType, FontConfig and cairographics.


Constructor & Destructor Documentation

FontLib::FontLib ( )
FontLib::~FontLib ( )

Member Function Documentation

static void FontLib::combine_extents ( cairo_text_extents_t *  extents1,
double  x1,
double  y1,
const cairo_text_extents_t *  extents2,
double  x2,
double  y2 
) [static]

Combine extents.

Combine (extents1,x1,y1) and (extents2,x2,y2) to database (extents1,x1,y1). The extents2 is taken to be latter and therefore advance is defined to be from origo of the first data to the advance of the second data.

void FontLib::draw_text ( cairo_t *  cairo,
const std::string &  str,
double &  x,
double &  y 
)

Draw piece of text at (x,y)

The (x,y) are updated according to cursor advance.

std::string FontLib::family ( void  ) const
FcConfig* FontLib::fc ( void  ) [inline]
FcPattern* FontLib::fcpattern ( void  ) const
cairo_font_face_t* FontLib::font_face ( void  ) const
int FontLib::pop_auto_search_font ( void  )
int FontLib::pop_font ( void  )
void FontLib::push_auto_search_font ( const std::string &  family)
void FontLib::push_font ( const std::string &  family,
cairo_font_slant_t  slant,
cairo_font_weight_t  weight 
)
void FontLib::push_font ( FcPattern *  pat)
cairo_font_slant_t FontLib::slant ( void  ) const
void FontLib::text_extents ( cairo_t *  cairo,
const std::string &  str,
cairo_text_extents_t *  extents 
)
cairo_font_weight_t FontLib::weight ( void  ) const

Member Data Documentation

Chart of glyph symbol names.


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