20 #include FT_INTERNAL_DEBUG_H 21 #include FT_INTERNAL_GLYPH_LOADER_H 22 #include FT_INTERNAL_MEMORY_H 23 #include FT_INTERNAL_OBJECTS_H 26 #define FT_COMPONENT trace_gloader 79 loader->memory = memory;
110 FT_FREE( loader->base.outline.points );
111 FT_FREE( loader->base.outline.tags );
112 FT_FREE( loader->base.outline.contours );
113 FT_FREE( loader->base.extra_points );
114 FT_FREE( loader->base.subglyphs );
116 loader->base.extra_points2 =
NULL;
118 loader->max_points = 0;
119 loader->max_contours = 0;
120 loader->max_subglyphs = 0;
154 if ( loader->use_extra )
156 loader->current.extra_points = loader->base.extra_points +
159 loader->current.extra_points2 = loader->base.extra_points2 +
172 if ( !
FT_NEW_ARRAY( loader->base.extra_points, 2 * loader->max_points ) )
174 loader->use_extra = 1;
175 loader->base.extra_points2 = loader->base.extra_points +
178 FT_GlyphLoader_Adjust_Points( loader );
216 old_max = loader->max_points;
218 if ( new_max > old_max )
229 if ( loader->use_extra )
232 old_max * 2, new_max * 2 ) )
236 loader->base.extra_points + old_max,
239 loader->base.extra_points2 = loader->base.extra_points + new_max;
243 loader->max_points = new_max;
247 old_max = loader->max_contours;
250 if ( new_max > old_max )
261 loader->max_contours = new_max;
265 FT_GlyphLoader_Adjust_Points( loader );
289 old_max = loader->max_subglyphs;
290 if ( new_max > old_max )
296 loader->max_subglyphs = new_max;
298 FT_GlyphLoader_Adjust_Subglyphs( loader );
317 FT_GlyphLoader_Adjust_Points ( loader );
318 FT_GlyphLoader_Adjust_Subglyphs( loader );
337 base = &loader->base;
338 current = &loader->current;
351 for (
n = 0;
n < n_curr_contours;
n++ )
395 FT_GlyphLoader_Adjust_Points(
target );
FT_GlyphLoader_CopyPoints(FT_GlyphLoader target, FT_GlyphLoader source)
#define FT_ARRAY_COPY(dest, source, count)
return FT_THROW(Missing_Property)
GLsizei GLsizei GLchar * source
FT_BEGIN_HEADER typedef unsigned char FT_Bool
typedefFT_BEGIN_HEADER struct FT_GlyphLoaderRec_ * FT_GlyphLoader
#define FT_PAD_CEIL(x, n)
FT_GlyphLoader_Rewind(FT_GlyphLoader loader)
#define FT_OUTLINE_POINTS_MAX
FT_GlyphLoader_Reset(FT_GlyphLoader loader)
local int out(void *out_desc, unsigned char *buf, unsigned len)
FT_GlyphLoader_Done(FT_GlyphLoader loader)
#define FT_ARRAY_MOVE(dest, source, count)
FT_GlyphLoader_CheckPoints(FT_GlyphLoader loader, FT_UInt n_points, FT_UInt n_contours)
#define FT_RENEW_ARRAY(ptr, curcnt, newcnt)
FT_GlyphLoader_Add(FT_GlyphLoader loader)
typedefFT_BEGIN_HEADER struct FT_MemoryRec_ * FT_Memory
#define FT_NEW_ARRAY(ptr, count)
FT_GlyphLoader_New(FT_Memory memory, FT_GlyphLoader *aloader)
FT_GlyphLoader_CheckSubGlyphs(FT_GlyphLoader loader, FT_UInt n_subs)
FT_GlyphLoader_CreateExtra(FT_GlyphLoader loader)
FT_GlyphLoader_Prepare(FT_GlyphLoader loader)
#define FT_OUTLINE_CONTOURS_MAX