FTGL 2.4.0
Data Structures | Typedefs | Functions
FTFont.h File Reference
#include <FTGL/ftgl.h>

Go to the source code of this file.

Data Structures

class  FTFont
 FTFont is the public interface for the FTGL library. More...
 

Typedefs

typedef struct _FTGLfont FTGLfont
 

Functions

FTGLfontftglCreateCustomFont (char const *fontFilePath, void *data, FTGLglyph *(*makeglyphCallback)(FT_GlyphSlot, void *))
 Create a custom FTGL font object.
 
FTGLfontftglCreateCustomFontFromMem (const unsigned char *bytes, size_t len, void *data, FTGLglyph *(*makeglyphCallback)(FT_GlyphSlot, void *))
 Create a custom FTGL font object from a buffer in memory.
 
void ftglDestroyFont (FTGLfont *font)
 Destroy an FTGL font object.
 
int ftglAttachFile (FTGLfont *font, const char *path)
 Attach auxilliary file to font e.g.
 
int ftglAttachData (FTGLfont *font, const unsigned char *data, size_t size)
 Attach auxilliary data to font, e.g.
 
void ftglSetFontGlyphLoadFlags (FTGLfont *font, FT_Int flags)
 Set the glyph loading flags.
 
int ftglSetFontCharMap (FTGLfont *font, FT_Encoding encoding)
 Set the character map for the face.
 
unsigned int ftglGetFontCharMapCount (FTGLfont *font)
 Get the number of character maps in this face.
 
FT_Encoding * ftglGetFontCharMapList (FTGLfont *font)
 Get a list of character maps in this face.
 
int ftglSetFontFaceSize (FTGLfont *font, unsigned int size, unsigned int res)
 Set the char size for the current face.
 
unsigned int ftglGetFontFaceSize (FTGLfont *font)
 Get the current face size in points (1/72 inch).
 
void ftglSetFontDepth (FTGLfont *font, float depth)
 Set the extrusion distance for the font.
 
void ftglSetFontOutset (FTGLfont *font, float front, float back)
 Set the outset distance for the font.
 
void ftglSetFontDisplayList (FTGLfont *font, int useList)
 Enable or disable the use of Display Lists inside FTGL.
 
float ftglGetFontAscender (FTGLfont *font)
 Get the global ascender height for the face.
 
float ftglGetFontDescender (FTGLfont *font)
 Gets the global descender height for the face.
 
float ftglGetFontLineHeight (FTGLfont *font)
 Gets the line spacing for the font.
 
void ftglGetFontBBox (FTGLfont *font, const char *string, int len, float bounds[6])
 Get the bounding box for a string.
 
float ftglGetFontAdvance (FTGLfont *font, const char *string)
 Get the advance width for a string.
 
void ftglRenderFont (FTGLfont *font, const char *string, int mode)
 Render a string of characters.
 
FT_Error ftglGetFontError (FTGLfont *font)
 Query a font for errors.
 

Typedef Documentation

◆ FTGLfont

typedef struct _FTGLfont FTGLfont

Definition at line 414 of file FTFont.h.

Function Documentation

◆ ftglAttachData()

int ftglAttachData ( FTGLfont font,
const unsigned char *  data,
size_t  size 
)

Attach auxilliary data to font, e.g.

font metrics, from memory.

Note: not all font formats implement this function.

Parameters
fontAn FTGLfont* object.
dataThe in-memory buffer.
sizeThe length of the buffer in bytes.
Returns
1 if file has been attached successfully.

◆ ftglAttachFile()

int ftglAttachFile ( FTGLfont font,
const char *  path 
)

Attach auxilliary file to font e.g.

font metrics.

Note: not all font formats implement this function.

Parameters
fontAn FTGLfont* object.
pathAuxilliary font file path.
Returns
1 if file has been attached successfully.

◆ ftglCreateCustomFont()

FTGLfont * ftglCreateCustomFont ( char const *  fontFilePath,
void *  data,
FTGLglyph *(*)(FT_GlyphSlot, void *)  makeglyphCallback 
)

Create a custom FTGL font object.

Parameters
fontFilePathThe font file name.
dataA pointer to private data that will be passed to callbacks.
makeglyphCallbackA glyph-making callback function.
Returns
An FTGLfont* object.

◆ ftglCreateCustomFontFromMem()

FTGLfont * ftglCreateCustomFontFromMem ( const unsigned char *  bytes,
size_t  len,
void *  data,
FTGLglyph *(*)(FT_GlyphSlot, void *)  makeglyphCallback 
)

Create a custom FTGL font object from a buffer in memory.

Parameters
bytesthe in-memory buffer
lenthe length of the buffer in bytes
dataA pointer to private data that will be passed to callbacks.
makeglyphCallbackA glyph-making callback function.
Returns
An FTGLfont* object.

◆ ftglDestroyFont()

void ftglDestroyFont ( FTGLfont font)

Destroy an FTGL font object.

Parameters
fontAn FTGLfont* object.

◆ ftglGetFontAdvance()

float ftglGetFontAdvance ( FTGLfont font,
const char *  string 
)

Get the advance width for a string.

Parameters
fontAn FTGLfont* object.
stringA char string.
Returns
Advance width

◆ ftglGetFontAscender()

float ftglGetFontAscender ( FTGLfont font)

Get the global ascender height for the face.

Parameters
fontAn FTGLfont* object.
Returns
Ascender height

◆ ftglGetFontBBox()

void ftglGetFontBBox ( FTGLfont font,
const char *  string,
int  len,
float  bounds[6] 
)

Get the bounding box for a string.

Parameters
fontAn FTGLfont* object.
stringA char buffer
lenThe length of the string. If < 0 then all characters will be checked until a null character is encountered (optional).
boundsAn array of 6 float values where the bounding box's lower left near and upper right far 3D coordinates will be stored.

◆ ftglGetFontCharMapCount()

unsigned int ftglGetFontCharMapCount ( FTGLfont font)

Get the number of character maps in this face.

Parameters
fontAn FTGLfont* object.
Returns
character map count.

◆ ftglGetFontCharMapList()

FT_Encoding * ftglGetFontCharMapList ( FTGLfont font)

Get a list of character maps in this face.

Parameters
fontAn FTGLfont* object.
Returns
pointer to the first encoding.

◆ ftglGetFontDescender()

float ftglGetFontDescender ( FTGLfont font)

Gets the global descender height for the face.

Parameters
fontAn FTGLfont* object.
Returns
Descender height

◆ ftglGetFontError()

FT_Error ftglGetFontError ( FTGLfont font)

Query a font for errors.

Parameters
fontAn FTGLfont* object.
Returns
The current error code.

◆ ftglGetFontFaceSize()

unsigned int ftglGetFontFaceSize ( FTGLfont font)

Get the current face size in points (1/72 inch).

Parameters
fontAn FTGLfont* object.
Returns
face size

◆ ftglGetFontLineHeight()

float ftglGetFontLineHeight ( FTGLfont font)

Gets the line spacing for the font.

Parameters
fontAn FTGLfont* object.
Returns
Line height

◆ ftglRenderFont()

void ftglRenderFont ( FTGLfont font,
const char *  string,
int  mode 
)

Render a string of characters.

Parameters
fontAn FTGLfont* object.
stringChar string to be output.
modeRender mode to display.

◆ ftglSetFontCharMap()

int ftglSetFontCharMap ( FTGLfont font,
FT_Encoding  encoding 
)

Set the character map for the face.

Parameters
fontAn FTGLfont* object.
encodingFreetype enumerate for char map code.
Returns
1 if charmap was valid and set correctly.

◆ ftglSetFontDepth()

void ftglSetFontDepth ( FTGLfont font,
float  depth 
)

Set the extrusion distance for the font.

Only implemented by FTExtrudeFont.

Parameters
fontAn FTGLfont* object.
depthThe extrusion distance.

◆ ftglSetFontDisplayList()

void ftglSetFontDisplayList ( FTGLfont font,
int  useList 
)

Enable or disable the use of Display Lists inside FTGL.

Parameters
fontAn FTGLfont* object.
useList1 turns ON display lists. 0 turns OFF display lists.

◆ ftglSetFontFaceSize()

int ftglSetFontFaceSize ( FTGLfont font,
unsigned int  size,
unsigned int  res 
)

Set the char size for the current face.

Parameters
fontAn FTGLfont* object.
sizeThe face size in points (1/72 inch).
resThe resolution of the target device, or 0 to use the default value of 72.
Returns
1 if size was set correctly.

◆ ftglSetFontGlyphLoadFlags()

void ftglSetFontGlyphLoadFlags ( FTGLfont font,
FT_Int  flags 
)

Set the glyph loading flags.

By default, fonts use the most sensible flags when loading a font's glyph using FT_Load_Glyph(). This function allows to override the default flags.

Parameters
fontAn FTGLfont* object.
flagsThe glyph loading flags.

◆ ftglSetFontOutset()

void ftglSetFontOutset ( FTGLfont font,
float  front,
float  back 
)

Set the outset distance for the font.

Only FTOutlineFont, FTPolygonFont and FTExtrudeFont implement front outset. Only FTExtrudeFont implements back outset.

Parameters
fontAn FTGLfont* object.
frontThe front outset distance.
backThe back outset distance.