| Index: include/freetype/freetype.h
|
| diff --git a/include/freetype/freetype.h b/include/freetype/freetype.h
|
| index 660b3032d488657cb0e58eb375b03657b16fcd31..63c291af1270c8a1c4ba40388b000f0710ea38c6 100644
|
| --- a/include/freetype/freetype.h
|
| +++ b/include/freetype/freetype.h
|
| @@ -4,7 +4,7 @@
|
| /* */
|
| /* FreeType high-level API and common types (specification only). */
|
| /* */
|
| -/* Copyright 1996-2011 by */
|
| +/* Copyright 1996-2012 by */
|
| /* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
| /* */
|
| /* This file is part of the FreeType project, and may only be used, */
|
| @@ -958,8 +958,8 @@ FT_BEGIN_HEADER
|
|
|
| FT_ListRec sizes_list;
|
|
|
| - FT_Generic autohint;
|
| - void* extensions;
|
| + FT_Generic autohint; /* face-specific auto-hinter data */
|
| + void* extensions; /* unused */
|
|
|
| FT_Face_Internal internal;
|
|
|
| @@ -1668,6 +1668,9 @@ FT_BEGIN_HEADER
|
| /* use @FT_New_Library instead, followed by a call to */
|
| /* @FT_Add_Default_Modules (or a series of calls to @FT_Add_Module). */
|
| /* */
|
| + /* For multi-threading applications each thread should have its own */
|
| + /* FT_Library object. */
|
| + /* */
|
| FT_EXPORT( FT_Error )
|
| FT_Init_FreeType( FT_Library *alibrary );
|
|
|
| @@ -1953,6 +1956,10 @@ FT_BEGIN_HEADER
|
| /* Each new face object created with this function also owns a */
|
| /* default @FT_Size object, accessible as `face->size'. */
|
| /* */
|
| + /* One @FT_Library instance can have multiple face objects, this is, */
|
| + /* @FT_Open_Face and its siblings can be called multiple times using */
|
| + /* the same `library' argument. */
|
| + /* */
|
| /* See the discussion of reference counters in the description of */
|
| /* @FT_Reference_Face. */
|
| /* */
|
| @@ -2445,6 +2452,11 @@ FT_BEGIN_HEADER
|
| * during glyph loading. This is mostly used to detect broken glyphs
|
| * in fonts. By default, FreeType tries to handle broken fonts also.
|
| *
|
| + * In particular, errors from the TrueType bytecode engine are not
|
| + * passed to the application if this flag is not set; this might
|
| + * result in partially hinted or distorted glyphs in case a glyph's
|
| + * bytecode is buggy.
|
| + *
|
| * FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH ::
|
| * Ignored. Deprecated.
|
| *
|
| @@ -2497,26 +2509,26 @@ FT_BEGIN_HEADER
|
| *
|
| */
|
| #define FT_LOAD_DEFAULT 0x0
|
| -#define FT_LOAD_NO_SCALE 0x1
|
| -#define FT_LOAD_NO_HINTING 0x2
|
| -#define FT_LOAD_RENDER 0x4
|
| -#define FT_LOAD_NO_BITMAP 0x8
|
| -#define FT_LOAD_VERTICAL_LAYOUT 0x10
|
| -#define FT_LOAD_FORCE_AUTOHINT 0x20
|
| -#define FT_LOAD_CROP_BITMAP 0x40
|
| -#define FT_LOAD_PEDANTIC 0x80
|
| -#define FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH 0x200
|
| -#define FT_LOAD_NO_RECURSE 0x400
|
| -#define FT_LOAD_IGNORE_TRANSFORM 0x800
|
| -#define FT_LOAD_MONOCHROME 0x1000
|
| -#define FT_LOAD_LINEAR_DESIGN 0x2000
|
| -#define FT_LOAD_NO_AUTOHINT 0x8000U
|
| +#define FT_LOAD_NO_SCALE ( 1L << 0 )
|
| +#define FT_LOAD_NO_HINTING ( 1L << 1 )
|
| +#define FT_LOAD_RENDER ( 1L << 2 )
|
| +#define FT_LOAD_NO_BITMAP ( 1L << 3 )
|
| +#define FT_LOAD_VERTICAL_LAYOUT ( 1L << 4 )
|
| +#define FT_LOAD_FORCE_AUTOHINT ( 1L << 5 )
|
| +#define FT_LOAD_CROP_BITMAP ( 1L << 6 )
|
| +#define FT_LOAD_PEDANTIC ( 1L << 7 )
|
| +#define FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH ( 1L << 9 )
|
| +#define FT_LOAD_NO_RECURSE ( 1L << 10 )
|
| +#define FT_LOAD_IGNORE_TRANSFORM ( 1L << 11 )
|
| +#define FT_LOAD_MONOCHROME ( 1L << 12 )
|
| +#define FT_LOAD_LINEAR_DESIGN ( 1L << 13 )
|
| +#define FT_LOAD_NO_AUTOHINT ( 1L << 15 )
|
|
|
| /* */
|
|
|
| /* used internally only by certain font drivers! */
|
| -#define FT_LOAD_ADVANCE_ONLY 0x100
|
| -#define FT_LOAD_SBITS_ONLY 0x4000
|
| +#define FT_LOAD_ADVANCE_ONLY ( 1L << 8 )
|
| +#define FT_LOAD_SBITS_ONLY ( 1L << 14 )
|
|
|
|
|
| /**************************************************************************
|
| @@ -2869,14 +2881,26 @@ FT_BEGIN_HEADER
|
| /* */
|
| /* point_size :: The point size in 16.16 fractional points. */
|
| /* */
|
| - /* degree :: The degree of tightness. */
|
| + /* degree :: The degree of tightness. Increasingly negative */
|
| + /* values represent tighter track kerning, while */
|
| + /* increasingly positive values represent looser track */
|
| + /* kerning. Value zero means no track kerning. */
|
| /* */
|
| /* <Output> */
|
| - /* akerning :: The kerning in 16.16 fractional points. */
|
| + /* akerning :: The kerning in 16.16 fractional points, to be */
|
| + /* uniformly applied between all glyphs. */
|
| /* */
|
| /* <Return> */
|
| /* FreeType error code. 0~means success. */
|
| /* */
|
| + /* <Note> */
|
| + /* Currently, only the Type~1 font driver supports track kerning, */
|
| + /* using data from AFM files (if attached with @FT_Attach_File or */
|
| + /* @FT_Attach_Stream). */
|
| + /* */
|
| + /* Only very few AFM files come with track kerning data; please refer */
|
| + /* to the Adobe's AFM specification for more details. */
|
| + /* */
|
| FT_EXPORT( FT_Error )
|
| FT_Get_Track_Kerning( FT_Face face,
|
| FT_Fixed point_size,
|
| @@ -3810,7 +3834,7 @@ FT_BEGIN_HEADER
|
| */
|
| #define FREETYPE_MAJOR 2
|
| #define FREETYPE_MINOR 4
|
| -#define FREETYPE_PATCH 6
|
| +#define FREETYPE_PATCH 9
|
|
|
|
|
| /*************************************************************************/
|
|
|