1 /****************************************************************************
5 * CID objects manager (specification).
7 * Copyright (C) 1996-2023 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.
24 #include <freetype/internal/ftobjs.h>
25 #include FT_CONFIG_CONFIG_H
26 #include <freetype/internal/t1types.h>
32 /* The following structures must be defined by the hinter */
33 typedef struct CID_Size_Hints_ CID_Size_Hints;
34 typedef struct CID_Glyph_Hints_ CID_Glyph_Hints;
37 /**************************************************************************
43 * A handle to a Type 1 driver object.
45 typedef struct CID_DriverRec_* CID_Driver;
48 /**************************************************************************
54 * A handle to a Type 1 size object.
56 typedef struct CID_SizeRec_* CID_Size;
59 /**************************************************************************
65 * A handle to a Type 1 glyph slot object.
67 typedef struct CID_GlyphSlotRec_* CID_GlyphSlot;
70 /**************************************************************************
76 * A handle to a Type 1 character mapping object.
79 * The Type 1 format doesn't use a charmap but an encoding table.
80 * The driver is responsible for making up charmap objects
81 * corresponding to these tables.
83 typedef struct CID_CharMapRec_* CID_CharMap;
86 /**************************************************************************
88 * HERE BEGINS THE TYPE 1 SPECIFIC STUFF
93 typedef struct CID_SizeRec_
101 typedef struct CID_GlyphSlotRec_
103 FT_GlyphSlotRec root;
115 cid_slot_done( FT_GlyphSlot slot );
118 cid_slot_init( FT_GlyphSlot slot );
122 cid_size_done( FT_Size size ); /* CID_Size */
125 cid_size_init( FT_Size size ); /* CID_Size */
128 cid_size_request( FT_Size size, /* CID_Size */
129 FT_Size_Request req );
132 cid_face_init( FT_Stream stream,
133 FT_Face face, /* CID_Face */
136 FT_Parameter* params );
139 cid_face_done( FT_Face face ); /* CID_Face */
143 cid_driver_init( FT_Module driver );
146 cid_driver_done( FT_Module driver );
151 #endif /* CIDOBJS_H_ */