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

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

Issue 23555005: Update freetype to the latest version of Android external/freetype (Closed) Base URL: https://chromium.googlesource.com/chromium/src/third_party/freetype.git@master
Patch Set: Created 7 years, 3 months 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/config/ftstdlib.h ('k') | include/freetype/fterrdef.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 /* 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-2011 by */ 7 /* Copyright 1996-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 933 matching lines...) Expand 10 before | Expand all | Expand 10 after
951 FT_CharMap charmap; 951 FT_CharMap charmap;
952 952
953 /*@private begin */ 953 /*@private begin */
954 954
955 FT_Driver driver; 955 FT_Driver driver;
956 FT_Memory memory; 956 FT_Memory memory;
957 FT_Stream stream; 957 FT_Stream stream;
958 958
959 FT_ListRec sizes_list; 959 FT_ListRec sizes_list;
960 960
961 FT_Generic autohint; 961 FT_Generic autohint; /* face-specific auto-hinter data */
962 void* extensions; 962 void* extensions; /* unused */
963 963
964 FT_Face_Internal internal; 964 FT_Face_Internal internal;
965 965
966 /*@private end */ 966 /*@private end */
967 967
968 } FT_FaceRec; 968 } FT_FaceRec;
969 969
970 970
971 /*************************************************************************/ 971 /*************************************************************************/
972 /* */ 972 /* */
(...skipping 688 matching lines...) Expand 10 before | Expand all | Expand 10 after
1661 /* alibrary :: A handle to a new library object. */ 1661 /* alibrary :: A handle to a new library object. */
1662 /* */ 1662 /* */
1663 /* <Return> */ 1663 /* <Return> */
1664 /* FreeType error code. 0~means success. */ 1664 /* FreeType error code. 0~means success. */
1665 /* */ 1665 /* */
1666 /* <Note> */ 1666 /* <Note> */
1667 /* In case you want to provide your own memory allocating routines, */ 1667 /* In case you want to provide your own memory allocating routines, */
1668 /* use @FT_New_Library instead, followed by a call to */ 1668 /* use @FT_New_Library instead, followed by a call to */
1669 /* @FT_Add_Default_Modules (or a series of calls to @FT_Add_Module). */ 1669 /* @FT_Add_Default_Modules (or a series of calls to @FT_Add_Module). */
1670 /* */ 1670 /* */
1671 /* For multi-threading applications each thread should have its own */
1672 /* FT_Library object. */
1673 /* */
1671 FT_EXPORT( FT_Error ) 1674 FT_EXPORT( FT_Error )
1672 FT_Init_FreeType( FT_Library *alibrary ); 1675 FT_Init_FreeType( FT_Library *alibrary );
1673 1676
1674 1677
1675 /*************************************************************************/ 1678 /*************************************************************************/
1676 /* */ 1679 /* */
1677 /* <Function> */ 1680 /* <Function> */
1678 /* FT_Done_FreeType */ 1681 /* FT_Done_FreeType */
1679 /* */ 1682 /* */
1680 /* <Description> */ 1683 /* <Description> */
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after
1946 /* if the font format is recognized, or non-zero otherwise; */ 1949 /* if the font format is recognized, or non-zero otherwise; */
1947 /* the function returns a more or less empty face handle in `*aface' */ 1950 /* the function returns a more or less empty face handle in `*aface' */
1948 /* (if `aface' isn't NULL). The only useful field in this special */ 1951 /* (if `aface' isn't NULL). The only useful field in this special */
1949 /* case is `face->num_faces' which gives the number of faces within */ 1952 /* case is `face->num_faces' which gives the number of faces within */
1950 /* the font file. After examination, the returned @FT_Face structure */ 1953 /* the font file. After examination, the returned @FT_Face structure */
1951 /* should be deallocated with a call to @FT_Done_Face. */ 1954 /* should be deallocated with a call to @FT_Done_Face. */
1952 /* */ 1955 /* */
1953 /* Each new face object created with this function also owns a */ 1956 /* Each new face object created with this function also owns a */
1954 /* default @FT_Size object, accessible as `face->size'. */ 1957 /* default @FT_Size object, accessible as `face->size'. */
1955 /* */ 1958 /* */
1959 /* One @FT_Library instance can have multiple face objects, this is, */
1960 /* @FT_Open_Face and its siblings can be called multiple times using */
1961 /* the same `library' argument. */
1962 /* */
1956 /* See the discussion of reference counters in the description of */ 1963 /* See the discussion of reference counters in the description of */
1957 /* @FT_Reference_Face. */ 1964 /* @FT_Reference_Face. */
1958 /* */ 1965 /* */
1959 FT_EXPORT( FT_Error ) 1966 FT_EXPORT( FT_Error )
1960 FT_Open_Face( FT_Library library, 1967 FT_Open_Face( FT_Library library,
1961 const FT_Open_Args* args, 1968 const FT_Open_Args* args,
1962 FT_Long face_index, 1969 FT_Long face_index,
1963 FT_Face *aface ); 1970 FT_Face *aface );
1964 1971
1965 1972
(...skipping 472 matching lines...) Expand 10 before | Expand all | Expand 10 after
2438 * FT_LOAD_CROP_BITMAP :: 2445 * FT_LOAD_CROP_BITMAP ::
2439 * Indicates that the font driver should crop the loaded bitmap glyph 2446 * Indicates that the font driver should crop the loaded bitmap glyph
2440 * (i.e., remove all space around its black bits). Not all drivers 2447 * (i.e., remove all space around its black bits). Not all drivers
2441 * implement this. 2448 * implement this.
2442 * 2449 *
2443 * FT_LOAD_PEDANTIC :: 2450 * FT_LOAD_PEDANTIC ::
2444 * Indicates that the font driver should perform pedantic verifications 2451 * Indicates that the font driver should perform pedantic verifications
2445 * during glyph loading. This is mostly used to detect broken glyphs 2452 * during glyph loading. This is mostly used to detect broken glyphs
2446 * in fonts. By default, FreeType tries to handle broken fonts also. 2453 * in fonts. By default, FreeType tries to handle broken fonts also.
2447 * 2454 *
2455 * In particular, errors from the TrueType bytecode engine are not
2456 * passed to the application if this flag is not set; this might
2457 * result in partially hinted or distorted glyphs in case a glyph's
2458 * bytecode is buggy.
2459 *
2448 * FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH :: 2460 * FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH ::
2449 * Ignored. Deprecated. 2461 * Ignored. Deprecated.
2450 * 2462 *
2451 * FT_LOAD_NO_RECURSE :: 2463 * FT_LOAD_NO_RECURSE ::
2452 * This flag is only used internally. It merely indicates that the 2464 * This flag is only used internally. It merely indicates that the
2453 * font driver should not load composite glyphs recursively. Instead, 2465 * font driver should not load composite glyphs recursively. Instead,
2454 * it should set the `num_subglyph' and `subglyphs' values of the 2466 * it should set the `num_subglyph' and `subglyphs' values of the
2455 * glyph slot accordingly, and set `glyph->format' to 2467 * glyph slot accordingly, and set `glyph->format' to
2456 * @FT_GLYPH_FORMAT_COMPOSITE. 2468 * @FT_GLYPH_FORMAT_COMPOSITE.
2457 * 2469 *
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
2490 * used at all. 2502 * used at all.
2491 * 2503 *
2492 * See the description of @FT_FACE_FLAG_TRICKY for a special exception 2504 * See the description of @FT_FACE_FLAG_TRICKY for a special exception
2493 * (affecting only a handful of Asian fonts). 2505 * (affecting only a handful of Asian fonts).
2494 * 2506 *
2495 * Besides deciding which hinter to use, you can also decide which 2507 * Besides deciding which hinter to use, you can also decide which
2496 * hinting algorithm to use. See @FT_LOAD_TARGET_XXX for details. 2508 * hinting algorithm to use. See @FT_LOAD_TARGET_XXX for details.
2497 * 2509 *
2498 */ 2510 */
2499 #define FT_LOAD_DEFAULT 0x0 2511 #define FT_LOAD_DEFAULT 0x0
2500 #define FT_LOAD_NO_SCALE 0x1 2512 #define FT_LOAD_NO_SCALE ( 1L << 0 )
2501 #define FT_LOAD_NO_HINTING 0x2 2513 #define FT_LOAD_NO_HINTING ( 1L << 1 )
2502 #define FT_LOAD_RENDER 0x4 2514 #define FT_LOAD_RENDER ( 1L << 2 )
2503 #define FT_LOAD_NO_BITMAP 0x8 2515 #define FT_LOAD_NO_BITMAP ( 1L << 3 )
2504 #define FT_LOAD_VERTICAL_LAYOUT 0x10 2516 #define FT_LOAD_VERTICAL_LAYOUT ( 1L << 4 )
2505 #define FT_LOAD_FORCE_AUTOHINT 0x20 2517 #define FT_LOAD_FORCE_AUTOHINT ( 1L << 5 )
2506 #define FT_LOAD_CROP_BITMAP 0x40 2518 #define FT_LOAD_CROP_BITMAP ( 1L << 6 )
2507 #define FT_LOAD_PEDANTIC 0x80 2519 #define FT_LOAD_PEDANTIC ( 1L << 7 )
2508 #define FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH 0x200 2520 #define FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH ( 1L << 9 )
2509 #define FT_LOAD_NO_RECURSE 0x400 2521 #define FT_LOAD_NO_RECURSE ( 1L << 10 )
2510 #define FT_LOAD_IGNORE_TRANSFORM 0x800 2522 #define FT_LOAD_IGNORE_TRANSFORM ( 1L << 11 )
2511 #define FT_LOAD_MONOCHROME 0x1000 2523 #define FT_LOAD_MONOCHROME ( 1L << 12 )
2512 #define FT_LOAD_LINEAR_DESIGN 0x2000 2524 #define FT_LOAD_LINEAR_DESIGN ( 1L << 13 )
2513 #define FT_LOAD_NO_AUTOHINT 0x8000U 2525 #define FT_LOAD_NO_AUTOHINT ( 1L << 15 )
2514 2526
2515 /* */ 2527 /* */
2516 2528
2517 /* used internally only by certain font drivers! */ 2529 /* used internally only by certain font drivers! */
2518 #define FT_LOAD_ADVANCE_ONLY 0x100 2530 #define FT_LOAD_ADVANCE_ONLY ( 1L << 8 )
2519 #define FT_LOAD_SBITS_ONLY 0x4000 2531 #define FT_LOAD_SBITS_ONLY ( 1L << 14 )
2520 2532
2521 2533
2522 /************************************************************************** 2534 /**************************************************************************
2523 * 2535 *
2524 * @enum: 2536 * @enum:
2525 * FT_LOAD_TARGET_XXX 2537 * FT_LOAD_TARGET_XXX
2526 * 2538 *
2527 * @description: 2539 * @description:
2528 * A list of values that are used to select a specific hinting algorithm 2540 * A list of values that are used to select a specific hinting algorithm
2529 * to use by the hinter. You should OR one of these values to your 2541 * to use by the hinter. You should OR one of these values to your
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
2862 /* FT_Get_Track_Kerning */ 2874 /* FT_Get_Track_Kerning */
2863 /* */ 2875 /* */
2864 /* <Description> */ 2876 /* <Description> */
2865 /* Return the track kerning for a given face object at a given size. */ 2877 /* Return the track kerning for a given face object at a given size. */
2866 /* */ 2878 /* */
2867 /* <Input> */ 2879 /* <Input> */
2868 /* face :: A handle to a source face object. */ 2880 /* face :: A handle to a source face object. */
2869 /* */ 2881 /* */
2870 /* point_size :: The point size in 16.16 fractional points. */ 2882 /* point_size :: The point size in 16.16 fractional points. */
2871 /* */ 2883 /* */
2872 /* degree :: The degree of tightness. */ 2884 /* degree :: The degree of tightness. Increasingly negative */
2885 /* values represent tighter track kerning, while */
2886 /* increasingly positive values represent looser track */
2887 /* kerning. Value zero means no track kerning. */
2873 /* */ 2888 /* */
2874 /* <Output> */ 2889 /* <Output> */
2875 /* akerning :: The kerning in 16.16 fractional points. */ 2890 /* akerning :: The kerning in 16.16 fractional points, to be */
2891 /* uniformly applied between all glyphs. */
2876 /* */ 2892 /* */
2877 /* <Return> */ 2893 /* <Return> */
2878 /* FreeType error code. 0~means success. */ 2894 /* FreeType error code. 0~means success. */
2879 /* */ 2895 /* */
2896 /* <Note> */
2897 /* Currently, only the Type~1 font driver supports track kerning, */
2898 /* using data from AFM files (if attached with @FT_Attach_File or */
2899 /* @FT_Attach_Stream). */
2900 /* */
2901 /* Only very few AFM files come with track kerning data; please refer */
2902 /* to the Adobe's AFM specification for more details. */
2903 /* */
2880 FT_EXPORT( FT_Error ) 2904 FT_EXPORT( FT_Error )
2881 FT_Get_Track_Kerning( FT_Face face, 2905 FT_Get_Track_Kerning( FT_Face face,
2882 FT_Fixed point_size, 2906 FT_Fixed point_size,
2883 FT_Int degree, 2907 FT_Int degree,
2884 FT_Fixed* akerning ); 2908 FT_Fixed* akerning );
2885 2909
2886 2910
2887 /*************************************************************************/ 2911 /*************************************************************************/
2888 /* */ 2912 /* */
2889 /* <Function> */ 2913 /* <Function> */
(...skipping 913 matching lines...) Expand 10 before | Expand all | Expand 10 after
3803 * FREETYPE_PATCH :: The patch level. 3827 * FREETYPE_PATCH :: The patch level.
3804 * 3828 *
3805 * @note: 3829 * @note:
3806 * The version number of FreeType if built as a dynamic link library 3830 * The version number of FreeType if built as a dynamic link library
3807 * with the `libtool' package is _not_ controlled by these three 3831 * with the `libtool' package is _not_ controlled by these three
3808 * macros. 3832 * macros.
3809 * 3833 *
3810 */ 3834 */
3811 #define FREETYPE_MAJOR 2 3835 #define FREETYPE_MAJOR 2
3812 #define FREETYPE_MINOR 4 3836 #define FREETYPE_MINOR 4
3813 #define FREETYPE_PATCH 6 3837 #define FREETYPE_PATCH 9
3814 3838
3815 3839
3816 /*************************************************************************/ 3840 /*************************************************************************/
3817 /* */ 3841 /* */
3818 /* <Function> */ 3842 /* <Function> */
3819 /* FT_Library_Version */ 3843 /* FT_Library_Version */
3820 /* */ 3844 /* */
3821 /* <Description> */ 3845 /* <Description> */
3822 /* Return the version of the FreeType library being used. This is */ 3846 /* Return the version of the FreeType library being used. This is */
3823 /* useful when dynamically linking to the library, since one cannot */ 3847 /* useful when dynamically linking to the library, since one cannot */
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
3912 3936
3913 /* */ 3937 /* */
3914 3938
3915 3939
3916 FT_END_HEADER 3940 FT_END_HEADER
3917 3941
3918 #endif /* __FREETYPE_H__ */ 3942 #endif /* __FREETYPE_H__ */
3919 3943
3920 3944
3921 /* END */ 3945 /* END */
OLDNEW
« no previous file with comments | « include/freetype/config/ftstdlib.h ('k') | include/freetype/fterrdef.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698