ScummVM API documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
ahhint.h
1 /* ScummVM - Graphic Adventure Engine
2  *
3  * ScummVM is the legal property of its developers, whose names
4  * are too numerous to list here. Please refer to the COPYRIGHT
5  * file distributed with this source distribution.
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  *
20  */
21 
22 /***************************************************************************/
23 /* */
24 /* ahhint.h */
25 /* */
26 /* Glyph hinter (declaration). */
27 /* */
28 /* Copyright 2000-2001, 2002 Catharon Productions Inc. */
29 /* Author: David Turner */
30 /* */
31 /* This file is part of the Catharon Typography Project and shall only */
32 /* be used, modified, and distributed under the terms of the Catharon */
33 /* Open Source License that should come with this file under the name */
34 /* `CatharonLicense.txt'. By continuing to use, modify, or distribute */
35 /* this file you indicate that you have read the license and */
36 /* understand and accept it fully. */
37 /* */
38 /* Note that this license is compatible with the FreeType license. */
39 /* */
40 /***************************************************************************/
41 
42 
43 #ifndef AGS_LIB_FREETYPE_AHHINT_H
44 #define AGS_LIB_FREETYPE_AHHINT_H
45 
46 
47 #include <ft2build.h>
48 #include "ags/lib/freetype-2.1.3/autohint/ahglobal.h"
49 
50 namespace AGS3 {
51 namespace FreeType213 {
52 
53 
54 #define AH_HINT_DEFAULT 0
55 #define AH_HINT_NO_ALIGNMENT 1
56 #define AH_HINT_NO_HORZ_EDGES 0x200000L /* temporary hack */
57 #define AH_HINT_NO_VERT_EDGES 0x400000L /* temporary hack */
58 
59 /* create a new empty hinter object */
60 FT_Error ah_hinter_new(FT_Memory memory, AH_Hinter *ahinter);
61 
62 /* Load a hinted glyph in the hinter */
63 FT_Error ah_hinter_load_glyph(AH_Hinter hinter, FT_GlyphSlot slot, FT_Size size, FT_UInt glyph_index, FT_Int32 load_flags);
64 
65 /* finalize a hinter object */
66 void ah_hinter_done(AH_Hinter hinter);
67 
68 void ah_hinter_done_face_globals(AH_Face_Globals globals);
69 
70 void ah_hinter_get_global_hints(AH_Hinter hinter, FT_Face face, void **global_hints, long *global_len);
71 
72 void ah_hinter_done_global_hints(AH_Hinter hinter, void *global_hints);
73 
74 
75 } // End of namespace FreeType213
76 } // End of namespace AGS3
77 
78 #endif /* AGS_LIB_FREETYPE_AHHINT_H */
Definition: ags.h:40