Go to the source code of this file.
|
| ft_bitmap_glyph_init (FT_Glyph bitmap_glyph, FT_GlyphSlot slot) |
|
| ft_bitmap_glyph_copy (FT_Glyph bitmap_source, FT_Glyph bitmap_target) |
|
| ft_bitmap_glyph_done (FT_Glyph bitmap_glyph) |
|
| ft_bitmap_glyph_bbox (FT_Glyph bitmap_glyph, FT_BBox *cbox) |
|
| FT_DEFINE_GLYPH (ft_bitmap_glyph_class, sizeof(FT_BitmapGlyphRec), FT_GLYPH_FORMAT_BITMAP, ft_bitmap_glyph_init, ft_bitmap_glyph_done, ft_bitmap_glyph_copy, NULL, ft_bitmap_glyph_bbox, NULL) |
|
| ft_outline_glyph_done (FT_Glyph outline_glyph) |
|
| ft_outline_glyph_copy (FT_Glyph outline_source, FT_Glyph outline_target) |
|
| ft_outline_glyph_transform (FT_Glyph outline_glyph, const FT_Matrix *matrix, const FT_Vector *delta) |
|
| ft_outline_glyph_bbox (FT_Glyph outline_glyph, FT_BBox *bbox) |
|
| ft_outline_glyph_prepare (FT_Glyph outline_glyph, FT_GlyphSlot slot) |
|
| FT_DEFINE_GLYPH (ft_outline_glyph_class, sizeof(FT_OutlineGlyphRec), FT_GLYPH_FORMAT_OUTLINE, ft_outline_glyph_init, ft_outline_glyph_done, ft_outline_glyph_copy, ft_outline_glyph_transform, ft_outline_glyph_bbox, ft_outline_glyph_prepare) |
|
| FT_Glyph_Copy (FT_Glyph source, FT_Glyph *target) |
|
| FT_New_Glyph (FT_Library library, FT_Glyph_Format format, FT_Glyph *aglyph) |
|
| FT_Get_Glyph (FT_GlyphSlot slot, FT_Glyph *aglyph) |
|
| FT_Glyph_Transform (FT_Glyph glyph, FT_Matrix *matrix, FT_Vector *delta) |
|
| FT_Glyph_Get_CBox (FT_Glyph glyph, FT_UInt bbox_mode, FT_BBox *acbox) |
|
| FT_Glyph_To_Bitmap (FT_Glyph *the_glyph, FT_Render_Mode render_mode, FT_Vector *origin, FT_Bool destroy) |
|
| FT_Done_Glyph (FT_Glyph glyph) |
|
◆ FT_COMPONENT
◆ ft_bitmap_glyph_bbox()
Definition at line 121 of file ftglyph.c.
123 {
125
126
131 }
struct FT_BitmapGlyphRec_ * FT_BitmapGlyph
FT_BEGIN_HEADER typedef signed long FT_Pos
◆ ft_bitmap_glyph_copy()
Definition at line 94 of file ftglyph.c.
96 {
100
101
104
106 }
FT_Bitmap_Copy(FT_Library library, const FT_Bitmap *source, FT_Bitmap *target)
◆ ft_bitmap_glyph_done()
ft_bitmap_glyph_done |
( |
FT_Glyph |
bitmap_glyph | ) |
|
Definition at line 110 of file ftglyph.c.
111 {
114
115
117 }
FT_Bitmap_Done(FT_Library library, FT_Bitmap *bitmap)
◆ ft_bitmap_glyph_init()
Definition at line 59 of file ftglyph.c.
61 {
65
66
67 if (
slot->format != FT_GLYPH_FORMAT_BITMAP )
68 {
71 }
72
75
76
78 {
80 slot->internal->flags &= ~FT_GLYPH_OWN_BITMAP;
81 }
82 else
83 {
86 }
87
90 }
FT_BEGIN_HEADER FT_Bitmap_Init(FT_Bitmap *abitmap)
#define FT_GLYPH_OWN_BITMAP
Referenced by FT_Glyph_To_Bitmap().
◆ FT_DEFINE_GLYPH() [1/2]
Definition at line 134 of file ftglyph.c.
161 {
167
168
169
171 {
174 }
175
176
183
185
188 }
struct FT_OutlineGlyphRec_ * FT_OutlineGlyph
FT_Outline_New(FT_Library library, FT_UInt numPoints, FT_Int numContours, FT_Outline *anoutline)
FT_Outline_Copy(const FT_Outline *source, FT_Outline *target)
smooth FT_Module_Constructor FT_Module_Destructor FT_Module_Requester FT_GLYPH_FORMAT_OUTLINE
◆ FT_DEFINE_GLYPH() [2/2]
Definition at line 264 of file ftglyph.c.
291 {
295
296
298
299 if ( !
FT_ALLOC( glyph, clazz->glyph_size ) )
300 {
302 glyph->
clazz = clazz;
303 glyph->
format = clazz->glyph_format;
304
305 *aglyph = glyph;
306 }
307
309 }
#define FT_ALLOC(ptr, size)
typedefFT_BEGIN_HEADER struct FT_MemoryRec_ * FT_Memory
static char memory[1024 *256]
const FT_Glyph_Class * clazz
◆ FT_Done_Glyph()
◆ FT_Get_Glyph()
Definition at line 400 of file ftglyph.c.
402 {
405
406
408 return FT_THROW( Invalid_Slot_Handle );
409
410 if ( !aglyph )
411 return FT_THROW( Invalid_Argument );
412
413
417
418
419 if (
slot->advance.x >= 0x8000L * 64 ||
420 slot->advance.x <= -0x8000L * 64 )
421 {
422 FT_ERROR((
"FT_Get_Glyph: advance width too large\n" ));
424 goto Exit2;
425 }
426 if (
slot->advance.y >= 0x8000L * 64 ||
427 slot->advance.y <= -0x8000L * 64 )
428 {
429 FT_ERROR((
"FT_Get_Glyph: advance height too large\n" ));
431 goto Exit2;
432 }
433
436
437
439
440 Exit2:
441
444 else
445 *aglyph = glyph;
446
449 }
#define FT_ERROR(varformat)
FT_Done_Glyph(FT_Glyph glyph)
FT_New_Glyph(FT_Library library, FT_Glyph_Format format, FT_Glyph *aglyph)
Referenced by ftc_basic_family_load_glyph(), and IntGetBitmapGlyphWithCache().
◆ FT_Glyph_Copy()
Definition at line 315 of file ftglyph.c.
317 {
321
322
323
325 {
328 }
329
331
333 {
336 }
337
342
345
346 if ( clazz->glyph_copy )
348
351 else
353
356 }
INT copy(TCHAR source[MAX_PATH], TCHAR dest[MAX_PATH], INT append, DWORD lpdwFlags, BOOL bTouch)
Referenced by FT_Glyph_Stroke(), and FT_Glyph_StrokeBorder().
◆ FT_Glyph_Get_CBox()
Definition at line 488 of file ftglyph.c.
491 {
493
494
495 if ( !acbox )
496 return;
497
499
500 if ( !glyph || !glyph->
clazz )
501 return;
502
503 clazz = glyph->
clazz;
504 if ( !clazz->glyph_bbox )
505 return;
506
507
508 clazz->glyph_bbox( glyph, acbox );
509
510
513 {
518 }
519
520
523 {
528 }
529 }
#define FT_PIX_CEIL_LONG(x)
◆ FT_Glyph_To_Bitmap()
Definition at line 535 of file ftglyph.c.
539 {
546
548
549
550
551 if ( !the_glyph )
552 goto Bad;
553 glyph = *the_glyph;
554 if ( !glyph )
555 goto Bad;
556
557 clazz = glyph->
clazz;
560 goto Bad;
561
562
563 if ( clazz == &ft_bitmap_glyph_class )
565
566 if ( !clazz->glyph_prepare )
567 goto Bad;
568
569
570
571
574 dummy.internal = &dummy_internal;
576 dummy.format = clazz->glyph_format;
577
578
583
584#if 1
585
588#else
590#endif
591
592
593 error = clazz->glyph_prepare( glyph, &
dummy );
596
597#if 1
599 {
601
602
606 }
607#endif
608
611
612
616
617
619
622
624
628
630
631 Bad:
634 }
void destroy(_Tp *__pointer)
ft_bitmap_glyph_init(FT_Glyph bitmap_glyph, FT_GlyphSlot slot)
FT_Glyph_Transform(FT_Glyph glyph, FT_Matrix *matrix, FT_Vector *delta)
FT_Render_Glyph_Internal(FT_Library library, FT_GlyphSlot slot, FT_Render_Mode render_mode)
GLboolean GLboolean GLboolean b
Referenced by IntGetBitmapGlyphWithCache().
◆ FT_Glyph_Transform()
Definition at line 455 of file ftglyph.c.
458 {
460
461
462 if ( !glyph || !glyph->
clazz )
464 else
465 {
467
468
469 if ( clazz->glyph_transform )
470 {
471
472 clazz->glyph_transform( glyph,
matrix, delta );
473
474
477 }
478 else
480 }
482 }
FT_Vector_Transform(FT_Vector *vector, const FT_Matrix *matrix)
Referenced by FT_Glyph_To_Bitmap().
◆ FT_New_Glyph()
Definition at line 362 of file ftglyph.c.
365 {
367
369 return FT_THROW( Invalid_Argument );
370
371
372 if (
format == FT_GLYPH_FORMAT_BITMAP )
373 clazz = &ft_bitmap_glyph_class;
374
375
378
379 else
380 {
381
383
384
386 clazz = &
render->glyph_class;
387 }
388
389 if ( !clazz )
390 return FT_THROW( Invalid_Glyph_Format );
391
392
393 return ft_new_glyph(
library, clazz, aglyph );
394 }
FT_Lookup_Renderer(FT_Library library, FT_Glyph_Format format, FT_ListNode *node)
FT_CALLBACK_TABLE const FT_Glyph_Class ft_outline_glyph_class
Referenced by FT_Get_Glyph().
◆ ft_outline_glyph_bbox()
Definition at line 239 of file ftglyph.c.
241 {
243
244
246 }
FT_Outline_Get_CBox(const FT_Outline *outline, FT_BBox *acbox)
◆ ft_outline_glyph_copy()
Definition at line 202 of file ftglyph.c.
204 {
209
210
213 source->outline.n_contours,
217
219 }
◆ ft_outline_glyph_done()
ft_outline_glyph_done |
( |
FT_Glyph |
outline_glyph | ) |
|
Definition at line 192 of file ftglyph.c.
193 {
195
196
198 }
FT_Outline_Done(FT_Library library, FT_Outline *outline)
◆ ft_outline_glyph_prepare()
Definition at line 250 of file ftglyph.c.
252 {
254
255
258 slot->outline.flags &= ~FT_OUTLINE_OWNER;
259
261 }
◆ ft_outline_glyph_transform()
Definition at line 223 of file ftglyph.c.
226 {
228
229
232
233 if ( delta )
235 }
FT_Outline_Translate(const FT_Outline *outline, FT_Pos xOffset, FT_Pos yOffset)
FT_Outline_Transform(const FT_Outline *outline, const FT_Matrix *matrix)