Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(86)

Side by Side Diff: include/freetype/internal/autohint.h

Issue 89753003: Update freetype to latest version of ASOP. (Closed) Base URL: https://chromium.googlesource.com/chromium/src/third_party/freetype.git@master
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « include/freetype/fttypes.h ('k') | include/freetype/internal/ftcalc.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /***************************************************************************/ 1 /***************************************************************************/
2 /* */ 2 /* */
3 /* autohint.h */ 3 /* autohint.h */
4 /* */ 4 /* */
5 /* High-level `autohint' module-specific interface (specification). */ 5 /* High-level `autohint' module-specific interface (specification). */
6 /* */ 6 /* */
7 /* Copyright 1996-2001, 2002, 2007 by */ 7 /* Copyright 1996-2002, 2007, 2009, 2012 by */
8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ 8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */
9 /* */ 9 /* */
10 /* This file is part of the FreeType project, and may only be used, */ 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 */ 11 /* modified, and distributed under the terms of the FreeType project */
12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ 12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
13 /* this file you indicate that you have read the license and */ 13 /* this file you indicate that you have read the license and */
14 /* understand and accept it fully. */ 14 /* understand and accept it fully. */
15 /* */ 15 /* */
16 /***************************************************************************/ 16 /***************************************************************************/
17 17
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 79
80 typedef struct FT_AutoHinterRec_ *FT_AutoHinter; 80 typedef struct FT_AutoHinterRec_ *FT_AutoHinter;
81 81
82 82
83 /*************************************************************************/ 83 /*************************************************************************/
84 /* */ 84 /* */
85 /* <FuncType> */ 85 /* <FuncType> */
86 /* FT_AutoHinter_GlobalGetFunc */ 86 /* FT_AutoHinter_GlobalGetFunc */
87 /* */ 87 /* */
88 /* <Description> */ 88 /* <Description> */
89 /* Retrieves the global hints computed for a given face object the */ 89 /* Retrieve the global hints computed for a given face object. The */
90 /* resulting data is dissociated from the face and will survive a */ 90 /* resulting data is dissociated from the face and will survive a */
91 /* call to FT_Done_Face(). It must be discarded through the API */ 91 /* call to FT_Done_Face(). It must be discarded through the API */
92 /* FT_AutoHinter_GlobalDoneFunc(). */ 92 /* FT_AutoHinter_GlobalDoneFunc(). */
93 /* */ 93 /* */
94 /* <Input> */ 94 /* <Input> */
95 /* hinter :: A handle to the source auto-hinter. */ 95 /* hinter :: A handle to the source auto-hinter. */
96 /* */ 96 /* */
97 /* face :: A handle to the source face object. */ 97 /* face :: A handle to the source face object. */
98 /* */ 98 /* */
99 /* <Output> */ 99 /* <Output> */
100 /* global_hints :: A typeless pointer to the global hints. */ 100 /* global_hints :: A typeless pointer to the global hints. */
101 /* */ 101 /* */
102 /* global_len :: The size in bytes of the global hints. */ 102 /* global_len :: The size in bytes of the global hints. */
103 /* */ 103 /* */
104 typedef void 104 typedef void
105 (*FT_AutoHinter_GlobalGetFunc)( FT_AutoHinter hinter, 105 (*FT_AutoHinter_GlobalGetFunc)( FT_AutoHinter hinter,
106 FT_Face face, 106 FT_Face face,
107 void** global_hints, 107 void** global_hints,
108 long* global_len ); 108 long* global_len );
109 109
110 110
111 /*************************************************************************/ 111 /*************************************************************************/
112 /* */ 112 /* */
113 /* <FuncType> */ 113 /* <FuncType> */
114 /* FT_AutoHinter_GlobalDoneFunc */ 114 /* FT_AutoHinter_GlobalDoneFunc */
115 /* */ 115 /* */
116 /* <Description> */ 116 /* <Description> */
117 /* Discards the global hints retrieved through */ 117 /* Discard the global hints retrieved through */
118 /* FT_AutoHinter_GlobalGetFunc(). This is the only way these hints */ 118 /* FT_AutoHinter_GlobalGetFunc(). This is the only way these hints */
119 /* are freed from memory. */ 119 /* are freed from memory. */
120 /* */ 120 /* */
121 /* <Input> */ 121 /* <Input> */
122 /* hinter :: A handle to the auto-hinter module. */ 122 /* hinter :: A handle to the auto-hinter module. */
123 /* */ 123 /* */
124 /* global :: A pointer to retrieved global hints to discard. */ 124 /* global :: A pointer to retrieved global hints to discard. */
125 /* */ 125 /* */
126 typedef void 126 typedef void
127 (*FT_AutoHinter_GlobalDoneFunc)( FT_AutoHinter hinter, 127 (*FT_AutoHinter_GlobalDoneFunc)( FT_AutoHinter hinter,
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
161 /* face :: A handle to the face. */ 161 /* face :: A handle to the face. */
162 /* */ 162 /* */
163 /* glyph_index :: The glyph index. */ 163 /* glyph_index :: The glyph index. */
164 /* */ 164 /* */
165 /* load_flags :: The load flags. */ 165 /* load_flags :: The load flags. */
166 /* */ 166 /* */
167 /* <Note> */ 167 /* <Note> */
168 /* This function is capable of loading composite glyphs by hinting */ 168 /* This function is capable of loading composite glyphs by hinting */
169 /* each sub-glyph independently (which improves quality). */ 169 /* each sub-glyph independently (which improves quality). */
170 /* */ 170 /* */
171 /* It will call the font driver with FT_Load_Glyph(), with */ 171 /* It will call the font driver with @FT_Load_Glyph, with */
172 /* FT_LOAD_NO_SCALE set. */ 172 /* @FT_LOAD_NO_SCALE set. */
173 /* */ 173 /* */
174 typedef FT_Error 174 typedef FT_Error
175 (*FT_AutoHinter_GlyphLoadFunc)( FT_AutoHinter hinter, 175 (*FT_AutoHinter_GlyphLoadFunc)( FT_AutoHinter hinter,
176 FT_GlyphSlot slot, 176 FT_GlyphSlot slot,
177 FT_Size size, 177 FT_Size size,
178 FT_UInt glyph_index, 178 FT_UInt glyph_index,
179 FT_Int32 load_flags ); 179 FT_Int32 load_flags );
180 180
181 181
182 /*************************************************************************/ 182 /*************************************************************************/
183 /* */ 183 /* */
184 /* <Struct> */ 184 /* <Struct> */
185 /* FT_AutoHinter_ServiceRec */ 185 /* FT_AutoHinter_InterfaceRec */
186 /* */ 186 /* */
187 /* <Description> */ 187 /* <Description> */
188 /* The auto-hinter module's interface. */ 188 /* The auto-hinter module's interface. */
189 /* */ 189 /* */
190 typedef struct FT_AutoHinter_ServiceRec_ 190 typedef struct FT_AutoHinter_InterfaceRec_
191 { 191 {
192 FT_AutoHinter_GlobalResetFunc reset_face; 192 FT_AutoHinter_GlobalResetFunc reset_face;
193 FT_AutoHinter_GlobalGetFunc get_global_hints; 193 FT_AutoHinter_GlobalGetFunc get_global_hints;
194 FT_AutoHinter_GlobalDoneFunc done_global_hints; 194 FT_AutoHinter_GlobalDoneFunc done_global_hints;
195 FT_AutoHinter_GlyphLoadFunc load_glyph; 195 FT_AutoHinter_GlyphLoadFunc load_glyph;
196 196
197 } FT_AutoHinter_ServiceRec, *FT_AutoHinter_Service; 197 } FT_AutoHinter_InterfaceRec, *FT_AutoHinter_Interface;
198
198 199
199 #ifndef FT_CONFIG_OPTION_PIC 200 #ifndef FT_CONFIG_OPTION_PIC
200 201
201 #define FT_DEFINE_AUTOHINTER_SERVICE(class_, reset_face_, get_global_hints_, \ 202 #define FT_DEFINE_AUTOHINTER_INTERFACE( \
202 done_global_hints_, load_glyph_) \ 203 class_, \
203 FT_CALLBACK_TABLE_DEF \ 204 reset_face_, \
204 const FT_AutoHinter_ServiceRec class_ = \ 205 get_global_hints_, \
205 { \ 206 done_global_hints_, \
206 reset_face_, get_global_hints_, done_global_hints_, load_glyph_ \ 207 load_glyph_ ) \
208 FT_CALLBACK_TABLE_DEF \
209 const FT_AutoHinter_InterfaceRec class_ = \
210 { \
211 reset_face_, \
212 get_global_hints_, \
213 done_global_hints_, \
214 load_glyph_ \
207 }; 215 };
208 216
209 #else /* FT_CONFIG_OPTION_PIC */ 217 #else /* FT_CONFIG_OPTION_PIC */
210 218
211 #define FT_DEFINE_AUTOHINTER_SERVICE(class_, reset_face_, get_global_hints_, \ 219 #define FT_DEFINE_AUTOHINTER_INTERFACE( \
212 done_global_hints_, load_glyph_) \ 220 class_, \
213 void \ 221 reset_face_, \
214 FT_Init_Class_##class_( FT_Library library, \ 222 get_global_hints_, \
215 FT_AutoHinter_ServiceRec* clazz) \ 223 done_global_hints_, \
216 { \ 224 load_glyph_ ) \
217 FT_UNUSED(library); \ 225 void \
218 clazz->reset_face = reset_face_; \ 226 FT_Init_Class_ ## class_( FT_Library library, \
219 clazz->get_global_hints = get_global_hints_; \ 227 FT_AutoHinter_InterfaceRec* clazz ) \
220 clazz->done_global_hints = done_global_hints_; \ 228 { \
221 clazz->load_glyph = load_glyph_; \ 229 FT_UNUSED( library ); \
230 \
231 clazz->reset_face = reset_face_; \
232 clazz->get_global_hints = get_global_hints_; \
233 clazz->done_global_hints = done_global_hints_; \
234 clazz->load_glyph = load_glyph_; \
222 } 235 }
223 236
224 #endif /* FT_CONFIG_OPTION_PIC */ 237 #endif /* FT_CONFIG_OPTION_PIC */
225 238
226 FT_END_HEADER 239 FT_END_HEADER
227 240
228 #endif /* __AUTOHINT_H__ */ 241 #endif /* __AUTOHINT_H__ */
229 242
230 243
231 /* END */ 244 /* END */
OLDNEW
« no previous file with comments | « include/freetype/fttypes.h ('k') | include/freetype/internal/ftcalc.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698