diff options
Diffstat (limited to 'include/freetype.h')
| -rw-r--r-- | include/freetype.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/include/freetype.h b/include/freetype.h new file mode 100644 index 00000000..d3a264e0 --- /dev/null +++ b/include/freetype.h @@ -0,0 +1,55 @@ +/* + * interface to libfreetype without recourse to the real freetype headers + * which would otherwise require full-blown CPP + */ + +typedef struct FTfaceinfo FTfaceinfo; +struct FTfaceinfo { + int nfaces; + int index; + int style; + int height; + int ascent; + char* familyname; + char* stylename; +}; + +typedef struct FTface FTface; +struct FTface { + void* ft_lib; + void* ft_face; +}; + +typedef struct FTglyph FTglyph; +struct FTglyph { + int top; + int left; + int advx; + int advy; + int height; + int width; + int bpr; + uchar* bitmap; +}; + +typedef struct FTmatrix FTmatrix; +struct FTmatrix { + int a; + int b; + int c; + int d; +}; + +typedef struct FTvector FTvector; +struct FTvector { + int dx; + int dy; +}; + +extern char* ftnewface(char *, int, FTface*, FTfaceinfo*); +extern char* ftloadmemface(void*, int, int, FTface*, FTfaceinfo*); +extern char* ftsetcharsize(FTface, int, int, int, FTfaceinfo*); +extern void ftsettransform(FTface, FTmatrix*, FTvector*); +extern int fthaschar(FTface,int); +extern char* ftloadglyph(FTface, int, FTglyph*); +extern void ftdoneface(FTface); |
