1 /***************************************************************************/
5 /* OpenType objects manager (specification). */
7 /* Copyright 1996-2001, 2002 by */
8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */
10 /* This file is part of the FreeType project, and may only be used, */
11 /* modified, and distributed under the terms of the FreeType project */
12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
13 /* this file you indicate that you have read the license and */
14 /* understand and accept it fully. */
16 /***************************************************************************/
24 #include FT_INTERNAL_OBJECTS_H
25 #include FT_INTERNAL_CFF_TYPES_H
26 #include FT_INTERNAL_TRUETYPE_TYPES_H
27 #include FT_INTERNAL_POSTSCRIPT_NAMES_H
33 /*************************************************************************/
39 /* A handle to an OpenType driver object. */
41 typedef struct CFF_DriverRec_* CFF_Driver;
43 typedef TT_Face CFF_Face;
46 /*************************************************************************/
52 /* A handle to an OpenType size object. */
54 typedef FT_Size CFF_Size;
57 /*************************************************************************/
63 /* A handle to an OpenType glyph slot object. */
65 typedef struct CFF_GlyphSlotRec_
75 } CFF_GlyphSlotRec, *CFF_GlyphSlot;
79 /*************************************************************************/
81 /* Subglyph transformation record. */
83 typedef struct CFF_Transform_
85 FT_Fixed xx, xy; /* transformation matrix coefficients */
87 FT_F26Dot6 ox, oy; /* offsets */
92 /* this is only used in the case of a pure CFF font with no charmap */
93 typedef struct CFF_CharMapRec_
98 } CFF_CharMapRec, *CFF_CharMap;
101 /***********************************************************************/
103 /* TrueType driver class. */
105 typedef struct CFF_DriverRec_
108 void* extension_component;
114 cff_size_init( CFF_Size size );
117 cff_size_done( CFF_Size size );
120 cff_size_reset( CFF_Size size );
123 cff_slot_done( CFF_GlyphSlot slot );
126 cff_slot_init( CFF_GlyphSlot slot );
129 /*************************************************************************/
134 cff_face_init( FT_Stream stream,
138 FT_Parameter* params );
141 cff_face_done( CFF_Face face );
144 /*************************************************************************/
146 /* Driver functions */
149 cff_driver_init( CFF_Driver driver );
152 cff_driver_done( CFF_Driver driver );
157 #endif /* __CFFOBJS_H__ */