FontLib Class Reference

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

#include <fonts.hpp>

List of all members.

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.

Classes

struct  Symbolname
 Glyph symbol name entry. More...


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

const FontLib::Symbolname FontLib::symbols [static]

Chart of glyph symbol names.


The documentation for this class was generated from the following files:
Generated on Thu Apr 21 13:39:22 2011 for IBSimu by  doxygen 1.4.7