* include/freetype/t1tables.h (t1_blend_max): Fix typo.

* src/base/ftstream.c: Simplify FT_ERROR calls.

formatting, copyright update
This commit is contained in:
Werner Lemberg 2002-03-30 13:16:35 +00:00
parent 78e004e843
commit f8ba2005ab
37 changed files with 456 additions and 389 deletions

View File

@ -1,3 +1,8 @@
2002-03-30 Werner Lemberg <wl@gnu.org>
* include/freetype/t1tables.h (t1_blend_max): Fix typo.
* src/base/ftstream.c: Simplify FT_ERROR calls.
2002-03-29 Werner Lemberg <wl@gnu.org>
* builds/vms/ftconfig.h: Rename LOCAL_DEF and LOCAL_FUNC to
@ -146,6 +151,8 @@
FT_AutoHinter_Done_Global_Func => FT_AutoHinter_GlobalDoneFunc
etc.
* ahloader.h [_STANDALONE_]: Removed all conditional code.
* include/freetype/internal/cfftypes.h, src/cff/*.c: Updating the
type definitions of the CFF font driver.
@ -169,17 +176,25 @@
FTDriver_initGlyphSlot => FT_Slot_InitFunc
etc.
* include/freetype/internal/ftobjs.h, src/base/ftapi.c,
src/base/ftobjs.c: Updated a few face method definitions:
* include/freetype/internal/ftobjs.h, src/base/ftobjs.c: Updated a
few face method definitions:
FT_PSName_Requester => FT_Face_GetPostscriptNameFunc
FT_Glyph_Name_Requester => FT_Face_GetGlyphNameFunc
FT_Name_Index_Requester => FT_Face_GetGlyphNameIndexFunc
* src/base/ftapi.c: New file. It contains backwards compatibility
functions.
* include/freetype/internal/psaux.h, src/cid/cidload.c,
src/cidtoken.h, src/psaux/psobjs.c, src/psaux/psobjs.h,
src/psaux/t1decode.c, stc/type1/t1load.c, src/type1/t1tokens.h:
Updated common PostScript type definitions.
Renamed all enumeration values like to uppercase variants:
t1_token_any => T1_TOKEN_TYPE_ANY
t1_field_cid_info => T1_FIELD_LOCATION_CID_INFO
etc.
* include/freetype/internal/psglobals.h,
include/freetype/internal/pshints.h, src/pshinter/pshglob.h:
@ -278,9 +293,9 @@
(psh1_print_zone): This.
* include/freetype/freetype.h, include/freetype/internal/ftobjs.h,
src/base/ftobjs.c, src/base/ftinit.c: Adding the new
FT_Library_Version API to return the library's current version in
dynamic links.
src/base/ftobjs.c: Adding the new FT_Library_Version API to return
the library's current version in dynamic links.
* src/base/ftinit.c (FT_Init_FreeType): Updated.
2002-03-06 Werner Lemberg <wl@gnu.org>
@ -309,6 +324,9 @@
Windows-encoded entries before Macintosh or Unicode ones, since it
seems some fonts don't have reliable values here anyway.
* include/freetype/internal/psnames.h: Add typedef for
`PSNames_Service'.
2002-03-05 Werner Lemberg <wl@gnu.org>
* builds/unix/aclocal.m4, builds/unix/ltmain.sh: Update to libtool
@ -405,8 +423,9 @@
ft_close_stream => ft_ansi_stream_close (in base/ftsystem.c only)
ft_io_stream => ft_ansi_stream_io (in base/ftsystem.c only)
* Moving all memory and list management code to "src/base/ftutil.c"
(previously in "ftobjs.c" and "ftlist.c" respectively).
* src/base/ftutil.c: New file. Contains all memory and list
management code (previously in "ftobjs.c" and "ftlist.c",
respectively).
* include/freetype/internal/ftobjs.h: Moving all code related to
glyph loaders to ...

View File

@ -6,7 +6,7 @@
/* recorders (specification only). These are used to support native */
/* T1/T2 hints in the "type1", "cid" and "cff" font drivers. */
/* */
/* Copyright 2001 by */
/* Copyright 2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@ -98,7 +98,7 @@ FT_BEGIN_HEADER
/* strange happened (e.g. memory shortage). */
/* */
/* The hints accumulated in the object can later be used by the */
/* Postscript hinter. */
/* PostScript hinter. */
/* */
typedef struct T1_HintsRec_* T1_Hints;
@ -215,6 +215,7 @@ FT_BEGIN_HEADER
/* */
/* @input: */
/* hints :: A handle to the Type 1 hints recorder. */
/* */
/* end_point :: The index of the last point in the input glyph in */
/* which the previously defined hints apply. */
/* */
@ -610,6 +611,7 @@ FT_BEGIN_HEADER
typedef PSHinter_Interface* PSHinter_Service;
FT_END_HEADER
#endif /* __PSHINTS_H__ */

View File

@ -5,7 +5,7 @@
/* High-level interface for the `PSNames' module (in charge of */
/* various functions related to Postscript glyph names conversion). */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@ -232,6 +232,7 @@ FT_BEGIN_HEADER
typedef PSNames_Interface* PSNames_Service;
FT_END_HEADER
#endif /* __PSNAMES_H__ */

View File

@ -4,7 +4,7 @@
/* */
/* High-level `sfnt' driver interface (specification). */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@ -525,6 +525,7 @@ FT_BEGIN_HEADER
/* transitional */
typedef SFNT_Interface* SFNT_Service;
FT_END_HEADER
#endif /* __SFNT_H__ */

View File

@ -5,7 +5,7 @@
/* Basic Type1/Type2 type definitions and interface (specification */
/* only). */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@ -88,14 +88,9 @@ FT_BEGIN_HEADER
typedef struct T1_FontRec_
{
/* font info dictionary */
PS_FontInfoRec font_info;
/* private dictionary */
PS_PrivateRec private_dict;
/* top-level dictionary */
FT_String* font_name;
PS_FontInfoRec font_info; /* font info dictionary */
PS_PrivateRec private_dict; /* private dictionary */
FT_String* font_name; /* top-level dictionary */
T1_EncodingType encoding_type;
T1_EncodingRec encoding;

View File

@ -5,7 +5,7 @@
/* Basic SFNT/TrueType type definitions and interface (specification */
/* only). */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@ -86,11 +86,11 @@ FT_BEGIN_HEADER
/* */
/* num_tables :: The number of tables in file. */
/* */
/* search_range :: Must be 16*(max power of 2 <= num_tables). */
/* search_range :: Must be `16 * (max power of 2 <= num_tables)'. */
/* */
/* entry_selector :: Must be log2 of search_range/16. */
/* entry_selector :: Must be log2 of `search_range / 16'. */
/* */
/* range_shift :: Must be num_tables*16 - search_range. */
/* range_shift :: Must be `num_tables * 16 - search_range'. */
/* */
typedef struct SFNT_HeaderRec_
{
@ -245,7 +245,8 @@ FT_BEGIN_HEADER
/*************************************************************************/
/* */
/* <Type> TT_ShortMetrics */
/* <Type> */
/* TT_ShortMetrics */
/* */
/* <Description> */
/* A simple type to model the short metrics of the `hmtx' and `vmtx' */
@ -945,10 +946,8 @@ FT_BEGIN_HEADER
{
FT_ULong language; /* for Mac fonts (originally ushort) */
FT_UShort* subHeaderKeys;
/* high byte mapping table */
FT_UShort* subHeaderKeys; /* high byte mapping table */
/* value = subHeader index * 8 */
TT_CMap2SubHeader subHeaders;
FT_UShort* glyphIdArray;
FT_UShort numGlyphId; /* control value */
@ -1102,8 +1101,6 @@ FT_BEGIN_HEADER
} TT_CharMapRec;
/*************************************************************************/
/*************************************************************************/
/*************************************************************************/
@ -1123,7 +1120,7 @@ FT_BEGIN_HEADER
/* following formats: TTF, OpenType-TT, and OpenType-CFF. */
/* */
/* Note, however, that the classes TT_Size, TT_GlyphSlot, and TT_CharMap */
/* are not shared between font drivers, and are thus defined normally in */
/* are not shared between font drivers, and are thus defined in */
/* `ttobjs.h'. */
/* */
/*************************************************************************/
@ -1221,8 +1218,8 @@ FT_BEGIN_HEADER
/* */
/* <Note> */
/* This function is normally equivalent to FT_STREAM_SEEK(offset) */
/* followed by FT_FRAME_ENTER(byte_count) with the loader's stream, but */
/* alternative formats (e.g. compressed ones) might use something */
/* followed by FT_FRAME_ENTER(byte_count) with the loader's stream, */
/* but alternative formats (e.g. compressed ones) might use something */
/* different. */
/* */
typedef FT_Error
@ -1266,7 +1263,6 @@ FT_BEGIN_HEADER
(*TT_Loader_EndGlyphFunc)( TT_Loader loader );
/*************************************************************************/
/* */
/* TrueType Face Type */
@ -1337,6 +1333,10 @@ FT_BEGIN_HEADER
/* not loaded by the driver on face opening. */
/* See the `ttpost' module for more details. */
/* */
/* cmap_table :: XXX */
/* */
/* cmap_size :: XXX */
/* */
/* num_charmaps :: The number of character mappings in the */
/* font. */
/* */
@ -1355,14 +1355,14 @@ FT_BEGIN_HEADER
/* */
/* access_glyph_frame :: XXX */
/* */
/* forget_glyph_frame :: XXX */
/* */
/* read_glyph_header :: XXX */
/* */
/* read_simple_glyph :: XXX */
/* */
/* read_composite_glyph :: XXX */
/* */
/* forget_glyph_frame :: XXX */
/* */
/* sfnt :: A pointer to the SFNT `driver' interface. */
/* */
/* psnames :: A pointer to the `PSNames' module */
@ -1433,15 +1433,12 @@ FT_BEGIN_HEADER
/* num_kern_pairs :: The number of kerning pairs present in the */
/* font file. The engine only loads the */
/* first horizontal format 0 kern table it */
/* finds in the font file. You should use */
/* the `ttxkern' structures if you want to */
/* access other kerning tables. Ignored */
/* for Type 2 fonts. */
/* finds in the font file. Ignored for */
/* Type 2 fonts. */
/* */
/* kern_table_index :: The index of the kerning table in the font */
/* kerning directory. Only used by the */
/* ttxkern extension to avoid data */
/* duplication. Ignored for Type 2 fonts. */
/* kerning directory. Ignored for Type 2 */
/* fonts. */
/* */
/* interpreter :: A pointer to the TrueType bytecode */
/* interpreters field is also used to hook */

View File

@ -5,7 +5,7 @@
/* Basic Type 1/Type 2 tables definitions and interface (specification */
/* only). */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@ -81,9 +81,9 @@ FT_BEGIN_HEADER
/* T1_FontInfo */
/* */
/* <Description> */
/* this type is equivalent to @PS_FontInfoRec but has been deprecated */
/* it is kept to maintain source compatibility between various */
/* versions of FreeType */
/* This type is equivalent to @PS_FontInfoRec. It is deprecated but */
/* kept to maintain source compatibility between various versions of */
/* FreeType. */
/* */
typedef PS_FontInfoRec T1_FontInfo;
@ -96,7 +96,7 @@ FT_BEGIN_HEADER
/* <Description> */
/* A structure used to model a Type1/Type2 private dictionary. Note */
/* that for Multiple Master fonts, each instance has its own Private */
/* dict. */
/* dictionary. */
/* */
typedef struct PS_PrivateRec_
{
@ -143,9 +143,9 @@ FT_BEGIN_HEADER
/* T1_Private */
/* */
/* <Description> */
/* this type is equivalent to @PS_PrivateRec but has been deprecated */
/* it is kept to maintain source compatibility between various */
/* versions of FreeType */
/* This type is equivalent to @PS_PrivateRec. It is deprecated but */
/* kept to maintain source compatibility between various versions of */
/* FreeType. */
/* */
typedef PS_PrivateRec T1_Private;
@ -201,7 +201,7 @@ FT_BEGIN_HEADER
#define t1_blend_family_blues T1_BLEND_FAMILY_BLUES
#define t1_blend_family_other_blues T1_BLEND_FAMILY_OTHER_BLUES
#define t1_blend_force_bold T1_BLEND_FORCE_BOLD
#define t1_blend_max T1_BELND_MAX
#define t1_blend_max T1_BLEND_MAX
/* maximum number of Multiple Masters designs, as defined in the spec */
@ -293,7 +293,6 @@ FT_BEGIN_HEADER
FT_Int num_xuid;
FT_ULong xuid[16];
FT_ULong cidmap_offset;
FT_Int fd_bytes;
FT_Int gd_bytes;
@ -313,9 +312,9 @@ FT_BEGIN_HEADER
/* CID_Info */
/* */
/* <Description> */
/* this type is equivalent to @CID_FaceInfoRec but has been deprecated */
/* it is kept to maintain source compatibility between various */
/* versions of FreeType */
/* This type is equivalent to @CID_FaceInfoRec. It is deprecated but */
/* kept to maintain source compatibility between various versions of */
/* FreeType. */
/* */
typedef CID_FaceInfoRec CID_Info;

View File

@ -5,7 +5,7 @@
/* A routine used to compute vector angles with limited accuracy */
/* and very high speed (body). */
/* */
/* Copyright 2000-2001 Catharon Productions Inc. */
/* Copyright 2000-2001, 2002 Catharon Productions Inc. */
/* Author: David Turner */
/* */
/* This file is part of the Catharon Typography Project and shall only */

View File

@ -5,7 +5,7 @@
/* A routine used to compute vector angles with limited accuracy */
/* and very high speed (specification). */
/* */
/* Copyright 2000-2001 Catharon Productions Inc. */
/* Copyright 2000-2001, 2002 Catharon Productions Inc. */
/* Author: David Turner */
/* */
/* This file is part of the Catharon Typography Project and shall only */

View File

@ -4,7 +4,7 @@
/* */
/* Routines used to compute global metrics automatically (body). */
/* */
/* Copyright 2000-2001 Catharon Productions Inc. */
/* Copyright 2000-2001, 2002 Catharon Productions Inc. */
/* Author: David Turner */
/* */
/* This file is part of the Catharon Typography Project and shall only */

View File

@ -5,7 +5,7 @@
/* Routines used to compute global metrics automatically */
/* (specification). */
/* */
/* Copyright 2000-2001 Catharon Productions Inc. */
/* Copyright 2000-2001, 2002 Catharon Productions Inc. */
/* Author: David Turner */
/* */
/* This file is part of the Catharon Typography Project and shall only */
@ -37,7 +37,8 @@ FT_BEGIN_HEADER
/* compute global metrics automatically */
FT_LOCAL( FT_Error ) ah_hinter_compute_globals( AH_Hinter* hinter );
FT_LOCAL( FT_Error )
ah_hinter_compute_globals( AH_Hinter* hinter );
FT_END_HEADER

View File

@ -5,7 +5,7 @@
/* Routines used to load and analyze a given glyph before hinting */
/* (body). */
/* */
/* Copyright 2000-2001 Catharon Productions Inc. */
/* Copyright 2000-2001, 2002 Catharon Productions Inc. */
/* Author: David Turner */
/* */
/* This file is part of the Catharon Typography Project and shall only */
@ -39,6 +39,7 @@
AH_Segment* segments;
FT_Int dimension;
edges = outline->horz_edges;
edge_limit = edges + outline->num_hedges;
segments = outline->horz_segments;

View File

@ -5,7 +5,7 @@
/* Routines used to load and analyze a given glyph before hinting */
/* (specification). */
/* */
/* Copyright 2000-2001 Catharon Productions Inc. */
/* Copyright 2000-2001, 2002 Catharon Productions Inc. */
/* Author: David Turner */
/* */
/* This file is part of the Catharon Typography Project and shall only */

View File

@ -4,7 +4,7 @@
/* */
/* Glyph hinter (body). */
/* */
/* Copyright 2000-2001 Catharon Productions Inc. */
/* Copyright 2000-2001, 2002 Catharon Productions Inc. */
/* Author: David Turner */
/* */
/* This file is part of the Catharon Typography Project and shall only */

View File

@ -4,7 +4,7 @@
/* */
/* Glyph hinter (declaration). */
/* */
/* Copyright 2000-2001 Catharon Productions Inc. */
/* Copyright 2000-2001, 2002 Catharon Productions Inc. */
/* Author: David Turner */
/* */
/* This file is part of the Catharon Typography Project and shall only */

View File

@ -4,7 +4,7 @@
/* */
/* Glyph loader for the auto-hinting module (declaration only). */
/* */
/* Copyright 2000-2001 Catharon Productions Inc. */
/* Copyright 2000-2001, 2002 Catharon Productions Inc. */
/* Author: David Turner */
/* */
/* This file is part of the Catharon Typography Project and shall only */
@ -21,13 +21,8 @@
/*************************************************************************/
/* */
/* This defines the AH_GlyphLoader type in two different ways: */
/* */
/* - If the module is compiled within FreeType 2, the type is simply a */
/* typedef to FT_GlyphLoader. */
/* */
/* - If the module is compiled as a standalone object, AH_GlyphLoader */
/* has its own implementation. */
/* This defines the AH_GlyphLoader type; it is simply a typedef to */
/* FT_GlyphLoader. */
/* */
/*************************************************************************/

View File

@ -4,7 +4,7 @@
/* */
/* Auto-hinting module implementation (declaration). */
/* */
/* Copyright 2000-2001 Catharon Productions Inc. */
/* Copyright 2000-2001, 2002 Catharon Productions Inc. */
/* Author: David Turner */
/* */
/* This file is part of the Catharon Typography Project and shall only */
@ -43,6 +43,7 @@
{
FT_Error error;
error = ah_hinter_new( module->root.library, &module->hinter );
#ifdef DEBUG_HINTER
if ( !error )

View File

@ -4,7 +4,7 @@
/* */
/* FreeType auto hinting outline optimization (body). */
/* */
/* Copyright 2000-2001 Catharon Productions Inc. */
/* Copyright 2000-2001, 2002 Catharon Productions Inc. */
/* Author: David Turner */
/* */
/* This file is part of the Catharon Typography Project and shall only */
@ -36,7 +36,7 @@
#include "ahoptim.h"
/* define this macro to use brute force optimisation -- this is slow, */
/* define this macro to use brute force optimization -- this is slow, */
/* but a good way to perfect the distortion function `by hand' through */
/* tweaking */
#define AH_BRUTE_FORCE
@ -65,6 +65,7 @@
#define FLOAT( x ) ( (float)( (x) / 64.0 ) )
static void
optim_log( const char* fmt, ... )
{

View File

@ -5,7 +5,7 @@
/* General types and definitions for the auto-hint module */
/* (specification only). */
/* */
/* Copyright 2000-2001 Catharon Productions Inc. */
/* Copyright 2000-2001, 2002 Catharon Productions Inc. */
/* Author: David Turner */
/* */
/* This file is part of the Catharon Typography Project and shall only */
@ -493,10 +493,11 @@ FT_BEGIN_HEADER
extern FT_Bool ah_debug_disable_horz;
extern FT_Bool ah_debug_disable_vert;
#else
# define ah_debug_disable_horz 0
# define ah_debug_disable_vert 0
#define ah_debug_disable_horz 0
#define ah_debug_disable_vert 0
#endif /* DEBUG_HINTER */
FT_END_HEADER
#endif /* __AHTYPES_H__ */

View File

@ -3,7 +3,7 @@
#
# Copyright 2001 Catharon Productions Inc.
# Copyright 2001, 2002 Catharon Productions Inc.
#
# This file is part of the Catharon Typography Project and shall only
# be used, modified, and distributed under the terms of the Catharon

View File

@ -3,7 +3,7 @@
#
# Copyright 2000 Catharon Productions Inc.
# Copyright 2000, 2001 Catharon Productions Inc.
# Author: David Turner
#
# This file is part of the Catharon Typography Project and shall only

View File

@ -1,4 +1,4 @@
# FreeType 2 src/base Jamfile (c) 2001 David Turner
# FreeType 2 src/base Jamfile (c) 2001, 2002 David Turner
#
SubDir FT2_TOP src base ;

View File

@ -1,10 +1,10 @@
/***************************************************************************/
/* */
/* ftobjs.c */
/* ftapi.c */
/* */
/* The FreeType private base classes (body). */
/* The FreeType compatibility functions (body). */
/* */
/* Copyright 1996-2001 by */
/* Copyright 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@ -25,6 +25,7 @@
#include FT_TRUETYPE_TABLES_H
#include FT_OUTLINE_H
/*************************************************************************/
/*************************************************************************/
/*************************************************************************/

View File

@ -4,7 +4,7 @@
/* */
/* Single object library component (body only). */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@ -30,4 +30,5 @@
#include "ftobjs.c"
#include "ftnames.c"
/* END */

View File

@ -4,7 +4,7 @@
/* */
/* Arithmetic computations (body). */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */

View File

@ -4,7 +4,7 @@
/* */
/* Memory debugger (body). */
/* */
/* Copyright 2001 by */
/* Copyright 2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */

View File

@ -1,3 +1,21 @@
/***************************************************************************/
/* */
/* ftgloadr.c */
/* */
/* The FreeType glyph loader (body). */
/* */
/* Copyright 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg */
/* */
/* This file is part of the FreeType project, and may only be used, */
/* modified, and distributed under the terms of the FreeType project */
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
/* this file you indicate that you have read the license and */
/* understand and accept it fully. */
/* */
/***************************************************************************/
#include <ft2build.h>
#include FT_INTERNAL_GLYPH_LOADER_H
#include FT_INTERNAL_MEMORY_H
@ -5,6 +23,7 @@
#undef FT_COMPONENT
#define FT_COMPONENT trace_gloader
/*************************************************************************/
/*************************************************************************/
/*************************************************************************/

View File

@ -4,7 +4,7 @@
/* */
/* FreeType convenience functions to handle glyphs (body). */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */

View File

@ -4,7 +4,7 @@
/* */
/* FreeType initialization layer (body). */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */

View File

@ -4,7 +4,7 @@
/* */
/* Generic list support for FreeType (body). */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */

View File

@ -4,7 +4,7 @@
/* */
/* Mac FOND support. Written by just@letterror.com. */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* Just van Rossum, David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */

View File

@ -7,7 +7,7 @@
/* */
/* This is _not_ used to retrieve glyph names! */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */

View File

@ -4,7 +4,7 @@
/* */
/* The FreeType private base classes (body). */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@ -28,6 +28,7 @@
#include <string.h> /* for strcmp() */
#include <setjmp.h> /* for setjmp() and longjmp() */
FT_BASE_DEF( void )
ft_validator_init( FT_Validator valid,
const FT_Byte* base,
@ -46,10 +47,12 @@
{
int result;
result = setjmp( valid->jump_buffer );
return result;
}
FT_BASE_DEF( void )
ft_validator_error( FT_Validator valid,
FT_Error error )
@ -92,6 +95,7 @@
*astream = 0;
memory = library->memory;
if ( FT_NEW( stream ) )
goto Exit;
@ -134,7 +138,6 @@
}
static void
ft_input_stream_free( FT_Stream stream,
FT_Int external )
@ -143,6 +146,7 @@
{
FT_Memory memory = stream->memory;
FT_Stream_Close( stream );
if ( !external )
@ -497,6 +501,7 @@
FT_UInt EM = face->units_per_EM;
FT_Size_Metrics* metrics = &face->size->metrics;
slot->linearHoriAdvance = FT_MulDiv( slot->linearHoriAdvance,
(FT_Long)metrics->x_ppem << 16, EM );
@ -596,19 +601,19 @@
if ( face->autohint.finalizer )
face->autohint.finalizer( face->autohint.data );
/* Discard glyph slots for this face */
/* Discard glyph slots for this face. */
/* Beware! FT_Done_GlyphSlot() changes the field `face->glyph' */
while ( face->glyph )
FT_Done_GlyphSlot( face->glyph );
/* Discard all sizes for this face */
/* discard all sizes for this face */
FT_List_Finalize( &face->sizes_list,
(FT_List_Destructor)destroy_size,
memory,
driver );
face->size = 0;
/* Now discard client data */
/* now discard client data */
if ( face->generic.finalizer )
face->generic.finalizer( face );
@ -618,10 +623,12 @@
{
FT_Int n;
for ( n = 0; n < face->num_charmaps; n++ )
{
FT_CMap cmap = FT_CMAP( face->charmaps[n] );
FT_CMap_Done( cmap );
face->charmaps[n] = NULL;
@ -639,7 +646,8 @@
clazz->done_face( face );
/* close the stream for this face if needed */
ft_input_stream_free( face->stream,
ft_input_stream_free(
face->stream,
( face->face_flags & FT_FACE_FLAG_EXTERNAL_STREAM ) != 0 );
face->stream = 0;
@ -1435,6 +1443,7 @@
FT_Face face = cmap->charmap.face;
FT_Memory memory = FT_FACE_MEMORY(face);
if ( clazz->done )
clazz->done( cmap );
@ -1454,6 +1463,7 @@
FT_Memory memory;
FT_CMap cmap;
if ( clazz == NULL || charmap == NULL || charmap->face == NULL )
return FT_Err_Invalid_Argument;
@ -1468,7 +1478,7 @@
if ( clazz->init )
{
error = clazz->init( cmap, init_data );
if (error)
if ( error )
goto Fail;
}
@ -1478,7 +1488,7 @@
face->num_charmaps+1 ) )
goto Fail;
face->charmaps[ face->num_charmaps++ ] = (FT_CharMap) cmap;
face->charmaps[face->num_charmaps++] = (FT_CharMap)cmap;
}
Exit:
@ -1509,6 +1519,7 @@
{
FT_CMap cmap = FT_CMAP( face->charmap );
result = cmap->clazz->char_index( cmap, charcode );
}
return result;
@ -1516,8 +1527,6 @@
#else /* !FT_CONFIG_OPTION_USE_CMAPS */
FT_EXPORT_DEF( FT_UInt )
FT_Get_Char_Index( FT_Face face,
FT_ULong charcode )
@ -1546,6 +1555,7 @@
FT_ULong result = 0;
FT_UInt gindex = 0;
if ( face && face->charmap )
{
gindex = FT_Get_Char_Index( face, 0 );
@ -1578,6 +1588,7 @@
FT_UInt32 code = (FT_UInt32)charcode;
FT_CMap cmap = FT_CMAP( face->charmap );
gindex = cmap->clazz->char_next( cmap, &code );
result = ( gindex == 0 ) ? 0 : code;
}
@ -1707,7 +1718,7 @@
result = face->internal->postscript_name;
if ( !result )
{
/* now, lookup for glyph name */
/* now, look up glyph name */
FT_Driver driver = face->driver;
FT_Module_Class* clazz = FT_MODULE_CLASS( driver );

View File

@ -4,7 +4,7 @@
/* */
/* FreeType outline management (body). */
/* */
/* Copyright 1996-2001 by */
/* Copyright 1996-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */

View File

@ -4,7 +4,7 @@
/* */
/* I/O stream support (body). */
/* */
/* Copyright 2000-2001 by */
/* Copyright 2000-2001, 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@ -69,8 +69,8 @@
{
if ( stream->read( stream, pos, 0, 0 ) )
{
FT_ERROR(( "%s: invalid i/o; pos = 0x%lx, size = 0x%lx\n",
"FT_Stream_Seek", pos, stream->size ));
FT_ERROR(( "FT_Stream_Seek: invalid i/o; pos = 0x%lx, size = 0x%lx\n",
pos, stream->size ));
error = FT_Err_Invalid_Stream_Operation;
}
@ -78,8 +78,8 @@
/* note that seeking to the first position after the file is valid */
else if ( pos > stream->size )
{
FT_ERROR(( "%s: invalid i/o; pos = 0x%lx, size = 0x%lx\n",
"FT_Stream_Seek", pos, stream->size ));
FT_ERROR(( "FT_Stream_Seek: invalid i/o; pos = 0x%lx, size = 0x%lx\n",
pos, stream->size ));
error = FT_Err_Invalid_Stream_Operation;
}
@ -124,8 +124,8 @@
if ( pos >= stream->size )
{
FT_ERROR(( "%s: invalid i/o; pos = 0x%lx, size = 0x%lx\n",
"FT_Stream_ReadAt", pos, stream->size ));
FT_ERROR(( "FT_Stream_ReadAt: invalid i/o; pos = 0x%lx, size = 0x%lx\n",
pos, stream->size ));
return FT_Err_Invalid_Stream_Operation;
}
@ -145,8 +145,9 @@
if ( read_bytes < count )
{
FT_ERROR(( "%s: invalid read; expected %lu bytes, got %lu\n",
"FT_Stream_ReadAt", count, read_bytes ));
FT_ERROR(( "FT_Stream_ReadAt:" ));
FT_ERROR(( " invalid read; expected %lu bytes, got %lu\n",
count, read_bytes ));
error = FT_Err_Invalid_Stream_Operation;
}
@ -416,8 +417,8 @@
Fail:
*error = FT_Err_Invalid_Stream_Operation;
FT_ERROR(( "%s: invalid i/o; pos = 0x%lx, size = 0x%lx\n",
"FT_Stream_ReadChar", stream->pos, stream->size ));
FT_ERROR(( "FT_Stream_ReadChar: invalid i/o; pos = 0x%lx, size = 0x%lx\n",
stream->pos, stream->size ));
return 0;
}
@ -509,7 +510,7 @@
Fail:
*error = FT_Err_Invalid_Stream_Operation;
FT_ERROR(( "FT_Stream_ReadShort:" ));
FT_ERROR(( "FT_Stream_ReadShortLE:" ));
FT_ERROR(( " invalid i/o; pos = 0x%lx, size = 0x%lx\n",
stream->pos, stream->size ));
@ -556,8 +557,9 @@
Fail:
*error = FT_Err_Invalid_Stream_Operation;
FT_ERROR(( "%s: invalid i/o; pos = 0x%lx, size = 0x%lx\n",
"FT_Stream_ReadOffset", stream->pos, stream->size ));
FT_ERROR(( "FT_Stream_ReadOffset:" ));
FT_ERROR(( " invalid i/o; pos = 0x%lx, size = 0x%lx\n",
stream->pos, stream->size ));
return 0;
}
@ -601,8 +603,8 @@
return result;
Fail:
FT_ERROR(( "%s: invalid i/o; pos = 0x%lx, size = 0x%lx\n",
"FT_Stream_ReadLong", stream->pos, stream->size ));
FT_ERROR(( "FT_Stream_ReadLong: invalid i/o; pos = 0x%lx, size = 0x%lx\n",
stream->pos, stream->size ));
*error = FT_Err_Invalid_Stream_Operation;
return 0;
@ -647,7 +649,7 @@
return result;
Fail:
FT_ERROR(( "FT_Stream_ReadLong:" ));
FT_ERROR(( "FT_Stream_ReadLongLE:" ));
FT_ERROR(( " invalid i/o; pos = 0x%lx, size = 0x%lx\n",
stream->pos, stream->size ));
*error = FT_Err_Invalid_Stream_Operation;

View File

@ -1,3 +1,21 @@
/***************************************************************************/
/* */
/* ftutil.c */
/* */
/* FreeType utility file for memory and list management (body). */
/* */
/* Copyright 2002 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
/* modified, and distributed under the terms of the FreeType project */
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
/* this file you indicate that you have read the license and */
/* understand and accept it fully. */
/* */
/***************************************************************************/
#include <ft2build.h>
#include FT_INTERNAL_DEBUG_H
#include FT_INTERNAL_MEMORY_H
@ -309,3 +327,4 @@
}
/* END */

View File

@ -3,7 +3,7 @@
#
# Copyright 1996-2000 by
# Copyright 1996-2000, 2002 by
# David Turner, Robert Wilhelm, and Werner Lemberg.
#
# This file is part of the FreeType project, and may only be used, modified,