diff --git a/demos/src/ftstring.c b/demos/src/ftstring.c index 726324d28..6b0558d6a 100644 --- a/demos/src/ftstring.c +++ b/demos/src/ftstring.c @@ -24,8 +24,6 @@ #include "graph.h" #include "grfont.h" -#include - #define DIM_X 500 #define DIM_Y 400 diff --git a/demos/src/fttimer.c b/demos/src/fttimer.c index 4042f5f78..77d1367a5 100644 --- a/demos/src/fttimer.c +++ b/demos/src/fttimer.c @@ -28,7 +28,6 @@ #include /* for clock() */ #include "graph.h" -#include /* SunOS 4.1.* does not define CLOCKS_PER_SEC, so include */ /* to get the HZ macro which is the equivalent. */ diff --git a/include/freetype/internal/tttypes.h b/include/freetype/internal/tttypes.h index 24914d5f7..f5b5a0b68 100644 --- a/include/freetype/internal/tttypes.h +++ b/include/freetype/internal/tttypes.h @@ -1352,6 +1352,86 @@ } TT_FaceRec; + + + /************************************************************************ + * + * + * TT_GlyphZone + * + * + * A glyph zone is used to load, scale and hint glyph outline + * coordinates. + * + * + * memory :: handle to memory manager + * max_points :: max size in points of zone + * max_contours :: max size in contours of zone + * n_points :: current number of points in zone + * n_contours :: current number of contours in zone + * org :: original glyph coordinates (font units/scaled) + * cur :: current glyph coordinates (scaled/hinted) + * tags :: point control tags + * contours :: contour end points + * + ***********************************************************************/ + + typedef struct TT_GlyphZone_ + { + FT_Memory memory; + FT_UShort max_points; + FT_UShort max_contours; + FT_UShort n_points; /* number of points in zone */ + FT_Short n_contours; /* number of contours */ + + FT_Vector* org; /* original point coordinates */ + FT_Vector* cur; /* current point coordinates */ + + FT_Byte* tags; /* current touch flags */ + FT_UShort* contours; /* contour end points */ + + } TT_GlyphZone; + + + /* handle to execution context */ + typedef struct TT_ExecContextRec_* TT_ExecContext; + + /* glyph loader structure */ + typedef struct TT_Loader_ + { + FT_Face face; + FT_Size size; + FT_GlyphSlot glyph; + FT_GlyphLoader* gloader; + + FT_ULong load_flags; + FT_UInt glyph_index; + + FT_Stream stream; + FT_Int byte_len; + + FT_BBox bbox; + FT_Int left_bearing; + FT_Int advance; + FT_Bool preserve_pps; + FT_Vector pp1; + FT_Vector pp2; + + FT_ULong glyf_offset; + + /* the zone where we load our glyphs */ + TT_GlyphZone base; + TT_GlyphZone zone; + + TT_ExecContext exec; + FT_Byte* instructions; + FT_ULong ins_pos; + + } TT_Loader; + + + + #ifdef __cplusplus } #endif