Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
ftparams.h
Go to the documentation of this file.
1/****************************************************************************
2 *
3 * ftparams.h
4 *
5 * FreeType API for possible FT_Parameter tags (specification only).
6 *
7 * Copyright (C) 2017-2024 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
19#ifndef FTPARAMS_H_
20#define FTPARAMS_H_
21
22#include <freetype/freetype.h>
23
24#ifdef FREETYPE_H
25#error "freetype.h of FreeType 1 has been loaded!"
26#error "Please fix the directory search order for header files"
27#error "so that freetype.h of FreeType 2 is found first."
28#endif
29
30
32
33
34 /**************************************************************************
35 *
36 * @section:
37 * parameter_tags
38 *
39 * @title:
40 * Parameter Tags
41 *
42 * @abstract:
43 * Macros for driver property and font loading parameter tags.
44 *
45 * @description:
46 * This section contains macros for the @FT_Parameter structure that are
47 * used with various functions to activate some special functionality or
48 * different behaviour of various components of FreeType.
49 *
50 */
51
52
53 /**************************************************************************
54 *
55 * @enum:
56 * FT_PARAM_TAG_IGNORE_TYPOGRAPHIC_FAMILY
57 *
58 * @description:
59 * A tag for @FT_Parameter to make @FT_Open_Face ignore typographic
60 * family names in the 'name' table (introduced in OpenType version 1.4).
61 * Use this for backward compatibility with legacy systems that have a
62 * four-faces-per-family restriction.
63 *
64 * @since:
65 * 2.8
66 *
67 */
68#define FT_PARAM_TAG_IGNORE_TYPOGRAPHIC_FAMILY \
69 FT_MAKE_TAG( 'i', 'g', 'p', 'f' )
70
71
72 /* this constant is deprecated */
73#define FT_PARAM_TAG_IGNORE_PREFERRED_FAMILY \
74 FT_PARAM_TAG_IGNORE_TYPOGRAPHIC_FAMILY
75
76
77 /**************************************************************************
78 *
79 * @enum:
80 * FT_PARAM_TAG_IGNORE_TYPOGRAPHIC_SUBFAMILY
81 *
82 * @description:
83 * A tag for @FT_Parameter to make @FT_Open_Face ignore typographic
84 * subfamily names in the 'name' table (introduced in OpenType version
85 * 1.4). Use this for backward compatibility with legacy systems that
86 * have a four-faces-per-family restriction.
87 *
88 * @since:
89 * 2.8
90 *
91 */
92#define FT_PARAM_TAG_IGNORE_TYPOGRAPHIC_SUBFAMILY \
93 FT_MAKE_TAG( 'i', 'g', 'p', 's' )
94
95
96 /* this constant is deprecated */
97#define FT_PARAM_TAG_IGNORE_PREFERRED_SUBFAMILY \
98 FT_PARAM_TAG_IGNORE_TYPOGRAPHIC_SUBFAMILY
99
100
101 /**************************************************************************
102 *
103 * @enum:
104 * FT_PARAM_TAG_INCREMENTAL
105 *
106 * @description:
107 * An @FT_Parameter tag to be used with @FT_Open_Face to indicate
108 * incremental glyph loading.
109 *
110 */
111#define FT_PARAM_TAG_INCREMENTAL \
112 FT_MAKE_TAG( 'i', 'n', 'c', 'r' )
113
114
115 /**************************************************************************
116 *
117 * @enum:
118 * FT_PARAM_TAG_IGNORE_SBIX
119 *
120 * @description:
121 * A tag for @FT_Parameter to make @FT_Open_Face ignore an 'sbix' table
122 * while loading a font. Use this if @FT_FACE_FLAG_SBIX is set and you
123 * want to access the outline glyphs in the font.
124 *
125 */
126#define FT_PARAM_TAG_IGNORE_SBIX \
127 FT_MAKE_TAG( 'i', 's', 'b', 'x' )
128
129
130 /**************************************************************************
131 *
132 * @enum:
133 * FT_PARAM_TAG_LCD_FILTER_WEIGHTS
134 *
135 * @description:
136 * An @FT_Parameter tag to be used with @FT_Face_Properties. The
137 * corresponding argument specifies the five LCD filter weights for a
138 * given face (if using @FT_LOAD_TARGET_LCD, for example), overriding the
139 * global default values or the values set up with
140 * @FT_Library_SetLcdFilterWeights.
141 *
142 * @since:
143 * 2.8
144 *
145 */
146#define FT_PARAM_TAG_LCD_FILTER_WEIGHTS \
147 FT_MAKE_TAG( 'l', 'c', 'd', 'f' )
148
149
150 /**************************************************************************
151 *
152 * @enum:
153 * FT_PARAM_TAG_RANDOM_SEED
154 *
155 * @description:
156 * An @FT_Parameter tag to be used with @FT_Face_Properties. The
157 * corresponding 32bit signed integer argument overrides the font
158 * driver's random seed value with a face-specific one; see @random-seed.
159 *
160 * @since:
161 * 2.8
162 *
163 */
164#define FT_PARAM_TAG_RANDOM_SEED \
165 FT_MAKE_TAG( 's', 'e', 'e', 'd' )
166
167
168 /**************************************************************************
169 *
170 * @enum:
171 * FT_PARAM_TAG_STEM_DARKENING
172 *
173 * @description:
174 * An @FT_Parameter tag to be used with @FT_Face_Properties. The
175 * corresponding Boolean argument specifies whether to apply stem
176 * darkening, overriding the global default values or the values set up
177 * with @FT_Property_Set (see @no-stem-darkening).
178 *
179 * This is a passive setting that only takes effect if the font driver or
180 * autohinter honors it, which the CFF, Type~1, and CID drivers always
181 * do, but the autohinter only in 'light' hinting mode (as of version
182 * 2.9).
183 *
184 * @since:
185 * 2.8
186 *
187 */
188#define FT_PARAM_TAG_STEM_DARKENING \
189 FT_MAKE_TAG( 'd', 'a', 'r', 'k' )
190
191
192 /**************************************************************************
193 *
194 * @enum:
195 * FT_PARAM_TAG_UNPATENTED_HINTING
196 *
197 * @description:
198 * Deprecated, no effect.
199 *
200 * Previously: A constant used as the tag of an @FT_Parameter structure
201 * to indicate that unpatented methods only should be used by the
202 * TrueType bytecode interpreter for a typeface opened by @FT_Open_Face.
203 *
204 */
205#define FT_PARAM_TAG_UNPATENTED_HINTING \
206 FT_MAKE_TAG( 'u', 'n', 'p', 'a' )
207
208
209 /* */
210
211
213
214
215#endif /* FTPARAMS_H_ */
216
217
218/* END */
#define FT_END_HEADER
Definition ftheader.h:57
#define FT_BEGIN_HEADER
Definition ftheader.h:37