LMMS
Loading...
Searching...
No Matches
fontstash.h File Reference

Go to the source code of this file.

Classes

struct  FONSparams
struct  FONSquad
struct  FONStextIter

Macros

#define FONS_INVALID   -1

Typedefs

typedef struct FONSparams FONSparams
typedef struct FONSquad FONSquad
typedef struct FONStextIter FONStextIter
typedef struct FONScontext FONScontext

Enumerations

enum  FONSflags { FONS_ZERO_TOPLEFT = 1 , FONS_ZERO_BOTTOMLEFT = 2 }
enum  FONSalign {
  FONS_ALIGN_LEFT = 1<<0 , FONS_ALIGN_CENTER = 1<<1 , FONS_ALIGN_RIGHT = 1<<2 , FONS_ALIGN_TOP = 1<<3 ,
  FONS_ALIGN_MIDDLE = 1<<4 , FONS_ALIGN_BOTTOM = 1<<5 , FONS_ALIGN_BASELINE = 1<<6
}
enum  FONSglyphBitmap { FONS_GLYPH_BITMAP_OPTIONAL = 1 , FONS_GLYPH_BITMAP_REQUIRED = 2 }
enum  FONSerrorCode { FONS_ATLAS_FULL = 1 , FONS_SCRATCH_FULL = 2 , FONS_STATES_OVERFLOW = 3 , FONS_STATES_UNDERFLOW = 4 }

Functions

FONScontextfonsCreateInternal (FONSparams *params)
void fonsDeleteInternal (FONScontext *s)
void fonsSetErrorCallback (FONScontext *s, void(*callback)(void *uptr, int error, int val), void *uptr)
void fonsGetAtlasSize (FONScontext *s, int *width, int *height)
int fonsExpandAtlas (FONScontext *s, int width, int height)
int fonsResetAtlas (FONScontext *stash, int width, int height)
int fonsAddFont (FONScontext *s, const char *name, const char *path, int fontIndex)
int fonsAddFontMem (FONScontext *s, const char *name, unsigned char *data, int ndata, int freeData, int fontIndex)
int fonsGetFontByName (FONScontext *s, const char *name)
void fonsPushState (FONScontext *s)
void fonsPopState (FONScontext *s)
void fonsClearState (FONScontext *s)
void fonsSetSize (FONScontext *s, float size)
void fonsSetColor (FONScontext *s, unsigned int color)
void fonsSetSpacing (FONScontext *s, float spacing)
void fonsSetBlur (FONScontext *s, float blur)
void fonsSetAlign (FONScontext *s, int align)
void fonsSetFont (FONScontext *s, int font)
float fonsDrawText (FONScontext *s, float x, float y, const char *string, const char *end)
float fonsTextBounds (FONScontext *s, float x, float y, const char *string, const char *end, float *bounds)
void fonsLineBounds (FONScontext *s, float y, float *miny, float *maxy)
void fonsVertMetrics (FONScontext *s, float *ascender, float *descender, float *lineh)
int fonsTextIterInit (FONScontext *stash, FONStextIter *iter, float x, float y, const char *str, const char *end, int bitmapOption)
int fonsTextIterNext (FONScontext *stash, FONStextIter *iter, struct FONSquad *quad)
const unsigned char * fonsGetTextureData (FONScontext *stash, int *width, int *height)
int fonsValidateTexture (FONScontext *s, int *dirty)
void fonsDrawDebug (FONScontext *s, float x, float y)

Macro Definition Documentation

◆ FONS_INVALID

#define FONS_INVALID   -1

Typedef Documentation

◆ FONScontext

typedef struct FONScontext FONScontext

◆ FONSparams

typedef struct FONSparams FONSparams

◆ FONSquad

typedef struct FONSquad FONSquad

◆ FONStextIter

typedef struct FONStextIter FONStextIter

Enumeration Type Documentation

◆ FONSalign

enum FONSalign
Enumerator
FONS_ALIGN_LEFT 
FONS_ALIGN_CENTER 
FONS_ALIGN_RIGHT 
FONS_ALIGN_TOP 
FONS_ALIGN_MIDDLE 
FONS_ALIGN_BOTTOM 
FONS_ALIGN_BASELINE 

◆ FONSerrorCode

Enumerator
FONS_ATLAS_FULL 
FONS_SCRATCH_FULL 
FONS_STATES_OVERFLOW 
FONS_STATES_UNDERFLOW 

◆ FONSflags

enum FONSflags
Enumerator
FONS_ZERO_TOPLEFT 
FONS_ZERO_BOTTOMLEFT 

◆ FONSglyphBitmap

Enumerator
FONS_GLYPH_BITMAP_OPTIONAL 
FONS_GLYPH_BITMAP_REQUIRED 

Function Documentation

◆ fonsAddFont()

int fonsAddFont ( FONScontext * s,
const char * name,
const char * path,
int fontIndex )

◆ fonsAddFontMem()

int fonsAddFontMem ( FONScontext * s,
const char * name,
unsigned char * data,
int ndata,
int freeData,
int fontIndex )

◆ fonsClearState()

void fonsClearState ( FONScontext * s)

◆ fonsCreateInternal()

FONScontext * fonsCreateInternal ( FONSparams * params)

◆ fonsDeleteInternal()

void fonsDeleteInternal ( FONScontext * s)

◆ fonsDrawDebug()

void fonsDrawDebug ( FONScontext * s,
float x,
float y )

◆ fonsDrawText()

float fonsDrawText ( FONScontext * s,
float x,
float y,
const char * string,
const char * end )

◆ fonsExpandAtlas()

int fonsExpandAtlas ( FONScontext * s,
int width,
int height )

◆ fonsGetAtlasSize()

void fonsGetAtlasSize ( FONScontext * s,
int * width,
int * height )

◆ fonsGetFontByName()

int fonsGetFontByName ( FONScontext * s,
const char * name )

◆ fonsGetTextureData()

const unsigned char * fonsGetTextureData ( FONScontext * stash,
int * width,
int * height )

◆ fonsLineBounds()

void fonsLineBounds ( FONScontext * s,
float y,
float * miny,
float * maxy )

◆ fonsPopState()

void fonsPopState ( FONScontext * s)

◆ fonsPushState()

void fonsPushState ( FONScontext * s)

◆ fonsResetAtlas()

int fonsResetAtlas ( FONScontext * stash,
int width,
int height )

◆ fonsSetAlign()

void fonsSetAlign ( FONScontext * s,
int align )

◆ fonsSetBlur()

void fonsSetBlur ( FONScontext * s,
float blur )

◆ fonsSetColor()

void fonsSetColor ( FONScontext * s,
unsigned int color )

◆ fonsSetErrorCallback()

void fonsSetErrorCallback ( FONScontext * s,
void(* callback )(void *uptr, int error, int val),
void * uptr )

◆ fonsSetFont()

void fonsSetFont ( FONScontext * s,
int font )

◆ fonsSetSize()

void fonsSetSize ( FONScontext * s,
float size )

◆ fonsSetSpacing()

void fonsSetSpacing ( FONScontext * s,
float spacing )

◆ fonsTextBounds()

float fonsTextBounds ( FONScontext * s,
float x,
float y,
const char * string,
const char * end,
float * bounds )

◆ fonsTextIterInit()

int fonsTextIterInit ( FONScontext * stash,
FONStextIter * iter,
float x,
float y,
const char * str,
const char * end,
int bitmapOption )

◆ fonsTextIterNext()

int fonsTextIterNext ( FONScontext * stash,
FONStextIter * iter,
struct FONSquad * quad )

◆ fonsValidateTexture()

int fonsValidateTexture ( FONScontext * s,
int * dirty )

◆ fonsVertMetrics()

void fonsVertMetrics ( FONScontext * s,
float * ascender,
float * descender,
float * lineh )