Home | History | Annotate | Download | only in autofit

Lines Matching full:loader

27   /* Initialize glyph loader. */
30 af_loader_init( AF_Loader loader,
33 FT_ZERO( loader );
35 loader->hints = hints;
39 /* Reset glyph loader and compute globals if necessary. */
42 af_loader_reset( AF_Loader loader,
49 loader->face = face;
50 loader->globals = (AF_FaceGlobals)face->autohint.data;
52 if ( loader->globals == NULL )
54 error = af_face_globals_new( face, &loader->globals, module );
58 (FT_Pointer)loader->globals;
68 /* Finalize glyph loader. */
71 af_loader_done( AF_Loader loader )
73 loader->face = NULL;
74 loader->globals = NULL;
75 loader->hints = NULL;
86 af_loader_load_g( AF_Loader loader,
92 FT_Face face = loader->face;
93 AF_StyleMetrics metrics = loader->metrics;
94 AF_GlyphHints hints = loader->hints;
97 FT_GlyphLoader gloader = internal->loader;
106 loader->transformed = internal->glyph_transformed;
107 if ( loader->transformed )
112 loader->trans_matrix = internal->glyph_matrix;
113 loader->trans_delta = internal->glyph_delta;
115 inverse = loader->trans_matrix;
117 FT_Vector_Transform( &loader->trans_delta, &inverse );
124 if ( loader->transformed )
126 loader->trans_delta.x,
127 loader->trans_delta.y );
131 loader->pp1.x = hints->x_delta;
132 loader->pp1.y = hints->y_delta;
133 loader->pp2.x = FT_MulFix( slot->metrics.horiAdvance,
135 loader->pp2.y = hints->y_delta;
145 AF_FaceGlobals globals = loader->globals;
172 old_rsb = loader->pp2.x - edge2->opos;
191 loader->pp1.x = FT_PIX_ROUND( pp1x_uh );
192 loader->pp2.x = FT_PIX_ROUND( pp2x_uh );
194 if ( loader->pp1.x >= new_lsb && old_lsb > 0 )
195 loader->pp1.x -= 64;
197 if ( loader->pp2.x <= edge2->pos && old_rsb > 0 )
198 loader->pp2.x += 64;
200 slot->lsb_delta = loader->pp1.x - pp1x_uh;
201 slot->rsb_delta = loader->pp2.x - pp2x_uh;
205 FT_Pos pp1x = loader->pp1.x;
206 FT_Pos pp2x = loader->pp2.x;
209 loader->pp1.x = FT_PIX_ROUND( pp1x );
210 loader->pp2.x = FT_PIX_ROUND( pp2x );
212 slot->lsb_delta = loader->pp1.x - pp1x;
213 slot->rsb_delta = loader->pp2.x - pp2x;
218 FT_Pos pp1x = loader->pp1.x;
219 FT_Pos pp2x = loader->pp2.x;
222 loader->pp1.x = FT_PIX_ROUND( pp1x + hints->xmin_delta );
223 loader->pp2.x = FT_PIX_ROUND( pp2x + hints->xmax_delta );
225 slot->lsb_delta = loader->pp1.x - pp1x;
226 slot->rsb_delta = loader->pp2.x - pp2x;
248 if ( loader->transformed )
250 FT_Outline_Transform( &gloader->base.outline, &loader->trans_matrix );
251 FT_Vector_Transform( &vvector, &loader->trans_matrix );
256 if ( loader->pp1.x )
257 FT_Outline_Translate( &gloader->base.outline, -loader->pp1.x, 0 );
279 slot->metrics.horiAdvance = loader->pp2.x - loader->pp1.x;
286 ( af_face_globals_is_digit( loader->globals, glyph_index ) &&
301 slot->metrics.horiAdvance = loader->pp2.x - loader->pp1.x;
313 slot->outline.n_contours = internal->loader->base.outline.n_contours;
314 slot->outline.n_points = internal->loader->base.outline.n_points;
315 slot->outline.points = internal->loader->base.outline.points;
316 slot->outline.tags = internal->loader->base.outline.tags;
317 slot->outline.contours = internal->loader->base.outline.contours;
331 af_loader_load_glyph( AF_Loader loader,
356 error = af_loader_reset( loader, module, face );
369 error = af_face_globals_get_metrics( loader->globals, gindex,
374 AF_FaceGlobals globals = loader->globals;
381 loader->metrics = metrics;
393 error = writing_system_class->style_hints_init( loader->hints,
399 error = af_loader_load_g( loader, &scaler, gindex, load_flags );