sdk-world v2026.11.05
PS2 SDK - world tier (copyleft-allowed, non-essential packages)
Loading...
Searching...
No Matches
cidobjs.h
Go to the documentation of this file.
1/****************************************************************************
2 *
3 * cidobjs.h
4 *
5 * CID objects manager (specification).
6 *
7 * Copyright (C) 1996-2025 by
8 * David Turner, Robert Wilhelm, and Werner Lemberg.
9 *
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.
15 *
16 */
17
18
23#ifndef CIDOBJS_H_
24#define CIDOBJS_H_
25
26
27#include <ft2build.h>
29#include FT_CONFIG_CONFIG_H
31
32
33FT_BEGIN_HEADER
34
35
36 /* The following structures must be defined by the hinter */
37 typedef struct CID_Size_Hints_ CID_Size_Hints;
38 typedef struct CID_Glyph_Hints_ CID_Glyph_Hints;
39
40
41 /**************************************************************************
42 *
43 * @Type:
44 * CID_Driver
45 *
46 * @Description:
47 * A handle to a Type 1 driver object.
48 */
49 typedef struct CID_DriverRec_* CID_Driver;
50
51
52 /**************************************************************************
53 *
54 * @Type:
55 * CID_Size
56 *
57 * @Description:
58 * A handle to a Type 1 size object.
59 */
60 typedef struct CID_SizeRec_* CID_Size;
61
62
63 /**************************************************************************
64 *
65 * @Type:
66 * CID_GlyphSlot
67 *
68 * @Description:
69 * A handle to a Type 1 glyph slot object.
70 */
71 typedef struct CID_GlyphSlotRec_* CID_GlyphSlot;
72
73
74 /**************************************************************************
75 *
76 * @Type:
77 * CID_CharMap
78 *
79 * @Description:
80 * A handle to a Type 1 character mapping object.
81 *
82 * @Note:
83 * The Type 1 format doesn't use a charmap but an encoding table.
84 * The driver is responsible for making up charmap objects
85 * corresponding to these tables.
86 */
87 typedef struct CID_CharMapRec_* CID_CharMap;
88
89
90 /**************************************************************************
91 *
92 * HERE BEGINS THE TYPE 1 SPECIFIC STUFF
93 *
94 */
95
96
97 typedef struct CID_SizeRec_
98 {
99 FT_SizeRec root;
100 FT_Bool valid;
101
102 } CID_SizeRec;
103
104
105 typedef struct CID_GlyphSlotRec_
106 {
107 FT_GlyphSlotRec root;
108
109 FT_Bool hint;
110 FT_Bool scaled;
111
112 FT_Fixed x_scale;
113 FT_Fixed y_scale;
114
115 } CID_GlyphSlotRec;
116
117
118 FT_LOCAL( void )
119 cid_slot_done( FT_GlyphSlot slot );
120
121 FT_LOCAL( FT_Error )
122 cid_slot_init( FT_GlyphSlot slot );
123
124
125 FT_LOCAL( void )
126 cid_size_done( FT_Size size ); /* CID_Size */
127
128 FT_LOCAL( FT_Error )
129 cid_size_init( FT_Size size ); /* CID_Size */
130
131 FT_LOCAL( FT_Error )
132 cid_size_request( FT_Size size, /* CID_Size */
133 FT_Size_Request req );
134
135 FT_LOCAL( FT_Error )
136 cid_face_init( FT_Stream stream,
137 FT_Face face, /* CID_Face */
138 FT_Int face_index,
139 FT_Int num_params,
140 FT_Parameter* params );
141
142 FT_LOCAL( void )
143 cid_face_done( FT_Face face ); /* CID_Face */
144
145
146 FT_LOCAL( FT_Error )
147 cid_driver_init( FT_Module driver );
148
149 FT_LOCAL( void )
150 cid_driver_done( FT_Module driver );
151
152
153FT_END_HEADER
154
155#endif /* CIDOBJS_H_ */
156
157
158/* END */