diff options
author | Ewald Hew <ewaldhew@gmail.com> | 2017-09-24 21:43:05 +0200 |
---|---|---|
committer | Werner Lemberg <wl@gnu.org> | 2017-09-25 09:26:59 +0200 |
commit | 816c9c1f8372311cbd6721f682931ceed7692692 (patch) | |
tree | 25671d46c7a0b6f8afe5b1e4a40111f91cd1287d /include/freetype/internal/psaux.h | |
parent | 705bbe7c7b894a3f3077ea6489943b772fb0f65c (diff) | |
download | freetype2-816c9c1f8372311cbd6721f682931ceed7692692.tar.gz |
Move CFF builder components into `psaux' module.
NOTE: Does not compile!
* src/cff/cffgload.c
(cff_builder_{init,done,add_point,add_point1,add_contour,start_point,close_contour},
cff_check_points): Move to...
* src/psaux/psobjs.c: Here.
* src/cff/cffgload.h: Move corresponding declarations to
`src/psaux/psobjs.h'.
* src/cff/cffgload.h (CFF_Builder): Move struct declaration to...
* include/freetype/internal/psaux.h: Here.
Diffstat (limited to 'include/freetype/internal/psaux.h')
-rw-r--r-- | include/freetype/internal/psaux.h | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/include/freetype/internal/psaux.h b/include/freetype/internal/psaux.h index b1effeed8..933d052e7 100644 --- a/include/freetype/internal/psaux.h +++ b/include/freetype/internal/psaux.h @@ -703,6 +703,80 @@ FT_BEGIN_HEADER } T1_DecoderRec; /*************************************************************************/ + /*************************************************************************/ + /* */ + /* <Structure> */ + /* CFF_Builder */ + /* */ + /* <Description> */ + /* A structure used during glyph loading to store its outline. */ + /* */ + /* <Fields> */ + /* memory :: The current memory object. */ + /* */ + /* face :: The current face object. */ + /* */ + /* glyph :: The current glyph slot. */ + /* */ + /* loader :: The current glyph loader. */ + /* */ + /* base :: The base glyph outline. */ + /* */ + /* current :: The current glyph outline. */ + /* */ + /* pos_x :: The horizontal translation (if composite glyph). */ + /* */ + /* pos_y :: The vertical translation (if composite glyph). */ + /* */ + /* left_bearing :: The left side bearing point. */ + /* */ + /* advance :: The horizontal advance vector. */ + /* */ + /* bbox :: Unused. */ + /* */ + /* path_begun :: A flag which indicates that a new path has begun. */ + /* */ + /* load_points :: If this flag is not set, no points are loaded. */ + /* */ + /* no_recurse :: Set but not used. */ + /* */ + /* metrics_only :: A boolean indicating that we only want to compute */ + /* the metrics of a given glyph, not load all of its */ + /* points. */ + /* */ + /* hints_funcs :: Auxiliary pointer for hinting. */ + /* */ + /* hints_globals :: Auxiliary pointer for hinting. */ + /* */ + typedef struct CFF_Builder_ + { + FT_Memory memory; + TT_Face face; + CFF_GlyphSlot glyph; + FT_GlyphLoader loader; + FT_Outline* base; + FT_Outline* current; + + FT_Pos pos_x; + FT_Pos pos_y; + + FT_Vector left_bearing; + FT_Vector advance; + + FT_BBox bbox; /* bounding box */ + FT_Bool path_begun; + FT_Bool load_points; + FT_Bool no_recurse; + + FT_Bool metrics_only; + + void* hints_funcs; /* hinter-specific */ + void* hints_globals; /* hinter-specific */ + } CFF_Builder; + + + /*************************************************************************/ + /*************************************************************************/ /***** *****/ /***** CFF DECODER *****/ /***** *****/ |