forked from minhngoc25a/freetype2
* 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:
parent
78e004e843
commit
f8ba2005ab
33
ChangeLog
33
ChangeLog
|
@ -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 ...
|
||||
|
|
|
@ -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__ */
|
||||
|
|
|
@ -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__ */
|
||||
|
|
|
@ -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__ */
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
|
|
@ -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 )
|
||||
|
|
|
@ -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, ... )
|
||||
{
|
||||
|
|
|
@ -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 */
|
||||
|
@ -497,6 +497,7 @@ FT_BEGIN_HEADER
|
|||
#define ah_debug_disable_vert 0
|
||||
#endif /* DEBUG_HINTER */
|
||||
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
#endif /* __AHTYPES_H__ */
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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 ;
|
||||
|
|
|
@ -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
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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, */
|
||||
|
|
|
@ -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, */
|
||||
|
|
|
@ -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
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
|
|
@ -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, */
|
||||
|
|
|
@ -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, */
|
||||
|
|
|
@ -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, */
|
||||
|
|
|
@ -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, */
|
||||
|
|
|
@ -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, */
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
@ -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 );
|
||||
|
||||
|
|
|
@ -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, */
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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,
|
||||
|
|
Loading…
Reference in New Issue