Leolo's guassian2 patch
[imager.git] / FT2 / imft2.h
CommitLineData
50c75381
TC
1#ifndef IMAGER_FT2_H
2#define IMAGER_FT2_H
3
4#include "imdatatypes.h"
5
6typedef struct FT2_Fonthandle FT2_Fonthandle;
7
8typedef FT2_Fonthandle* Imager__Font__FT2x;
9
17dd918e 10extern int i_ft2_version(int runtime, char *buf, size_t buf_size);
98d6ae27 11extern void i_ft2_start(void);
50c75381
TC
12extern FT2_Fonthandle * i_ft2_new(const char *name, int index);
13extern void i_ft2_destroy(FT2_Fonthandle *handle);
14extern int i_ft2_setdpi(FT2_Fonthandle *handle, int xdpi, int ydpi);
15extern int i_ft2_getdpi(FT2_Fonthandle *handle, int *xdpi, int *ydpi);
16extern int i_ft2_settransform(FT2_Fonthandle *handle, const double *matrix);
17extern int i_ft2_sethinting(FT2_Fonthandle *handle, int hinting);
18extern int i_ft2_bbox(FT2_Fonthandle *handle, double cheight, double cwidth,
8d14daab 19 char const *text, size_t len, i_img_dim *bbox, int utf8);
50c75381 20extern int i_ft2_bbox_r(FT2_Fonthandle *handle, double cheight, double cwidth,
8d14daab
TC
21 char const *text, size_t len, int vlayout, int utf8, i_img_dim *bbox);
22extern int i_ft2_text(FT2_Fonthandle *handle, i_img *im, i_img_dim tx, i_img_dim ty,
50c75381
TC
23 const i_color *cl, double cheight, double cwidth,
24 char const *text, size_t len, int align, int aa,
25 int vlayout, int utf8);
8d14daab 26extern int i_ft2_cp(FT2_Fonthandle *handle, i_img *im, i_img_dim tx, i_img_dim ty,
50c75381
TC
27 int channel, double cheight, double cwidth,
28 char const *text, size_t len, int align, int aa,
29 int vlayout, int utf8);
8d14daab
TC
30extern size_t
31i_ft2_has_chars(FT2_Fonthandle *handle, char const *text, size_t len,
50c75381 32 int utf8, char *work);
8d14daab
TC
33extern size_t
34i_ft2_face_name(FT2_Fonthandle *handle, char *name_buf,
35 size_t name_buf_size);
50c75381
TC
36extern int i_ft2_can_face_name(void);
37extern int i_ft2_glyph_name(FT2_Fonthandle *handle, unsigned long ch,
38 char *name_buf, size_t name_buf_size,
39 int reliable_only);
40extern int i_ft2_can_do_glyph_names(void);
41extern int i_ft2_face_has_glyph_names(FT2_Fonthandle *handle);
42
43extern int i_ft2_get_multiple_masters(FT2_Fonthandle *handle,
44 i_font_mm *mm);
45extern int
46i_ft2_is_multiple_master(FT2_Fonthandle *handle);
47extern int
48i_ft2_set_mm_coords(FT2_Fonthandle *handle, int coord_count, const long *coords);
8d14daab
TC
49
50void ft2_transform_box(FT2_Fonthandle *handle, i_img_dim bbox[4]);
51
50c75381
TC
52#endif
53