diff --git a/ChangeLog b/ChangeLog index bef707b98..e37d1772a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,16 +1,25 @@ 2006-04-21 David Turner - * include/freetype/ftincrem.h, include/freetype/ftmodapi.h, - include/freetype/freetype.h: Documentation update + * include/freetype/ftincrem.h: Documentation updates. + (FT_Incremental_Interface): New typedef. - * src/sfnt/ttcmap.c: removed compiler warnings (gcc-4.0.2) + * include/freetype/ftmodapi.h, include/freetype/ftglyph.h: + Documentation updates. + + * include/freetype/freetype.h: Documentation update. + (FT_HAS_FAST_GLYPHS): Always set to 0. + + * include/freetype/ftstroke.h, src/base/ftstroke.c (FT_Stroker_New): + Take an FT_Library argument instead of FT_Memory. + + * src/sfnt/ttcmap.c: Remove compiler warnings (gcc-4.0.2). 2006-04-13 David Turner - * src/autofit/afloader.c: removing superfluous code in the auto-fitter's - loader + * src/autofit/afloader.c (af_loader_init, af_loader_load_g): Remove + superfluous code in the auto-fitter's loader. -2006-04-05 Detlef Wrkner +2006-04-05 Detlef Würkner * builds/amiga/makefile, builds/amiga/makefile.os4, builds/amiga/smakefile: Added FT2_BUILD_LIBRARY define. @@ -43,7 +52,7 @@ * builds/unix/install.mk (uninstall): Don't handle `cache' directory which no longer exists. -2006-03-29 Detlef Wrkner +2006-03-29 Detlef Würkner * src/psaux/psconv.c: Changed some variables which are expected to hold negative values from `char' to `FT_Char' to allow building with @@ -1622,7 +1631,7 @@ (tt_face_build_cmaps): Check table and offset correctly (equality is missing). -2005-11-15 Detlef Wrkner +2005-11-15 Detlef Würkner * builds/amiga/smakefile: Adjusted the compiler options to the current sources, now really builds the gxvalid, gzip @@ -1640,7 +1649,7 @@ builds/mac/FreeType.ppc_carbon.make.txt: Updated for MPW to build all available modules. -2005-11-21 H�ard Wall +2005-11-21 Håvard Wall * src/bdf/bdfdrivr.c (bdf_interpret_style, BDF_Face_Done): Fix small memory leak. @@ -1699,14 +1708,14 @@ FT_Done_Memory), builds/win32/ftdebug.c (FT_Message, FT_Panic): s/FT_EXPORT/FT_BASE/. -2005-11-17 Detlef Wrkner +2005-11-17 Detlef Würkner * builds/amiga/src/base/ftdebug.c (FT_Trace_Get_Count, FT_Trace_Get_Name, FT_Message, FT_Panic), builds/amiga/src/base/ftsystem.c (FT_New_Memory, FT_Done_Memory, FT_Stream_Open): s/FT_EXPORT/FT_BASE/. -2005-11-17 Detlef Wrkner +2005-11-17 Detlef Würkner * builds/amiga/makefile, builds/amiga/makefile.os4, builds/amiga/smakefile, @@ -1790,7 +1799,7 @@ * src/type1/t1afm.c (T1_Read_PFM): Zero offset means `no kerning table available'. From Sergey Tolstov . -2005-11-03 Ville Syrj�� +2005-11-03 Ville Syrjälä * src/base/ftobjs.c (FT_Open_Face): Avoid possible memory leak. diff --git a/include/freetype/freetype.h b/include/freetype/freetype.h index 3f3925f9b..2097c5817 100644 --- a/include/freetype/freetype.h +++ b/include/freetype/freetype.h @@ -211,8 +211,8 @@ FT_BEGIN_HEADER /* */ /* A structure used to model the metrics of a single glyph. The */ /* values are expressed in 26.6 fractional pixel format; if the flag */ - /* @FT_LOAD_NO_SCALE was used when loading the glyph, values are */ - /* expressed in font units instead. */ + /* @FT_LOAD_NO_SCALE has been used while loading the glyph, values */ + /* are expressed in font units instead. */ /* */ /* */ /* width :: */ @@ -412,16 +412,16 @@ FT_BEGIN_HEADER /* */ /* */ /* Each @FT_Face has an _active_ @FT_Size object that is used by */ - /* functions like @FT_Load_Glyph to determine the scaling transform */ - /* used to load and hint glyph and metrics. */ + /* functions like @FT_Load_Glyph to determine the scaling */ + /* transformation which is used to load and hint glyphs and metrics. */ /* */ /* You can use @FT_Set_Char_Size, @FT_Set_Pixel_Sizes, */ /* @FT_Request_Size or even @FT_Select_Size to change the content */ - /* (i.e. scale) of the active @FT_Size. */ + /* (i.e., the scaling values) of the active @FT_Size. */ /* */ - /* You can use @FT_New_Size to create additionnal size objects for a */ + /* You can use @FT_New_Size to create additional size objects for a */ /* given @FT_Face, but they won't be used by other functions until */ - /* you activate it through @FT_Activate_Size. Only one size can be */ + /* you activate it through @FT_Activate_Size. Only one size can be */ /* activated at any given time per face. */ /* */ /* */ @@ -520,12 +520,12 @@ FT_BEGIN_HEADER /* */ /* */ /* An enumeration used to specify character sets supported by */ - /* charmaps. Used in the @FT_Select_Charmap API function. */ + /* charmaps. Used in the @FT_Select_Charmap API function. */ /* */ /* */ - /* Despite the name, this enum lists specific character repertories */ - /* (i.e. charsets), and not text encoding methods (e.g. UTF-8, */ - /* UTF-16, GB2312_EUC, etc...) */ + /* Despite the name, this enumeration lists specific character */ + /* repertories (i.e., charsets), and not text encoding methods (e.g., */ + /* UTF-8, UTF-16, GB2312_EUC, etc.). */ /* */ /* Because of 32-bit charcodes defined in Unicode (i.e., surrogates), */ /* all character codes must be expressed as FT_Longs. */ @@ -1156,10 +1156,10 @@ FT_BEGIN_HEADER * FT_HAS_FAST_GLYPHS( face ) * * @description: - * Deprecated; + * Deprecated. * */ -#define FT_HAS_FAST_GLYPHS( face ) 0 +#define FT_HAS_FAST_GLYPHS( face ) 0 /************************************************************************* @@ -1334,7 +1334,7 @@ FT_BEGIN_HEADER /* hence the forward structure declaration. */ /* */ /* You can however retrieve subglyph information with */ - /* @FT_Get_SubGlyph_Info */ + /* @FT_Get_SubGlyph_Info. */ /* */ typedef struct FT_SubGlyphRec_* FT_SubGlyph; @@ -1945,7 +1945,7 @@ FT_BEGIN_HEADER /* depends on the font format (and thus the font driver). */ /* */ /* Client applications are expected to know what they are doing */ - /* when invoking this function. Most drivers simply do not implement */ + /* when invoking this function. Most drivers simply do not implement */ /* file attachments. */ /* */ FT_EXPORT( FT_Error ) @@ -2912,11 +2912,11 @@ FT_BEGIN_HEADER /* The glyph index. 0 means `undefined character code'. */ /* */ /* */ - /* If you use FreeType to manipulate the content of font files */ + /* If you use FreeType to manipulate the contents of font files */ /* directly, be aware that the glyph index returned by this function */ /* doesn't always correspond to the internal indices used within */ - /* the file. This is done to ensure that value 0 always correspond */ - /* to 'missing glyph' */ + /* the file. This is done to ensure that value 0 always corresponds */ + /* to the `missing glyph'. */ /* */ FT_EXPORT( FT_UInt ) FT_Get_Char_Index( FT_Face face, diff --git a/include/freetype/ftcache.h b/include/freetype/ftcache.h index 430f4afee..58c149af3 100644 --- a/include/freetype/ftcache.h +++ b/include/freetype/ftcache.h @@ -285,10 +285,10 @@ FT_BEGIN_HEADER /* library :: The parent FreeType library handle to use. */ /* */ /* max_faces :: Maximum number of opened @FT_Face objects managed by */ - /* this cache instance. Use 0 for defaults */ + /* this cache instance. Use 0 for defaults. */ /* */ /* max_sizes :: Maximum number of opened @FT_Size objects managed by */ - /* this cache instance. Use 0 for defaults */ + /* this cache instance. Use 0 for defaults. */ /* */ /* max_bytes :: Maximum number of bytes to use for cached data nodes. */ /* Use 0 for defaults. Note that this value does not */ @@ -500,27 +500,33 @@ FT_BEGIN_HEADER FTC_Manager manager ); - /** - * @function: FTC_Manager_RemoveFaceID - * - * @description: - * a special function used to indicate to the cache manager that - * a given @FTC_FaceID is no longer valid, either because it - * content changed, or because it was deallocated/uninstalled - * - * @input: - * manager :: cache manager handle - * face_id :: the @FTC_FaceID to be removed - * - * @note: - * this function will flush all nodes from the cache corresponding - * to this face_id, with the exception of nodes with a non-0 reference - * count. - * - * these nodes are however modified internally so as to never appear - * in later lookups with the same face_id value, and to be immediately - * destroyed when released by all their users. - */ + /************************************************************************* + * + * @function: + * FTC_Manager_RemoveFaceID + * + * @description: + * A special function used to indicate to the cache manager that + * a given @FTC_FaceID is no longer valid, either because its + * content changed, or because it was deallocated or uninstalled. + * + * @input: + * manager :: + * The cache manager handle. + * + * face_id :: + * The @FTC_FaceID to be removed. + * + * @note: + * This function flushes all nodes from the cache corresponding to this + * `face_id', with the exception of nodes with a non-null reference + * count. + * + * Such nodes are however modified internally so as to never appear + * in later lookups with the same `face_id' value, and to be immediately + * destroyed when released by all their users. + * + */ FT_EXPORT( void ) FTC_Manager_RemoveFaceID( FTC_Manager manager, FTC_FaceID face_id ); @@ -626,18 +632,29 @@ FT_BEGIN_HEADER /*************************************************************************/ /*************************************************************************/ - /** - * @struct: FTC_ImageTypeRec - * - * @description: - * a structure used to model the type of images in a glyph cache - * - * @fields: - * face_id :: the face id - * width :: width in pixels - * height :: height in pixels - * flags :: load flags, as in @FT_Load_Glyph - */ + + /************************************************************************* + * + * @struct: + * FTC_ImageTypeRec + * + * @description: + * A structure used to model the type of images in a glyph cache. + * + * @fields: + * face_id :: + * The face ID. + * + * width :: + * The width in pixels. + * + * height :: + * The height in pixels. + * + * flags :: + * The load flags, as in @FT_Load_Glyph. + * + */ typedef struct FTC_ImageTypeRec_ { FTC_FaceID face_id; @@ -647,12 +664,16 @@ FT_BEGIN_HEADER } FTC_ImageTypeRec; - /** - * @type: FTC_ImageType - * - * @description: - * handle to an @FTC_ImageTypeRec structure - */ + + /************************************************************************* + * + * @type: + * FTC_ImageType + * + * @description: + * A handle to an @FTC_ImageTypeRec structure. + * + */ typedef struct FTC_ImageTypeRec_* FTC_ImageType; diff --git a/include/freetype/ftglyph.h b/include/freetype/ftglyph.h index 2b6b4b51f..73d360735 100644 --- a/include/freetype/ftglyph.h +++ b/include/freetype/ftglyph.h @@ -4,7 +4,7 @@ /* */ /* FreeType convenience functions to handle glyphs (specification). */ /* */ -/* Copyright 1996-2001, 2002, 2003 by */ +/* Copyright 1996-2001, 2002, 2003, 2006 by */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* */ /* This file is part of the FreeType project, and may only be used, */ @@ -151,7 +151,7 @@ FT_BEGIN_HEADER /* */ /* */ /* You can typecast a @FT_Glyph to @FT_BitmapGlyph if you have */ - /* 'glyph->format == FT_GLYPH_FORMAT_BITMAP'. This lets you access */ + /* `glyph->format == FT_GLYPH_FORMAT_BITMAP'. This lets you access */ /* the bitmap's contents easily. */ /* */ /* The corresponding pixel buffer is always owned by the BitmapGlyph */ @@ -195,7 +195,7 @@ FT_BEGIN_HEADER /* */ /* */ /* You can typecast a @FT_Glyph to @FT_OutlineGlyph if you have */ - /* 'glyph->format == FT_GLYPH_FORMAT_OUTLINE'. This lets you access */ + /* `glyph->format == FT_GLYPH_FORMAT_OUTLINE'. This lets you access */ /* the outline's content easily. */ /* */ /* As the outline is extracted from a glyph slot, its coordinates are */ @@ -277,7 +277,7 @@ FT_BEGIN_HEADER /* expressed in 1/64th of a pixel. */ /* */ /* */ - /* FreeType error code (if not 0, the glyph format is not scalable) */ + /* FreeType error code (if not 0, the glyph format is not scalable). */ /* */ /* */ /* The 2x2 transformation matrix is also applied to the glyph's */ diff --git a/include/freetype/ftincrem.h b/include/freetype/ftincrem.h index 6cf3c2db1..3db0f7954 100644 --- a/include/freetype/ftincrem.h +++ b/include/freetype/ftincrem.h @@ -31,7 +31,7 @@ FT_BEGIN_HEADER - /*************************************************************** + /*************************************************************************** * * @section: * incremental @@ -43,21 +43,22 @@ FT_BEGIN_HEADER * Custom Glyph Loading * * @description: - * This section contains various functions used to perform - * so-called "incremental" glyph loading. This is a mode where - * all glyphs loaded from a given FT_Face are provided by the - * client application, + * This section contains various functions used to perform so-called + * `incremental' glyph loading. This is a mode where all glyphs loaded + * from a given @FT_Face are provided by the client application, * - * Apart from that, all other tables are loaded normally from - * the font file. This mode is useful when FreeType is used - * within another engine, e.g. a Postscript Imaging Processor. + * Apart from that, all other tables are loaded normally from the font + * file. This mode is useful when FreeType is used within another + * engine, e.g., a Postscript Imaging Processor. + * + * To enable this mode, you must use @FT_Open_Face, passing an + * @FT_Parameter with the @FT_PARAM_TAG_INCREMENTAL tag and an + * @FT_Incremental_Interface value. See the comments for + * @FT_Incremental_InterfaceRec for an example. * - * to enable this mode, you must use @FT_Open_Face, passing - * an @FT_Parameter with the @FT_PARAM_TAG_INCREMENTAL tag - * and a @FT_Incremental_Interface value. See the comments - * for @FT_Incremental_InterfaceRec for an example. */ + /*************************************************************************** * * @type: @@ -295,11 +296,15 @@ FT_BEGIN_HEADER } FT_Incremental_InterfaceRec; - /*** - * @type: FT_Incremental_Interface + + /*************************************************************************** + * + * @type: + * FT_Incremental_Interface * * @description: - * a pointer to a @FT_Incremental_InterfaceRec structure + * A pointer to an @FT_Incremental_InterfaceRec structure. + * */ typedef FT_Incremental_InterfaceRec* FT_Incremental_Interface; diff --git a/include/freetype/ftmodapi.h b/include/freetype/ftmodapi.h index bb6c3424a..27dc26997 100644 --- a/include/freetype/ftmodapi.h +++ b/include/freetype/ftmodapi.h @@ -307,22 +307,23 @@ FT_BEGIN_HEADER FT_Add_Default_Modules( FT_Library library ); - /*************************************************************** - * - * @section: - * ttengine - * - * @title: - * TrueType Engine - * - * @abstract: - * TrueType bytecode support - * - * @description: - * This section contains a function used to query the level - * of TrueType bytecode support compiled in this version of - * the library. - */ + /************************************************************************** + * + * @section: + * ttengine + * + * @title: + * The TrueType Engine + * + * @abstract: + * TrueType bytecode support + * + * @description: + * This section contains a function used to query the level of TrueType + * bytecode support compiled in this version of the library. + * + */ + /************************************************************************** * diff --git a/include/freetype/ftstroke.h b/include/freetype/ftstroke.h index 00ec08558..bf9d26dcb 100644 --- a/include/freetype/ftstroke.h +++ b/include/freetype/ftstroke.h @@ -188,7 +188,8 @@ FT_BEGIN_HEADER * `outside' borders of a given outline. * * @input: - * outline :: The source outline handle. + * outline :: + * The source outline handle. * * @return: * The border index. @FT_STROKER_BORDER_LEFT for empty or invalid @@ -207,10 +208,12 @@ FT_BEGIN_HEADER * Create a new stroker object. * * @input: - * library :: FreeType library handle + * library :: + * FreeType library handle * * @output: - * astroker :: A new stroker object handle. NULL in case of error. + * astroker :: + * A new stroker object handle. NULL in case of error. * * @return: * FreeType error code. 0 means success. @@ -638,8 +641,8 @@ FT_BEGIN_HEADER * Stroke a given outline glyph object with a given stroker. * * @inout: - * pglyph :: Source glyph handle on input, new glyph handle - * on output. + * pglyph :: + * Source glyph handle on input, new glyph handle on output. * * @input: * stroker :: diff --git a/src/base/ftstroke.c b/src/base/ftstroke.c index c5200b32f..8f7e0459d 100644 --- a/src/base/ftstroke.c +++ b/src/base/ftstroke.c @@ -4,7 +4,7 @@ /* */ /* FreeType path stroker (body). */ /* */ -/* Copyright 2002, 2003, 2004, 2005 by */ +/* Copyright 2002, 2003, 2004, 2005, 2006 by */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* */ /* This file is part of the FreeType project, and may only be used, */ @@ -723,6 +723,7 @@ FT_Memory memory; FT_Stroker stroker; + if ( !library ) return FT_Err_Invalid_Argument;