sdk-world v2026.11.05
PS2 SDK - world tier (copyleft-allowed, non-essential packages)
Loading...
Searching...
No Matches
t1objs.h
Go to the documentation of this file.
1/****************************************************************************
2 *
3 * t1objs.h
4 *
5 * Type 1 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 T1OBJS_H_
24#define T1OBJS_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 T1_Size_Hints_ T1_Size_Hints;
38 typedef struct T1_Glyph_Hints_ T1_Glyph_Hints;
39
40
41 /**************************************************************************
42 *
43 * @Type:
44 * T1_Size
45 *
46 * @Description:
47 * A handle to a Type 1 size object.
48 */
49 typedef struct T1_SizeRec_* T1_Size;
50
51
52 /**************************************************************************
53 *
54 * @Type:
55 * T1_GlyphSlot
56 *
57 * @Description:
58 * A handle to a Type 1 glyph slot object.
59 */
60 typedef struct T1_GlyphSlotRec_* T1_GlyphSlot;
61
62
63 /**************************************************************************
64 *
65 * @Type:
66 * T1_CharMap
67 *
68 * @Description:
69 * A handle to a Type 1 character mapping object.
70 *
71 * @Note:
72 * The Type 1 format doesn't use a charmap but an encoding table.
73 * The driver is responsible for making up charmap objects
74 * corresponding to these tables.
75 */
76 typedef struct T1_CharMapRec_* T1_CharMap;
77
78
79 /**************************************************************************
80 *
81 * HERE BEGINS THE TYPE1 SPECIFIC STUFF
82 *
83 */
84
85
86 /**************************************************************************
87 *
88 * @Type:
89 * T1_SizeRec
90 *
91 * @Description:
92 * Type 1 size record.
93 */
94 typedef struct T1_SizeRec_
95 {
96 FT_SizeRec root;
97
98 } T1_SizeRec;
99
100
101 FT_LOCAL( void )
102 T1_Size_Done( FT_Size size );
103
104 FT_LOCAL( FT_Error )
105 T1_Size_Request( FT_Size size,
106 FT_Size_Request req );
107
108 FT_LOCAL( FT_Error )
109 T1_Size_Init( FT_Size size );
110
111
112 /**************************************************************************
113 *
114 * @Type:
115 * T1_GlyphSlotRec
116 *
117 * @Description:
118 * Type 1 glyph slot record.
119 */
120 typedef struct T1_GlyphSlotRec_
121 {
122 FT_GlyphSlotRec root;
123
124 FT_Bool hint;
125 FT_Bool scaled;
126
127 FT_Fixed x_scale;
128 FT_Fixed y_scale;
129
130 FT_Int max_points;
131 FT_Int max_contours;
132
133 } T1_GlyphSlotRec;
134
135
136 FT_LOCAL( FT_Error )
137 T1_Face_Init( FT_Stream stream,
138 FT_Face face,
139 FT_Int face_index,
140 FT_Int num_params,
141 FT_Parameter* params );
142
143 FT_LOCAL( void )
144 T1_Face_Done( FT_Face face );
145
146 FT_LOCAL( FT_Error )
147 T1_GlyphSlot_Init( FT_GlyphSlot slot );
148
149 FT_LOCAL( void )
150 T1_GlyphSlot_Done( FT_GlyphSlot slot );
151
152 FT_LOCAL( FT_Error )
153 T1_Driver_Init( FT_Module driver );
154
155 FT_LOCAL( void )
156 T1_Driver_Done( FT_Module driver );
157
158
159FT_END_HEADER
160
161#endif /* T1OBJS_H_ */
162
163
164/* END */