| OLD | NEW |
| 1 /***************************************************************************/ | 1 /***************************************************************************/ |
| 2 /* */ | 2 /* */ |
| 3 /* freetype.h */ | 3 /* freetype.h */ |
| 4 /* */ | 4 /* */ |
| 5 /* FreeType high-level API and common types (specification only). */ | 5 /* FreeType high-level API and common types (specification only). */ |
| 6 /* */ | 6 /* */ |
| 7 /* Copyright 1996-2012 by */ | 7 /* Copyright 1996-2013 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 |
| 18 | 18 |
| 19 #ifndef __FREETYPE_H__ |
| 20 #define __FREETYPE_H__ |
| 21 |
| 22 |
| 19 #ifndef FT_FREETYPE_H | 23 #ifndef FT_FREETYPE_H |
| 20 #error "`ft2build.h' hasn't been included yet!" | 24 #error "`ft2build.h' hasn't been included yet!" |
| 21 #error "Please always use macros to include FreeType header files." | 25 #error "Please always use macros to include FreeType header files." |
| 22 #error "Example:" | 26 #error "Example:" |
| 23 #error " #include <ft2build.h>" | 27 #error " #include <ft2build.h>" |
| 24 #error " #include FT_FREETYPE_H" | 28 #error " #include FT_FREETYPE_H" |
| 25 #endif | 29 #endif |
| 26 | 30 |
| 27 | 31 |
| 28 #ifndef __FREETYPE_H__ | |
| 29 #define __FREETYPE_H__ | |
| 30 | |
| 31 | |
| 32 #include <ft2build.h> | 32 #include <ft2build.h> |
| 33 #include FT_CONFIG_CONFIG_H | 33 #include FT_CONFIG_CONFIG_H |
| 34 #include FT_TYPES_H |
| 34 #include FT_ERRORS_H | 35 #include FT_ERRORS_H |
| 35 #include FT_TYPES_H | |
| 36 | 36 |
| 37 | 37 |
| 38 FT_BEGIN_HEADER | 38 FT_BEGIN_HEADER |
| 39 | 39 |
| 40 | 40 |
| 41 | 41 |
| 42 /*************************************************************************/ | 42 /*************************************************************************/ |
| 43 /* */ | 43 /* */ |
| 44 /* <Section> */ | 44 /* <Section> */ |
| 45 /* user_allocation */ | 45 /* user_allocation */ |
| (...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 230 /* mean further below the vertical glyph origin. */ | 230 /* mean further below the vertical glyph origin. */ |
| 231 /* */ | 231 /* */ |
| 232 /* vertAdvance :: */ | 232 /* vertAdvance :: */ |
| 233 /* Advance height for vertical layout. Positive values mean the */ | 233 /* Advance height for vertical layout. Positive values mean the */ |
| 234 /* glyph has a positive advance downward. */ | 234 /* glyph has a positive advance downward. */ |
| 235 /* */ | 235 /* */ |
| 236 /* <Note> */ | 236 /* <Note> */ |
| 237 /* If not disabled with @FT_LOAD_NO_HINTING, the values represent */ | 237 /* If not disabled with @FT_LOAD_NO_HINTING, the values represent */ |
| 238 /* dimensions of the hinted glyph (in case hinting is applicable). */ | 238 /* dimensions of the hinted glyph (in case hinting is applicable). */ |
| 239 /* */ | 239 /* */ |
| 240 /* Stroking a glyph with an outside border does not increase */ |
| 241 /* `horiAdvance' or `vertAdvance'; you have to manually adjust these */ |
| 242 /* values to account for the added width and height. */ |
| 243 /* */ |
| 240 typedef struct FT_Glyph_Metrics_ | 244 typedef struct FT_Glyph_Metrics_ |
| 241 { | 245 { |
| 242 FT_Pos width; | 246 FT_Pos width; |
| 243 FT_Pos height; | 247 FT_Pos height; |
| 244 | 248 |
| 245 FT_Pos horiBearingX; | 249 FT_Pos horiBearingX; |
| 246 FT_Pos horiBearingY; | 250 FT_Pos horiBearingY; |
| 247 FT_Pos horiAdvance; | 251 FT_Pos horiAdvance; |
| 248 | 252 |
| 249 FT_Pos vertBearingX; | 253 FT_Pos vertBearingX; |
| (...skipping 587 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 837 /* */ | 841 /* */ |
| 838 /* charmaps :: An array of the charmaps of the face. */ | 842 /* charmaps :: An array of the charmaps of the face. */ |
| 839 /* */ | 843 /* */ |
| 840 /* generic :: A field reserved for client uses. See the */ | 844 /* generic :: A field reserved for client uses. See the */ |
| 841 /* @FT_Generic type description. */ | 845 /* @FT_Generic type description. */ |
| 842 /* */ | 846 /* */ |
| 843 /* bbox :: The font bounding box. Coordinates are */ | 847 /* bbox :: The font bounding box. Coordinates are */ |
| 844 /* expressed in font units (see */ | 848 /* expressed in font units (see */ |
| 845 /* `units_per_EM'). The box is large enough */ | 849 /* `units_per_EM'). The box is large enough */ |
| 846 /* to contain any glyph from the font. Thus, */ | 850 /* to contain any glyph from the font. Thus, */ |
| 847 /* `bbox.yMax' can be seen as the `maximal */ | 851 /* `bbox.yMax' can be seen as the `maximum */ |
| 848 /* ascender', and `bbox.yMin' as the `minimal */ | 852 /* ascender', and `bbox.yMin' as the `minimum */ |
| 849 /* descender'. Only relevant for scalable */ | 853 /* descender'. Only relevant for scalable */ |
| 850 /* formats. */ | 854 /* formats. */ |
| 851 /* */ | 855 /* */ |
| 852 /* Note that the bounding box might be off by */ | 856 /* Note that the bounding box might be off by */ |
| 853 /* (at least) one pixel for hinted fonts. See */ | 857 /* (at least) one pixel for hinted fonts. See */ |
| 854 /* @FT_Size_Metrics for further discussion. */ | 858 /* @FT_Size_Metrics for further discussion. */ |
| 855 /* */ | 859 /* */ |
| 856 /* units_per_EM :: The number of font units per EM square for */ | 860 /* units_per_EM :: The number of font units per EM square for */ |
| 857 /* this face. This is typically 2048 for */ | 861 /* this face. This is typically 2048 for */ |
| 858 /* TrueType fonts, and 1000 for Type~1 fonts. */ | 862 /* TrueType fonts, and 1000 for Type~1 fonts. */ |
| 859 /* Only relevant for scalable formats. */ | 863 /* Only relevant for scalable formats. */ |
| 860 /* */ | 864 /* */ |
| 861 /* ascender :: The typographic ascender of the face, */ | 865 /* ascender :: The typographic ascender of the face, */ |
| 862 /* expressed in font units. For font formats */ | 866 /* expressed in font units. For font formats */ |
| 863 /* not having this information, it is set to */ | 867 /* not having this information, it is set to */ |
| 864 /* `bbox.yMax'. Only relevant for scalable */ | 868 /* `bbox.yMax'. Only relevant for scalable */ |
| 865 /* formats. */ | 869 /* formats. */ |
| 866 /* */ | 870 /* */ |
| 867 /* descender :: The typographic descender of the face, */ | 871 /* descender :: The typographic descender of the face, */ |
| 868 /* expressed in font units. For font formats */ | 872 /* expressed in font units. For font formats */ |
| 869 /* not having this information, it is set to */ | 873 /* not having this information, it is set to */ |
| 870 /* `bbox.yMin'. Note that this field is */ | 874 /* `bbox.yMin'. Note that this field is */ |
| 871 /* usually negative. Only relevant for */ | 875 /* usually negative. Only relevant for */ |
| 872 /* scalable formats. */ | 876 /* scalable formats. */ |
| 873 /* */ | 877 /* */ |
| 874 /* height :: The height is the vertical distance */ | 878 /* height :: This value is the vertical distance */ |
| 875 /* between two consecutive baselines, */ | 879 /* between two consecutive baselines, */ |
| 876 /* expressed in font units. It is always */ | 880 /* expressed in font units. It is always */ |
| 877 /* positive. Only relevant for scalable */ | 881 /* positive. Only relevant for scalable */ |
| 878 /* formats. */ | 882 /* formats. */ |
| 879 /* */ | 883 /* */ |
| 880 /* max_advance_width :: The maximal advance width, in font units, */ | 884 /* If you want the global glyph height, use */ |
| 885 /* `ascender - descender'. */ |
| 886 /* */ |
| 887 /* max_advance_width :: The maximum advance width, in font units, */ |
| 881 /* for all glyphs in this face. This can be */ | 888 /* for all glyphs in this face. This can be */ |
| 882 /* used to make word wrapping computations */ | 889 /* used to make word wrapping computations */ |
| 883 /* faster. Only relevant for scalable */ | 890 /* faster. Only relevant for scalable */ |
| 884 /* formats. */ | 891 /* formats. */ |
| 885 /* */ | 892 /* */ |
| 886 /* max_advance_height :: The maximal advance height, in font units, */ | 893 /* max_advance_height :: The maximum advance height, in font units, */ |
| 887 /* for all glyphs in this face. This is only */ | 894 /* for all glyphs in this face. This is only */ |
| 888 /* relevant for vertical layouts, and is set */ | 895 /* relevant for vertical layouts, and is set */ |
| 889 /* to `height' for fonts that do not provide */ | 896 /* to `height' for fonts that do not provide */ |
| 890 /* vertical metrics. Only relevant for */ | 897 /* vertical metrics. Only relevant for */ |
| 891 /* scalable formats. */ | 898 /* scalable formats. */ |
| 892 /* */ | 899 /* */ |
| 893 /* underline_position :: The position, in font units, of the */ | 900 /* underline_position :: The position, in font units, of the */ |
| 894 /* underline line for this face. It is the */ | 901 /* underline line for this face. It is the */ |
| 895 /* center of the underlining stem. Only */ | 902 /* center of the underlining stem. Only */ |
| 896 /* relevant for scalable formats. */ | 903 /* relevant for scalable formats. */ |
| (...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1098 #define FT_HAS_HORIZONTAL( face ) \ | 1105 #define FT_HAS_HORIZONTAL( face ) \ |
| 1099 ( face->face_flags & FT_FACE_FLAG_HORIZONTAL ) | 1106 ( face->face_flags & FT_FACE_FLAG_HORIZONTAL ) |
| 1100 | 1107 |
| 1101 | 1108 |
| 1102 /************************************************************************* | 1109 /************************************************************************* |
| 1103 * | 1110 * |
| 1104 * @macro: | 1111 * @macro: |
| 1105 * FT_HAS_VERTICAL( face ) | 1112 * FT_HAS_VERTICAL( face ) |
| 1106 * | 1113 * |
| 1107 * @description: | 1114 * @description: |
| 1108 * A macro that returns true whenever a face object contains vertical | 1115 * A macro that returns true whenever a face object contains real |
| 1109 * metrics. | 1116 * vertical metrics (and not only synthesized ones). |
| 1110 * | 1117 * |
| 1111 */ | 1118 */ |
| 1112 #define FT_HAS_VERTICAL( face ) \ | 1119 #define FT_HAS_VERTICAL( face ) \ |
| 1113 ( face->face_flags & FT_FACE_FLAG_VERTICAL ) | 1120 ( face->face_flags & FT_FACE_FLAG_VERTICAL ) |
| 1114 | 1121 |
| 1115 | 1122 |
| 1116 /************************************************************************* | 1123 /************************************************************************* |
| 1117 * | 1124 * |
| 1118 * @macro: | 1125 * @macro: |
| 1119 * FT_HAS_KERNING( face ) | 1126 * FT_HAS_KERNING( face ) |
| (...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1331 /* */ | 1338 /* */ |
| 1332 /* ascender :: The ascender in 26.6 fractional pixels. See */ | 1339 /* ascender :: The ascender in 26.6 fractional pixels. See */ |
| 1333 /* @FT_FaceRec for the details. */ | 1340 /* @FT_FaceRec for the details. */ |
| 1334 /* */ | 1341 /* */ |
| 1335 /* descender :: The descender in 26.6 fractional pixels. See */ | 1342 /* descender :: The descender in 26.6 fractional pixels. See */ |
| 1336 /* @FT_FaceRec for the details. */ | 1343 /* @FT_FaceRec for the details. */ |
| 1337 /* */ | 1344 /* */ |
| 1338 /* height :: The height in 26.6 fractional pixels. See */ | 1345 /* height :: The height in 26.6 fractional pixels. See */ |
| 1339 /* @FT_FaceRec for the details. */ | 1346 /* @FT_FaceRec for the details. */ |
| 1340 /* */ | 1347 /* */ |
| 1341 /* max_advance :: The maximal advance width in 26.6 fractional */ | 1348 /* max_advance :: The maximum advance width in 26.6 fractional */ |
| 1342 /* pixels. See @FT_FaceRec for the details. */ | 1349 /* pixels. See @FT_FaceRec for the details. */ |
| 1343 /* */ | 1350 /* */ |
| 1344 /* <Note> */ | 1351 /* <Note> */ |
| 1345 /* The scaling values, if relevant, are determined first during a */ | 1352 /* The scaling values, if relevant, are determined first during a */ |
| 1346 /* size changing operation. The remaining fields are then set by the */ | 1353 /* size changing operation. The remaining fields are then set by the */ |
| 1347 /* driver. For scalable formats, they are usually set to scaled */ | 1354 /* driver. For scalable formats, they are usually set to scaled */ |
| 1348 /* values of the corresponding fields in @FT_FaceRec. */ | 1355 /* values of the corresponding fields in @FT_FaceRec. */ |
| 1349 /* */ | 1356 /* */ |
| 1350 /* Note that due to glyph hinting, these values might not be exact */ | 1357 /* Note that due to glyph hinting, these values might not be exact */ |
| 1351 /* for certain fonts. Thus they must be treated as unreliable */ | 1358 /* for certain fonts. Thus they must be treated as unreliable */ |
| (...skipping 868 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2220 /* */ | 2227 /* */ |
| 2221 /* <Return> */ | 2228 /* <Return> */ |
| 2222 /* FreeType error code. 0~means success. */ | 2229 /* FreeType error code. 0~means success. */ |
| 2223 /* */ | 2230 /* */ |
| 2224 /* <Note> */ | 2231 /* <Note> */ |
| 2225 /* Although drivers may select the bitmap strike matching the */ | 2232 /* Although drivers may select the bitmap strike matching the */ |
| 2226 /* request, you should not rely on this if you intend to select a */ | 2233 /* request, you should not rely on this if you intend to select a */ |
| 2227 /* particular bitmap strike. Use @FT_Select_Size instead in that */ | 2234 /* particular bitmap strike. Use @FT_Select_Size instead in that */ |
| 2228 /* case. */ | 2235 /* case. */ |
| 2229 /* */ | 2236 /* */ |
| 2237 /* The relation between the requested size and the resulting glyph */ |
| 2238 /* size is dependent entirely on how the size is defined in the */ |
| 2239 /* source face. The font designer chooses the final size of each */ |
| 2240 /* glyph relative to this size. For more information refer to */ |
| 2241 /* `http://www.freetype.org/freetype2/docs/glyphs/glyphs-2.html' */ |
| 2242 /* */ |
| 2230 FT_EXPORT( FT_Error ) | 2243 FT_EXPORT( FT_Error ) |
| 2231 FT_Request_Size( FT_Face face, | 2244 FT_Request_Size( FT_Face face, |
| 2232 FT_Size_Request req ); | 2245 FT_Size_Request req ); |
| 2233 | 2246 |
| 2234 | 2247 |
| 2235 /*************************************************************************/ | 2248 /*************************************************************************/ |
| 2236 /* */ | 2249 /* */ |
| 2237 /* <Function> */ | 2250 /* <Function> */ |
| 2238 /* FT_Set_Char_Size */ | 2251 /* FT_Set_Char_Size */ |
| 2239 /* */ | 2252 /* */ |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2289 /* face :: A handle to the target face object. */ | 2302 /* face :: A handle to the target face object. */ |
| 2290 /* */ | 2303 /* */ |
| 2291 /* <Input> */ | 2304 /* <Input> */ |
| 2292 /* pixel_width :: The nominal width, in pixels. */ | 2305 /* pixel_width :: The nominal width, in pixels. */ |
| 2293 /* */ | 2306 /* */ |
| 2294 /* pixel_height :: The nominal height, in pixels. */ | 2307 /* pixel_height :: The nominal height, in pixels. */ |
| 2295 /* */ | 2308 /* */ |
| 2296 /* <Return> */ | 2309 /* <Return> */ |
| 2297 /* FreeType error code. 0~means success. */ | 2310 /* FreeType error code. 0~means success. */ |
| 2298 /* */ | 2311 /* */ |
| 2312 /* <Note> */ |
| 2313 /* You should not rely on the resulting glyphs matching, or being */ |
| 2314 /* constrained, to this pixel size. Refer to @FT_Request_Size to */ |
| 2315 /* understand how requested sizes relate to actual sizes. */ |
| 2316 /* */ |
| 2299 FT_EXPORT( FT_Error ) | 2317 FT_EXPORT( FT_Error ) |
| 2300 FT_Set_Pixel_Sizes( FT_Face face, | 2318 FT_Set_Pixel_Sizes( FT_Face face, |
| 2301 FT_UInt pixel_width, | 2319 FT_UInt pixel_width, |
| 2302 FT_UInt pixel_height ); | 2320 FT_UInt pixel_height ); |
| 2303 | 2321 |
| 2304 | 2322 |
| 2305 /*************************************************************************/ | 2323 /*************************************************************************/ |
| 2306 /* */ | 2324 /* */ |
| 2307 /* <Function> */ | 2325 /* <Function> */ |
| 2308 /* FT_Load_Glyph */ | 2326 /* FT_Load_Glyph */ |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2402 * scalable outline. If one is found, it is loaded from the font | 2420 * scalable outline. If one is found, it is loaded from the font |
| 2403 * file, scaled to device pixels, then `hinted' to the pixel grid | 2421 * file, scaled to device pixels, then `hinted' to the pixel grid |
| 2404 * in order to optimize it. The outline data can be accessed from | 2422 * in order to optimize it. The outline data can be accessed from |
| 2405 * the glyph slot (see note below). | 2423 * the glyph slot (see note below). |
| 2406 * | 2424 * |
| 2407 * Note that by default, the glyph loader doesn't render outlines into | 2425 * Note that by default, the glyph loader doesn't render outlines into |
| 2408 * bitmaps. The following flags are used to modify this default | 2426 * bitmaps. The following flags are used to modify this default |
| 2409 * behaviour to more specific and useful cases. | 2427 * behaviour to more specific and useful cases. |
| 2410 * | 2428 * |
| 2411 * FT_LOAD_NO_SCALE :: | 2429 * FT_LOAD_NO_SCALE :: |
| 2412 * Don't scale the outline glyph loaded, but keep it in font units. | 2430 * Don't scale the loaded outline glyph but keep it in font units. |
| 2413 * | 2431 * |
| 2414 * This flag implies @FT_LOAD_NO_HINTING and @FT_LOAD_NO_BITMAP, and | 2432 * This flag implies @FT_LOAD_NO_HINTING and @FT_LOAD_NO_BITMAP, and |
| 2415 * unsets @FT_LOAD_RENDER. | 2433 * unsets @FT_LOAD_RENDER. |
| 2416 * | 2434 * |
| 2435 * If the font is `tricky' (see @FT_FACE_FLAG_TRICKY for more), using |
| 2436 * FT_LOAD_NO_SCALE usually yields meaningless outlines because the |
| 2437 * subglyphs must be scaled and positioned with hinting instructions. |
| 2438 * This can be solved by loading the font without FT_LOAD_NO_SCALE and |
| 2439 * setting the character size to `font->units_per_EM'. |
| 2440 * |
| 2417 * FT_LOAD_NO_HINTING :: | 2441 * FT_LOAD_NO_HINTING :: |
| 2418 * Disable hinting. This generally generates `blurrier' bitmap glyph | 2442 * Disable hinting. This generally generates `blurrier' bitmap glyphs |
| 2419 * when the glyph is rendered in any of the anti-aliased modes. See | 2443 * when the glyph are rendered in any of the anti-aliased modes. See |
| 2420 * also the note below. | 2444 * also the note below. |
| 2421 * | 2445 * |
| 2422 * This flag is implied by @FT_LOAD_NO_SCALE. | 2446 * This flag is implied by @FT_LOAD_NO_SCALE. |
| 2423 * | 2447 * |
| 2424 * FT_LOAD_RENDER :: | 2448 * FT_LOAD_RENDER :: |
| 2425 * Call @FT_Render_Glyph after the glyph is loaded. By default, the | 2449 * Call @FT_Render_Glyph after the glyph is loaded. By default, the |
| 2426 * glyph is rendered in @FT_RENDER_MODE_NORMAL mode. This can be | 2450 * glyph is rendered in @FT_RENDER_MODE_NORMAL mode. This can be |
| 2427 * overridden by @FT_LOAD_TARGET_XXX or @FT_LOAD_MONOCHROME. | 2451 * overridden by @FT_LOAD_TARGET_XXX or @FT_LOAD_MONOCHROME. |
| 2428 * | 2452 * |
| 2429 * This flag is unset by @FT_LOAD_NO_SCALE. | 2453 * This flag is unset by @FT_LOAD_NO_SCALE. |
| 2430 * | 2454 * |
| 2431 * FT_LOAD_NO_BITMAP :: | 2455 * FT_LOAD_NO_BITMAP :: |
| 2432 * Ignore bitmap strikes when loading. Bitmap-only fonts ignore this | 2456 * Ignore bitmap strikes when loading. Bitmap-only fonts ignore this |
| 2433 * flag. | 2457 * flag. |
| 2434 * | 2458 * |
| 2435 * @FT_LOAD_NO_SCALE always sets this flag. | 2459 * @FT_LOAD_NO_SCALE always sets this flag. |
| 2436 * | 2460 * |
| 2437 * FT_LOAD_VERTICAL_LAYOUT :: | 2461 * FT_LOAD_VERTICAL_LAYOUT :: |
| 2438 * Load the glyph for vertical text layout. _Don't_ use it as it is | 2462 * Load the glyph for vertical text layout. In particular, the |
| 2439 * problematic currently. | 2463 * `advance' value in the @FT_GlyphSlotRec structure is set to the |
| 2464 * `vertAdvance' value of the `metrics' field. |
| 2465 * |
| 2466 * In case @FT_HAS_VERTICAL doesn't return true, you shouldn't use |
| 2467 * this flag currently. Reason is that in this case vertical metrics |
| 2468 * get synthesized, and those values are not always consistent across |
| 2469 * various font formats. |
| 2440 * | 2470 * |
| 2441 * FT_LOAD_FORCE_AUTOHINT :: | 2471 * FT_LOAD_FORCE_AUTOHINT :: |
| 2442 * Indicates that the auto-hinter is preferred over the font's native | 2472 * Indicates that the auto-hinter is preferred over the font's native |
| 2443 * hinter. See also the note below. | 2473 * hinter. See also the note below. |
| 2444 * | 2474 * |
| 2445 * FT_LOAD_CROP_BITMAP :: | 2475 * FT_LOAD_CROP_BITMAP :: |
| 2446 * Indicates that the font driver should crop the loaded bitmap glyph | 2476 * Indicates that the font driver should crop the loaded bitmap glyph |
| 2447 * (i.e., remove all space around its black bits). Not all drivers | 2477 * (i.e., remove all space around its black bits). Not all drivers |
| 2448 * implement this. | 2478 * implement this. |
| 2449 * | 2479 * |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2486 * monochrome-optimized hinting algorithm is used. | 2516 * monochrome-optimized hinting algorithm is used. |
| 2487 * | 2517 * |
| 2488 * FT_LOAD_LINEAR_DESIGN :: | 2518 * FT_LOAD_LINEAR_DESIGN :: |
| 2489 * Indicates that the `linearHoriAdvance' and `linearVertAdvance' | 2519 * Indicates that the `linearHoriAdvance' and `linearVertAdvance' |
| 2490 * fields of @FT_GlyphSlotRec should be kept in font units. See | 2520 * fields of @FT_GlyphSlotRec should be kept in font units. See |
| 2491 * @FT_GlyphSlotRec for details. | 2521 * @FT_GlyphSlotRec for details. |
| 2492 * | 2522 * |
| 2493 * FT_LOAD_NO_AUTOHINT :: | 2523 * FT_LOAD_NO_AUTOHINT :: |
| 2494 * Disable auto-hinter. See also the note below. | 2524 * Disable auto-hinter. See also the note below. |
| 2495 * | 2525 * |
| 2526 * FT_LOAD_COLOR :: |
| 2527 * This flag is used to request loading of color embedded-bitmap |
| 2528 * images. The resulting color bitmaps, if available, will have the |
| 2529 * @FT_PIXEL_MODE_BGRA format. When the flag is not used and color |
| 2530 * bitmaps are found, they will be converted to 256-level gray |
| 2531 * bitmaps transparently. Those bitmaps will be in the |
| 2532 * @FT_PIXEL_MODE_GRAY format. |
| 2533 * |
| 2496 * @note: | 2534 * @note: |
| 2497 * By default, hinting is enabled and the font's native hinter (see | 2535 * By default, hinting is enabled and the font's native hinter (see |
| 2498 * @FT_FACE_FLAG_HINTER) is preferred over the auto-hinter. You can | 2536 * @FT_FACE_FLAG_HINTER) is preferred over the auto-hinter. You can |
| 2499 * disable hinting by setting @FT_LOAD_NO_HINTING or change the | 2537 * disable hinting by setting @FT_LOAD_NO_HINTING or change the |
| 2500 * precedence by setting @FT_LOAD_FORCE_AUTOHINT. You can also set | 2538 * precedence by setting @FT_LOAD_FORCE_AUTOHINT. You can also set |
| 2501 * @FT_LOAD_NO_AUTOHINT in case you don't want the auto-hinter to be | 2539 * @FT_LOAD_NO_AUTOHINT in case you don't want the auto-hinter to be |
| 2502 * used at all. | 2540 * used at all. |
| 2503 * | 2541 * |
| 2504 * See the description of @FT_FACE_FLAG_TRICKY for a special exception | 2542 * See the description of @FT_FACE_FLAG_TRICKY for a special exception |
| 2505 * (affecting only a handful of Asian fonts). | 2543 * (affecting only a handful of Asian fonts). |
| 2506 * | 2544 * |
| 2507 * Besides deciding which hinter to use, you can also decide which | 2545 * Besides deciding which hinter to use, you can also decide which |
| 2508 * hinting algorithm to use. See @FT_LOAD_TARGET_XXX for details. | 2546 * hinting algorithm to use. See @FT_LOAD_TARGET_XXX for details. |
| 2509 * | 2547 * |
| 2548 * Note that the auto-hinter needs a valid Unicode cmap (either a native |
| 2549 * one or synthesized by FreeType) for producing correct results. If a |
| 2550 * font provides an incorrect mapping (for example, assigning the |
| 2551 * character code U+005A, LATIN CAPITAL LETTER Z, to a glyph depicting a |
| 2552 * mathematical integral sign), the auto-hinter might produce useless |
| 2553 * results. |
| 2554 * |
| 2510 */ | 2555 */ |
| 2511 #define FT_LOAD_DEFAULT 0x0 | 2556 #define FT_LOAD_DEFAULT 0x0 |
| 2512 #define FT_LOAD_NO_SCALE ( 1L << 0 ) | 2557 #define FT_LOAD_NO_SCALE ( 1L << 0 ) |
| 2513 #define FT_LOAD_NO_HINTING ( 1L << 1 ) | 2558 #define FT_LOAD_NO_HINTING ( 1L << 1 ) |
| 2514 #define FT_LOAD_RENDER ( 1L << 2 ) | 2559 #define FT_LOAD_RENDER ( 1L << 2 ) |
| 2515 #define FT_LOAD_NO_BITMAP ( 1L << 3 ) | 2560 #define FT_LOAD_NO_BITMAP ( 1L << 3 ) |
| 2516 #define FT_LOAD_VERTICAL_LAYOUT ( 1L << 4 ) | 2561 #define FT_LOAD_VERTICAL_LAYOUT ( 1L << 4 ) |
| 2517 #define FT_LOAD_FORCE_AUTOHINT ( 1L << 5 ) | 2562 #define FT_LOAD_FORCE_AUTOHINT ( 1L << 5 ) |
| 2518 #define FT_LOAD_CROP_BITMAP ( 1L << 6 ) | 2563 #define FT_LOAD_CROP_BITMAP ( 1L << 6 ) |
| 2519 #define FT_LOAD_PEDANTIC ( 1L << 7 ) | 2564 #define FT_LOAD_PEDANTIC ( 1L << 7 ) |
| 2520 #define FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH ( 1L << 9 ) | 2565 #define FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH ( 1L << 9 ) |
| 2521 #define FT_LOAD_NO_RECURSE ( 1L << 10 ) | 2566 #define FT_LOAD_NO_RECURSE ( 1L << 10 ) |
| 2522 #define FT_LOAD_IGNORE_TRANSFORM ( 1L << 11 ) | 2567 #define FT_LOAD_IGNORE_TRANSFORM ( 1L << 11 ) |
| 2523 #define FT_LOAD_MONOCHROME ( 1L << 12 ) | 2568 #define FT_LOAD_MONOCHROME ( 1L << 12 ) |
| 2524 #define FT_LOAD_LINEAR_DESIGN ( 1L << 13 ) | 2569 #define FT_LOAD_LINEAR_DESIGN ( 1L << 13 ) |
| 2525 #define FT_LOAD_NO_AUTOHINT ( 1L << 15 ) | 2570 #define FT_LOAD_NO_AUTOHINT ( 1L << 15 ) |
| 2571 /* Bits 16..19 are used by `FT_LOAD_TARGET_' */ |
| 2572 #define FT_LOAD_COLOR ( 1L << 20 ) |
| 2526 | 2573 |
| 2527 /* */ | 2574 /* */ |
| 2528 | 2575 |
| 2529 /* used internally only by certain font drivers! */ | 2576 /* used internally only by certain font drivers! */ |
| 2530 #define FT_LOAD_ADVANCE_ONLY ( 1L << 8 ) | 2577 #define FT_LOAD_ADVANCE_ONLY ( 1L << 8 ) |
| 2531 #define FT_LOAD_SBITS_ONLY ( 1L << 14 ) | 2578 #define FT_LOAD_SBITS_ONLY ( 1L << 14 ) |
| 2532 | 2579 |
| 2533 | 2580 |
| 2534 /************************************************************************** | 2581 /************************************************************************** |
| 2535 * | 2582 * |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2573 * FT_LOAD_TARGET_LCD_V :: | 2620 * FT_LOAD_TARGET_LCD_V :: |
| 2574 * A variant of @FT_LOAD_TARGET_NORMAL optimized for vertically | 2621 * A variant of @FT_LOAD_TARGET_NORMAL optimized for vertically |
| 2575 * decimated LCD displays. | 2622 * decimated LCD displays. |
| 2576 * | 2623 * |
| 2577 * @note: | 2624 * @note: |
| 2578 * You should use only _one_ of the FT_LOAD_TARGET_XXX values in your | 2625 * You should use only _one_ of the FT_LOAD_TARGET_XXX values in your |
| 2579 * `load_flags'. They can't be ORed. | 2626 * `load_flags'. They can't be ORed. |
| 2580 * | 2627 * |
| 2581 * If @FT_LOAD_RENDER is also set, the glyph is rendered in the | 2628 * If @FT_LOAD_RENDER is also set, the glyph is rendered in the |
| 2582 * corresponding mode (i.e., the mode which matches the used algorithm | 2629 * corresponding mode (i.e., the mode which matches the used algorithm |
| 2583 * best) unless @FT_LOAD_MONOCHROME is set. | 2630 * best). An exeption is FT_LOAD_TARGET_MONO since it implies |
| 2631 * @FT_LOAD_MONOCHROME. |
| 2584 * | 2632 * |
| 2585 * You can use a hinting algorithm that doesn't correspond to the same | 2633 * You can use a hinting algorithm that doesn't correspond to the same |
| 2586 * rendering mode. As an example, it is possible to use the `light' | 2634 * rendering mode. As an example, it is possible to use the `light' |
| 2587 * hinting algorithm and have the results rendered in horizontal LCD | 2635 * hinting algorithm and have the results rendered in horizontal LCD |
| 2588 * pixel mode, with code like | 2636 * pixel mode, with code like |
| 2589 * | 2637 * |
| 2590 * { | 2638 * { |
| 2591 * FT_Load_Glyph( face, glyph_index, | 2639 * FT_Load_Glyph( face, glyph_index, |
| 2592 * load_flags | FT_LOAD_TARGET_LIGHT ); | 2640 * load_flags | FT_LOAD_TARGET_LIGHT ); |
| 2593 * | 2641 * |
| (...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2915 /* */ | 2963 /* */ |
| 2916 /* <Description> */ | 2964 /* <Description> */ |
| 2917 /* Retrieve the ASCII name of a given glyph in a face. This only */ | 2965 /* Retrieve the ASCII name of a given glyph in a face. This only */ |
| 2918 /* works for those faces where @FT_HAS_GLYPH_NAMES(face) returns~1. */ | 2966 /* works for those faces where @FT_HAS_GLYPH_NAMES(face) returns~1. */ |
| 2919 /* */ | 2967 /* */ |
| 2920 /* <Input> */ | 2968 /* <Input> */ |
| 2921 /* face :: A handle to a source face object. */ | 2969 /* face :: A handle to a source face object. */ |
| 2922 /* */ | 2970 /* */ |
| 2923 /* glyph_index :: The glyph index. */ | 2971 /* glyph_index :: The glyph index. */ |
| 2924 /* */ | 2972 /* */ |
| 2925 /* buffer_max :: The maximal number of bytes available in the */ | 2973 /* buffer_max :: The maximum number of bytes available in the */ |
| 2926 /* buffer. */ | 2974 /* buffer. */ |
| 2927 /* */ | 2975 /* */ |
| 2928 /* <Output> */ | 2976 /* <Output> */ |
| 2929 /* buffer :: A pointer to a target buffer where the name is */ | 2977 /* buffer :: A pointer to a target buffer where the name is */ |
| 2930 /* copied to. */ | 2978 /* copied to. */ |
| 2931 /* */ | 2979 /* */ |
| 2932 /* <Return> */ | 2980 /* <Return> */ |
| 2933 /* FreeType error code. 0~means success. */ | 2981 /* FreeType error code. 0~means success. */ |
| 2934 /* */ | 2982 /* */ |
| 2935 /* <Note> */ | 2983 /* <Note> */ |
| (...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3074 /* face :: A handle to the source face object. */ | 3122 /* face :: A handle to the source face object. */ |
| 3075 /* */ | 3123 /* */ |
| 3076 /* charcode :: The character code. */ | 3124 /* charcode :: The character code. */ |
| 3077 /* */ | 3125 /* */ |
| 3078 /* <Return> */ | 3126 /* <Return> */ |
| 3079 /* The glyph index. 0~means `undefined character code'. */ | 3127 /* The glyph index. 0~means `undefined character code'. */ |
| 3080 /* */ | 3128 /* */ |
| 3081 /* <Note> */ | 3129 /* <Note> */ |
| 3082 /* If you use FreeType to manipulate the contents of font files */ | 3130 /* If you use FreeType to manipulate the contents of font files */ |
| 3083 /* directly, be aware that the glyph index returned by this function */ | 3131 /* directly, be aware that the glyph index returned by this function */ |
| 3084 /* doesn't always correspond to the internal indices used within */ | 3132 /* doesn't always correspond to the internal indices used within the */ |
| 3085 /* the file. This is done to ensure that value~0 always corresponds */ | 3133 /* file. This is done to ensure that value~0 always corresponds to */ |
| 3086 /* to the `missing glyph'. */ | 3134 /* the `missing glyph'. If the first glyph is not named `.notdef', */ |
| 3135 /* then for Type~1 and Type~42 fonts, `.notdef' will be moved into */ |
| 3136 /* the glyph ID~0 position, and whatever was there will be moved to */ |
| 3137 /* the position `.notdef' had. For Type~1 fonts, if there is no */ |
| 3138 /* `.notdef' glyph at all, then one will be created at index~0 and */ |
| 3139 /* whatever was there will be moved to the last index -- Type~42 */ |
| 3140 /* fonts are considered invalid under this condition. */ |
| 3087 /* */ | 3141 /* */ |
| 3088 FT_EXPORT( FT_UInt ) | 3142 FT_EXPORT( FT_UInt ) |
| 3089 FT_Get_Char_Index( FT_Face face, | 3143 FT_Get_Char_Index( FT_Face face, |
| 3090 FT_ULong charcode ); | 3144 FT_ULong charcode ); |
| 3091 | 3145 |
| 3092 | 3146 |
| 3093 /*************************************************************************/ | 3147 /*************************************************************************/ |
| 3094 /* */ | 3148 /* */ |
| 3095 /* <Function> */ | 3149 /* <Function> */ |
| 3096 /* FT_Get_First_Char */ | 3150 /* FT_Get_First_Char */ |
| (...skipping 279 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3376 /* <Description> */ | 3430 /* <Description> */ |
| 3377 /* Many CJK characters have variant forms. They are a sort of grey */ | 3431 /* Many CJK characters have variant forms. They are a sort of grey */ |
| 3378 /* area somewhere between being totally irrelevant and semantically */ | 3432 /* area somewhere between being totally irrelevant and semantically */ |
| 3379 /* distinct; for this reason, the Unicode consortium decided to */ | 3433 /* distinct; for this reason, the Unicode consortium decided to */ |
| 3380 /* introduce Ideographic Variation Sequences (IVS), consisting of a */ | 3434 /* introduce Ideographic Variation Sequences (IVS), consisting of a */ |
| 3381 /* Unicode base character and one of 240 variant selectors */ | 3435 /* Unicode base character and one of 240 variant selectors */ |
| 3382 /* (U+E0100-U+E01EF), instead of further extending the already huge */ | 3436 /* (U+E0100-U+E01EF), instead of further extending the already huge */ |
| 3383 /* code range for CJK characters. */ | 3437 /* code range for CJK characters. */ |
| 3384 /* */ | 3438 /* */ |
| 3385 /* An IVS is registered and unique; for further details please refer */ | 3439 /* An IVS is registered and unique; for further details please refer */ |
| 3386 /* to Unicode Technical Report #37, the Ideographic Variation */ | 3440 /* to Unicode Technical Standard #37, the Ideographic Variation */ |
| 3387 /* Database. To date (October 2007), the character with the most */ | 3441 /* Database: */ |
| 3388 /* variants is U+908A, having 8~such IVS. */ | 3442 /* */ |
| 3443 /* http://www.unicode.org/reports/tr37/ */ |
| 3444 /* */ |
| 3445 /* To date (November 2012), the character with the most variants is */ |
| 3446 /* U+9089, having 31 such IVS. */ |
| 3389 /* */ | 3447 /* */ |
| 3390 /* Adobe and MS decided to support IVS with a new cmap subtable */ | 3448 /* Adobe and MS decided to support IVS with a new cmap subtable */ |
| 3391 /* (format~14). It is an odd subtable because it is not a mapping of */ | 3449 /* (format~14). It is an odd subtable because it is not a mapping of */ |
| 3392 /* input code points to glyphs, but contains lists of all variants */ | 3450 /* input code points to glyphs, but contains lists of all variants */ |
| 3393 /* supported by the font. */ | 3451 /* supported by the font. */ |
| 3394 /* */ | 3452 /* */ |
| 3395 /* A variant may be either `default' or `non-default'. A default */ | 3453 /* A variant may be either `default' or `non-default'. A default */ |
| 3396 /* variant is the one you will get for that code point if you look it */ | 3454 /* variant is the one you will get for that code point if you look it */ |
| 3397 /* up in the standard Unicode cmap. A non-default variant is a */ | 3455 /* up in the standard Unicode cmap. A non-default variant is a */ |
| 3398 /* different glyph. */ | 3456 /* different glyph. */ |
| (...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3607 /*************************************************************************/ | 3665 /*************************************************************************/ |
| 3608 | 3666 |
| 3609 | 3667 |
| 3610 /*************************************************************************/ | 3668 /*************************************************************************/ |
| 3611 /* */ | 3669 /* */ |
| 3612 /* <Function> */ | 3670 /* <Function> */ |
| 3613 /* FT_MulDiv */ | 3671 /* FT_MulDiv */ |
| 3614 /* */ | 3672 /* */ |
| 3615 /* <Description> */ | 3673 /* <Description> */ |
| 3616 /* A very simple function used to perform the computation `(a*b)/c' */ | 3674 /* A very simple function used to perform the computation `(a*b)/c' */ |
| 3617 /* with maximal accuracy (it uses a 64-bit intermediate integer */ | 3675 /* with maximum accuracy (it uses a 64-bit intermediate integer */ |
| 3618 /* whenever necessary). */ | 3676 /* whenever necessary). */ |
| 3619 /* */ | 3677 /* */ |
| 3620 /* This function isn't necessarily as fast as some processor specific */ | 3678 /* This function isn't necessarily as fast as some processor specific */ |
| 3621 /* operations, but is at least completely portable. */ | 3679 /* operations, but is at least completely portable. */ |
| 3622 /* */ | 3680 /* */ |
| 3623 /* <Input> */ | 3681 /* <Input> */ |
| 3624 /* a :: The first multiplier. */ | 3682 /* a :: The first multiplier. */ |
| 3625 /* b :: The second multiplier. */ | 3683 /* b :: The second multiplier. */ |
| 3626 /* c :: The divisor. */ | 3684 /* c :: The divisor. */ |
| 3627 /* */ | 3685 /* */ |
| (...skipping 14 matching lines...) Expand all Loading... |
| 3642 /* hiding the internal `FT_MULFIX_INLINED' macro. */ | 3700 /* hiding the internal `FT_MULFIX_INLINED' macro. */ |
| 3643 | 3701 |
| 3644 #if 0 | 3702 #if 0 |
| 3645 /*************************************************************************/ | 3703 /*************************************************************************/ |
| 3646 /* */ | 3704 /* */ |
| 3647 /* <Function> */ | 3705 /* <Function> */ |
| 3648 /* FT_MulFix */ | 3706 /* FT_MulFix */ |
| 3649 /* */ | 3707 /* */ |
| 3650 /* <Description> */ | 3708 /* <Description> */ |
| 3651 /* A very simple function used to perform the computation */ | 3709 /* A very simple function used to perform the computation */ |
| 3652 /* `(a*b)/0x10000' with maximal accuracy. Most of the time this is */ | 3710 /* `(a*b)/0x10000' with maximum accuracy. Most of the time this is */ |
| 3653 /* used to multiply a given value by a 16.16 fixed float factor. */ | 3711 /* used to multiply a given value by a 16.16 fixed-point factor. */ |
| 3654 /* */ | 3712 /* */ |
| 3655 /* <Input> */ | 3713 /* <Input> */ |
| 3656 /* a :: The first multiplier. */ | 3714 /* a :: The first multiplier. */ |
| 3657 /* b :: The second multiplier. Use a 16.16 factor here whenever */ | 3715 /* b :: The second multiplier. Use a 16.16 factor here whenever */ |
| 3658 /* possible (see note below). */ | 3716 /* possible (see note below). */ |
| 3659 /* */ | 3717 /* */ |
| 3660 /* <Return> */ | 3718 /* <Return> */ |
| 3661 /* The result of `(a*b)/0x10000'. */ | 3719 /* The result of `(a*b)/0x10000'. */ |
| 3662 /* */ | 3720 /* */ |
| 3663 /* <Note> */ | 3721 /* <Note> */ |
| (...skipping 23 matching lines...) Expand all Loading... |
| 3687 #endif | 3745 #endif |
| 3688 | 3746 |
| 3689 | 3747 |
| 3690 /*************************************************************************/ | 3748 /*************************************************************************/ |
| 3691 /* */ | 3749 /* */ |
| 3692 /* <Function> */ | 3750 /* <Function> */ |
| 3693 /* FT_DivFix */ | 3751 /* FT_DivFix */ |
| 3694 /* */ | 3752 /* */ |
| 3695 /* <Description> */ | 3753 /* <Description> */ |
| 3696 /* A very simple function used to perform the computation */ | 3754 /* A very simple function used to perform the computation */ |
| 3697 /* `(a*0x10000)/b' with maximal accuracy. Most of the time, this is */ | 3755 /* `(a*0x10000)/b' with maximum accuracy. Most of the time, this is */ |
| 3698 /* used to divide a given value by a 16.16 fixed float factor. */ | 3756 /* used to divide a given value by a 16.16 fixed-point factor. */ |
| 3699 /* */ | 3757 /* */ |
| 3700 /* <Input> */ | 3758 /* <Input> */ |
| 3701 /* a :: The first multiplier. */ | 3759 /* a :: The first multiplier. */ |
| 3702 /* b :: The second multiplier. Use a 16.16 factor here whenever */ | 3760 /* b :: The second multiplier. Use a 16.16 factor here whenever */ |
| 3703 /* possible (see note below). */ | 3761 /* possible (see note below). */ |
| 3704 /* */ | 3762 /* */ |
| 3705 /* <Return> */ | 3763 /* <Return> */ |
| 3706 /* The result of `(a*0x10000)/b'. */ | 3764 /* The result of `(a*0x10000)/b'. */ |
| 3707 /* */ | 3765 /* */ |
| 3708 /* <Note> */ | 3766 /* <Note> */ |
| (...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3827 * FREETYPE_PATCH :: The patch level. | 3885 * FREETYPE_PATCH :: The patch level. |
| 3828 * | 3886 * |
| 3829 * @note: | 3887 * @note: |
| 3830 * The version number of FreeType if built as a dynamic link library | 3888 * The version number of FreeType if built as a dynamic link library |
| 3831 * with the `libtool' package is _not_ controlled by these three | 3889 * with the `libtool' package is _not_ controlled by these three |
| 3832 * macros. | 3890 * macros. |
| 3833 * | 3891 * |
| 3834 */ | 3892 */ |
| 3835 #define FREETYPE_MAJOR 2 | 3893 #define FREETYPE_MAJOR 2 |
| 3836 #define FREETYPE_MINOR 4 | 3894 #define FREETYPE_MINOR 4 |
| 3837 #define FREETYPE_PATCH 9 | 3895 #define FREETYPE_PATCH 12 |
| 3838 | 3896 |
| 3839 | 3897 |
| 3840 /*************************************************************************/ | 3898 /*************************************************************************/ |
| 3841 /* */ | 3899 /* */ |
| 3842 /* <Function> */ | 3900 /* <Function> */ |
| 3843 /* FT_Library_Version */ | 3901 /* FT_Library_Version */ |
| 3844 /* */ | 3902 /* */ |
| 3845 /* <Description> */ | 3903 /* <Description> */ |
| 3846 /* Return the version of the FreeType library being used. This is */ | 3904 /* Return the version of the FreeType library being used. This is */ |
| 3847 /* useful when dynamically linking to the library, since one cannot */ | 3905 /* useful when dynamically linking to the library, since one cannot */ |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3936 | 3994 |
| 3937 /* */ | 3995 /* */ |
| 3938 | 3996 |
| 3939 | 3997 |
| 3940 FT_END_HEADER | 3998 FT_END_HEADER |
| 3941 | 3999 |
| 3942 #endif /* __FREETYPE_H__ */ | 4000 #endif /* __FREETYPE_H__ */ |
| 3943 | 4001 |
| 3944 | 4002 |
| 3945 /* END */ | 4003 /* END */ |
| OLD | NEW |