20 #include FT_FREETYPE_H
21 #include FT_INTERNAL_OBJECTS_H
26 #ifdef FT_CONFIG_OPTION_PIC
30 FT_Create_Class_cff_services(
35 FT_Destroy_Class_cff_services(
40 FT_Init_Class_cff_service_ps_info(
42 FT_Service_PsInfoRec* clazz );
45 FT_Init_Class_cff_service_glyph_dict(
47 FT_Service_GlyphDictRec* clazz );
50 FT_Init_Class_cff_service_ps_name(
52 FT_Service_PsFontNameRec* clazz );
55 FT_Init_Class_cff_service_get_cmap_info(
57 FT_Service_TTCMapsRec* clazz );
60 FT_Init_Class_cff_service_cid_info(
62 FT_Service_CIDRec* clazz );
66 FT_Create_Class_cff_field_handlers(
71 FT_Destroy_Class_cff_field_handlers(
78 FT_PIC_Container* pic_container = &library->pic_container;
82 if ( pic_container->cff )
84 CffModulePIC* container = ( CffModulePIC* )pic_container->cff;
87 if ( container->cff_services )
88 FT_Destroy_Class_cff_services( library,
89 container->cff_services );
90 container->cff_services =
NULL;
91 if ( container->cff_field_handlers )
92 FT_Destroy_Class_cff_field_handlers(
93 library, container->cff_field_handlers );
94 container->cff_field_handlers =
NULL;
96 pic_container->cff =
NULL;
102 cff_driver_class_pic_init(
FT_Library library )
104 FT_PIC_Container* pic_container = &library->pic_container;
106 CffModulePIC* container;
111 if (
FT_ALLOC ( container,
sizeof ( *container ) ) )
113 FT_MEM_SET( container, 0,
sizeof ( *container ) );
114 pic_container->cff = container;
117 error = FT_Create_Class_cff_services( library,
118 &container->cff_services );
121 error = FT_Create_Class_cff_field_handlers(
122 library, &container->cff_field_handlers );
125 FT_Init_Class_cff_service_ps_info(
126 library, &container->cff_service_ps_info );
127 FT_Init_Class_cff_service_glyph_dict(
128 library, &container->cff_service_glyph_dict );
129 FT_Init_Class_cff_service_ps_name(
130 library, &container->cff_service_ps_name );
131 FT_Init_Class_cff_service_get_cmap_info(
132 library, &container->cff_service_get_cmap_info );
133 FT_Init_Class_cff_service_cid_info(
134 library, &container->cff_service_cid_info );
135 FT_Init_Class_cff_cmap_encoding_class_rec(
136 library, &container->cff_cmap_encoding_class_rec );
137 FT_Init_Class_cff_cmap_unicode_class_rec(
138 library, &container->cff_cmap_unicode_class_rec );
141 cff_driver_class_pic_free( library );
#define FT_ALLOC(ptr, size)
typedefFT_BEGIN_HEADER struct FT_MemoryRec_ * FT_Memory
#define FT_MEM_SET(dest, byte, count)