MBFont - Simple font abstraction and rendering tools

mbpixbuf contains simple image manipulation and composition functions for client side images. More...

Defines

#define mb_drawable_pixmap(drw)   (drw)->xpixmap
 Returns a drawables X pixmap.

Enumerations

enum  MBEncoding
 enumerated types for text encodings
enum  MBFontWeight
 enumerated types for font weights.
enum  MBFontSlant
 enumerated types for font slant styles
enum  MBFontRenderOpts
 Option flags for text rendering.

Functions

MBColor * mb_col_new_from_spec (MBPixbuf *pb, char *spec)
 Constructs a new MBColor from a string specification.
Bool mb_col_set (MBColor *col, char *spec)
 Sets an existing MBColor from a string specification.
void mb_col_set_rgba (MBColor *col, unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha)
 Sets an existing MBColor from r,g,b,a values.
void mb_col_get_rgba (MBColor *col, unsigned char *red, unsigned char *green, unsigned char *blue, unsigned char *alpha)
 Gets an r,g,b,a values from an existing MBColor.
void mb_col_unref (MBColor *col)
 Unrefs ( frees ) a created MBColor object.
MBFont * mb_font_new (Display *dpy, char *family)
 Constructs a new MBFont instance.
void mb_font_ref (MBFont *font)
 Refs a created MBFont object.
void mb_font_unref (MBFont *font)
 Unrefs ( frees ) a created MBColor object.
MBFont * mb_font_new_from_string (Display *dpy, char *spec)
 Constructs a new MBFont instance.
MBFont * mb_font_set_from_string (MBFont *font, char *spec)
 Sets the font propertys from a textual description.
void mb_font_set_family (MBFont *font, const char *family)
 Sets the fonts family.
char * mb_font_get_family (MBFont *font)
 Gets the fonts family.
void mb_font_set_weight (MBFont *font, MBFontWeight weight)
 Sets the fonts weight.
MBFontWeight mb_font_get_weight (MBFont *font)
 Gets the fonts weight.
void mb_font_set_slant (MBFont *font, MBFontSlant slant)
 Sets the fonts slant.
void mb_font_set_point_size (MBFont *font, int points)
 Sets the fonts size.
int mb_font_get_point_size (MBFont *font)
 Gets the fonts point size.
int mb_font_set_size_to_pixels (MBFont *font, int max_pixels, int *points_to_try)
 Attempts to fit the point size to a pixel size.
void mb_font_set_color (MBFont *font, MBColor *col)
 Sets the fonts color.
MBColor * mb_font_get_color (MBFont *font)
 Gets the fonts point size.
int mb_font_get_height (MBFont *font)
 Gets the fonts height in pixels.
int mb_font_get_ascent (MBFont *font)
 Gets the fonts ascent in pixels.
int mb_font_get_descent (MBFont *font)
 Gets the fonts descent in pixels.
int mb_font_render_simple (MBFont *font, MBDrawable *drw, int x, int y, int width, unsigned char *text, int encoding, MBFontRenderOpts opts)
 Renders a line of text onto a MBDrawable.
int mb_font_render_simple_get_width (MBFont *font, int width, unsigned char *text, int encoding, MBFontRenderOpts opts)
 Returns the width in pixels of any text rendered with mb_font_render_simple, taking into account any clipping.
MBDrawable * mb_drawable_new (MBPixbuf *pixbuf, int width, int height)
 Creates a new MBDrawable instance.
MBDrawable * mb_drawable_new_from_pixmap (MBPixbuf *pixbuf, Pixmap pxm)
 Creates a new MBDrawable instance from a pre-existing pixmap.
void mb_drawable_unref (MBDrawable *drw)
 Unrefs ( frees ) a drawable.

Detailed Description

mbpixbuf contains simple image manipulation and composition functions for client side images.


Function Documentation

void mb_col_get_rgba ( MBColor *  col,
unsigned char *  red,
unsigned char *  green,
unsigned char *  blue,
unsigned char *  alpha 
)

Gets an r,g,b,a values from an existing MBColor.

Parameters:
col MBColor object to query
red red component
green green component
blue blue component
alpha alpha component

MBColor* mb_col_new_from_spec ( MBPixbuf *  pb,
char *  spec 
)

Constructs a new MBColor from a string specification.

The format of the specification can be a color name or the format 'rrggbb[aa]'

Parameters:
pb MBPixbuf reference
spec 
Returns:
a MBColor object or NULL on failure.

Bool mb_col_set ( MBColor *  col,
char *  spec 
)

Sets an existing MBColor from a string specification.

The format of the specification can be a color name or the format 'rrggbb[aa]'

Parameters:
col MBColor object to modify
spec New Color specification
Returns:
True or False on failure.

void mb_col_set_rgba ( MBColor *  col,
unsigned char  red,
unsigned char  green,
unsigned char  blue,
unsigned char  alpha 
)

Sets an existing MBColor from r,g,b,a values.

Parameters:
col MBColor object to modify
red red component
green green component
blue blue component
alpha alpha component

void mb_col_unref ( MBColor *  col  ) 

Unrefs ( frees ) a created MBColor object.

Parameters:
col MBColor object to unref

MBDrawable* mb_drawable_new ( MBPixbuf *  pixbuf,
int  width,
int  height 
)

Creates a new MBDrawable instance.

MBDrawables are what MBfonts get rendered too.

Parameters:
pixbuf A MBPixbuf Instance.
width Width of requested drawable.
height Height of requested drawable.
Returns:
A MBDrawable Instance

MBDrawable* mb_drawable_new_from_pixmap ( MBPixbuf *  pixbuf,
Pixmap  pxm 
)

Creates a new MBDrawable instance from a pre-existing pixmap.

Note, if created like this you are responsable for freeing the the drawables pixmap

Parameters:
pixbuf A MBPixbuf Instance.
pxm the pixmap to create the drawable from
Returns:
A MBDrawable Instance

void mb_drawable_unref ( MBDrawable *  drw  ) 

Unrefs ( frees ) a drawable.

Parameters:
drw MBDrawable to unref

int mb_font_get_ascent ( MBFont *  font  ) 

Gets the fonts ascent in pixels.

Parameters:
font The font to query
Returns:
The font ascent in pixels

MBColor* mb_font_get_color ( MBFont *  font  ) 

Gets the fonts point size.

Parameters:
font The font to query
Returns:
The fonts color

int mb_font_get_descent ( MBFont *  font  ) 

Gets the fonts descent in pixels.

Parameters:
font The font to query
Returns:
The font descent in pixels

char* mb_font_get_family ( MBFont *  font  ) 

Gets the fonts family.

Parameters:
font The font to query
Returns:
font family name

int mb_font_get_height ( MBFont *  font  ) 

Gets the fonts height in pixels.

Parameters:
font The font to query
Returns:
The font height in pixels

int mb_font_get_point_size ( MBFont *  font  ) 

Gets the fonts point size.

Parameters:
font The font to query
Returns:
The font point size

MBFontWeight mb_font_get_weight ( MBFont *  font  ) 

Gets the fonts weight.

Parameters:
font The font to query
Returns:
The font weight

MBFont* mb_font_new ( Display *  dpy,
char *  family 
)

Constructs a new MBFont instance.

Parameters:
dpy X Display
family font family name or NULL
Returns:
a MBFont object or NULL on failure.

MBFont* mb_font_new_from_string ( Display *  dpy,
char *  spec 
)

Constructs a new MBFont instance.

Parameters:
dpy X Display
spec A description of the font. This will take Gtk2 style font descriptions or Xft style ones
Returns:
a MBFont object or NULL on failure.

void mb_font_ref ( MBFont *  font  ) 

Refs a created MBFont object.

Parameters:
font MBFont object to unref

int mb_font_render_simple ( MBFont *  font,
MBDrawable *  drw,
int  x,
int  y,
int  width,
unsigned char *  text,
int  encoding,
MBFontRenderOpts  opts 
)

Renders a line of text onto a MBDrawable.

Parameters:
font The font to render
drw The MBDrawable to render too
x The X position on MBDrawable to render too
y The Y position on MBDrawable to render too
width The maximum width in pixels to render
text The text to render.
encoding the encoding of the text to render
opts Or'd MBFontRenderOpts
Returns:
The number of glyths rendered

int mb_font_render_simple_get_width ( MBFont *  font,
int  width,
unsigned char *  text,
int  encoding,
MBFontRenderOpts  opts 
)

Returns the width in pixels of any text rendered with mb_font_render_simple, taking into account any clipping.

Parameters:
font The font to render
width The maximum width in pixels to render
text The text to render.
encoding the encoding of the text to render
opts Or'd MBFontRenderOpts
Returns:
The width in pixels

void mb_font_set_color ( MBFont *  font,
MBColor *  col 
)

Sets the fonts color.

*Note* you must set a fonts color for it to be rendered

  • there is no default.

Parameters:
font The font to alter
col The requested color.

void mb_font_set_family ( MBFont *  font,
const char *  family 
)

Sets the fonts family.

Parameters:
font the font to alter
family font family name

MBFont* mb_font_set_from_string ( MBFont *  font,
char *  spec 
)

Sets the font propertys from a textual description.

Parameters:
font the font to alter
spec A description of the font. This will take Gtk2 style font descriptions or Xft style ones
Returns:
the MBFont object

void mb_font_set_point_size ( MBFont *  font,
int  points 
)

Sets the fonts size.

Parameters:
font The font to alter
points requested size in points

int mb_font_set_size_to_pixels ( MBFont *  font,
int  max_pixels,
int *  points_to_try 
)

Attempts to fit the point size to a pixel size.

Parameters:
font The font to alter
max_pixels Pixel size to fit to
points_to_try a list on point sizes to try or NULL ( to use default values )
Returns:
1 on a successful fit, 0 on failure.

void mb_font_set_slant ( MBFont *  font,
MBFontSlant  slant 
)

Sets the fonts slant.

Parameters:
font The font to alter
slant The requested font slant

void mb_font_set_weight ( MBFont *  font,
MBFontWeight  weight 
)

Sets the fonts weight.

Parameters:
font The font to alter
weight The requested font weight

void mb_font_unref ( MBFont *  font  ) 

Unrefs ( frees ) a created MBColor object.

Parameters:
font MBFont object to unref


Generated on Tue Mar 25 11:24:00 2008 for LibMB by  doxygen 1.5.5