ref: 78e004e84388998ff8ff23e4e8b7d5976d039c77
parent: b1e6e59782e0eb7f5999f5cd6b87dbf2cbe2d480
author: Werner Lemberg <[email protected]>
date: Fri Mar 29 18:23:28 EST 2002
formatting
--- a/ChangeLog
+++ b/ChangeLog
@@ -142,6 +142,10 @@
FT_AutoHinter_Interface* => FT_AutoHinter_Service
etc.
+ FT_AutoHinter_Get_Global_Func => FT_AutoHinter_GlobalGetFunc
+ FT_AutoHinter_Done_Global_Func => FT_AutoHinter_GlobalDoneFunc
+ etc.
+
* include/freetype/internal/cfftypes.h, src/cff/*.c: Updating the
type definitions of the CFF font driver.
@@ -161,6 +165,10 @@
src/winfonts/winfnt.c, src/winfonts/winfnt.h: Updating type
definitions for font drivers.
+ FTDriver_initFace => FT_Face_InitFunc
+ 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:
@@ -400,13 +408,17 @@
* Moving all memory and list management code to "src/base/ftutil.c"
(previously in "ftobjs.c" and "ftlist.c" respectively).
- * Moving all code related to glyph loaders to "internal/ftgloadr.h"
- and "src/base/ftgloadr.c".
+ * include/freetype/internal/ftobjs.h: Moving all code related to
+ glyph loaders to ...
+ * include/freetype/"internal/ftgloadr.h: This new file.
"FT_GlyphLoader" is now a pointer to the structure
"FT_GlyphLoaderRec".
+ (ft_glyph_own_bitmap): Renamed to ...
+ (FT_GLYPH_OWN_BITMAP): This.
+ * src/base/ftobjs.c: Moving all code related to glyph loaders
+ to ...
+ * src/base/ftgloadr.c: This new file.
- * Renaming "ft_glyph_own_bitmap" into "FT_GLYPH_OWN_BITMAP".
-
2002-02-22 Werner Lemberg <[email protected]>
* include/freetype/internal/ftdebug.h (FT_Trace): Remove comma in
@@ -429,9 +441,9 @@
(FT_ASSERT): This.
Some stuff from ftdebug.h has been moved to ...
- * include/freetype/internal/fttrace.h: This new file to define the
- trace levels used for debugging. It is used both to define enums
- and toggle names for FT2_DEBUG.
+ * include/freetype/internal/fttrace.h: New file, to define the trace
+ levels used for debugging. It is used both to define enums and
+ toggle names for FT2_DEBUG.
* include/freetype/internal/internal.h: Updated.
* src/base/ftobjs.c, src/base/ftstream.c: Updated.
--- a/include/freetype/internal/autohint.h
+++ b/include/freetype/internal/autohint.h
@@ -4,7 +4,7 @@
/* */
/* High-level `autohint' module-specific 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, */
@@ -88,8 +88,8 @@
/* <Description> */
/* Retrieves the global hints computed for a given face object the */
/* resulting data is dissociated from the face and will survive a */
- /* call to FT_Done_Face(). It must be discarded through the API */
- /* FT_AutoHinter_GlobalDoneFunc (). */
+ /* call to FT_Done_Face(). It must be discarded through the API */
+ /* FT_AutoHinter_GlobalDoneFunc(). */
/* */
/* <Input> */
/* hinter :: A handle to the source auto-hinter. */
@@ -102,10 +102,10 @@
/* global_len :: The size in bytes of the global hints. */
/* */
typedef void
- (*FT_AutoHinter_GlobalGetFunc )( FT_AutoHinter hinter,
- FT_Face face,
- void** global_hints,
- long* global_len );
+ (*FT_AutoHinter_GlobalGetFunc)( FT_AutoHinter hinter,
+ FT_Face face,
+ void** global_hints,
+ long* global_len );
/*************************************************************************/
@@ -115,7 +115,7 @@
/* */
/* <Description> */
/* Discards the global hints retrieved through */
- /* FT_AutoHinter_GlobalGetFunc (). This is the only way these hints */
+ /* FT_AutoHinter_GlobalGetFunc(). This is the only way these hints */
/* are freed from memory. */
/* */
/* <Input> */
@@ -124,8 +124,8 @@
/* global :: A pointer to retrieved global hints to discard. */
/* */
typedef void
- (*FT_AutoHinter_GlobalDoneFunc )( FT_AutoHinter hinter,
- void* global );
+ (*FT_AutoHinter_GlobalDoneFunc)( FT_AutoHinter hinter,
+ void* global );
/*************************************************************************/
@@ -144,8 +144,8 @@
/* face :: A handle to the face. */
/* */
typedef void
- (*FT_AutoHinter_GlobalResetFunc )( FT_AutoHinter hinter,
- FT_Face face );
+ (*FT_AutoHinter_GlobalResetFunc)( FT_AutoHinter hinter,
+ FT_Face face );
/*************************************************************************/
@@ -159,7 +159,9 @@
/* */
/* <Input> */
/* face :: A handle to the face. */
+ /* */
/* glyph_index :: The glyph index. */
+ /* */
/* load_flags :: The load flags. */
/* */
/* <Note> */
@@ -187,12 +189,13 @@
/* */
typedef struct FT_AutoHinter_ServiceRec_
{
- FT_AutoHinter_GlobalResetFunc reset_face;
- FT_AutoHinter_GlobalGetFunc get_global_hints;
- FT_AutoHinter_GlobalDoneFunc done_global_hints;
- FT_AutoHinter_GlyphLoadFunc load_glyph;
+ FT_AutoHinter_GlobalResetFunc reset_face;
+ FT_AutoHinter_GlobalGetFunc get_global_hints;
+ FT_AutoHinter_GlobalDoneFunc done_global_hints;
+ FT_AutoHinter_GlyphLoadFunc load_glyph;
} FT_AutoHinter_ServiceRec, *FT_AutoHinter_Service;
+
FT_END_HEADER
--- a/include/freetype/internal/cfftypes.h
+++ b/include/freetype/internal/cfftypes.h
@@ -5,7 +5,7 @@
/* Basic OpenType/CFF 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, */
@@ -31,7 +31,7 @@
/*************************************************************************/
/* */
/* <Struct> */
- /* CFF_IndexRec */
+ /* CFF_IndexRec */
/* */
/* <Description> */
/* A structure used to model a CFF Index table. */
@@ -184,16 +184,16 @@
} CFF_FDSelectRec, *CFF_FDSelect;
- /* A SubFont packs a font dict and a private dict together. They are */
- /* needed to support CID-keyed CFF fonts. */
+ /* A SubFont packs a font dict and a private dict together. They are */
+ /* needed to support CID-keyed CFF fonts. */
typedef struct CFF_SubFontRec_
{
CFF_FontRecDictRec font_dict;
- CFF_PrivateRec private_dict;
+ CFF_PrivateRec private_dict;
- CFF_IndexRec local_subrs_index;
- FT_UInt num_local_subrs;
- FT_Byte** local_subrs;
+ CFF_IndexRec local_subrs_index;
+ FT_UInt num_local_subrs;
+ FT_Byte** local_subrs;
} CFF_SubFontRec, *CFF_SubFont;
--- a/include/freetype/internal/fnttypes.h
+++ b/include/freetype/internal/fnttypes.h
@@ -5,7 +5,7 @@
/* Basic Windows FNT/FON 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, */
@@ -115,13 +115,13 @@
typedef struct FNT_FontRec_
{
- FT_ULong offset;
- FT_Int size_shift;
+ FT_ULong offset;
+ FT_Int size_shift;
WinFNT_HeaderRec header;
- FT_Byte* fnt_frame;
- FT_ULong fnt_size;
+ FT_Byte* fnt_frame;
+ FT_ULong fnt_size;
} FNT_FontRec, *FNT_Font;
@@ -129,7 +129,7 @@
typedef struct FNT_SizeRec_
{
FT_SizeRec root;
- FNT_Font font;
+ FNT_Font font;
} FNT_SizeRec, *FNT_Size;
--- a/include/freetype/internal/ftdebug.h
+++ b/include/freetype/internal/ftdebug.h
@@ -4,7 +4,7 @@
/* */
/* Debugging and logging component (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, */
@@ -27,9 +27,9 @@
FT_BEGIN_HEADER
-/* force the definition of FT_DEBUG_LEVEL_ERROR if FT_DEBUG_LEVEL_TRACE */
-/* is already defined; this simplifies the following #ifdefs */
-/* */
+ /* force the definition of FT_DEBUG_LEVEL_ERROR if FT_DEBUG_LEVEL_TRACE */
+ /* is already defined; this simplifies the following #ifdefs */
+ /* */
#ifdef FT_DEBUG_LEVEL_TRACE
#undef FT_DEBUG_LEVEL_ERROR
#define FT_DEBUG_LEVEL_ERROR
@@ -38,8 +38,8 @@
/*************************************************************************/
/* */
- /* Define the trace enums as well as the trace levels array when */
- /* they're needed */
+ /* Define the trace enums as well as the trace levels array when they */
+ /* are needed. */
/* */
/*************************************************************************/
@@ -47,7 +47,7 @@
#define FT_TRACE_DEF( x ) trace_ ## x ,
- /* defining the enums */
+ /* defining the enumeration */
typedef enum
{
#include FT_INTERNAL_TRACE_H
@@ -57,7 +57,7 @@
/* defining the array of trace levels, provided by `src/base/ftdebug.c' */
- extern int ft_trace_levels[trace_count];
+ extern int ft_trace_levels[trace_count];
#undef FT_TRACE_DEF
@@ -66,7 +66,7 @@
/*************************************************************************/
/* */
- /* Define the FT_TRACE macro */
+ /* Define the FT_TRACE macro */
/* */
/* IMPORTANT! */
/* */
@@ -128,7 +128,7 @@
/*************************************************************************/
/* */
- /* Define the FT_ASSERT macro */
+ /* Define the FT_ASSERT macro */
/* */
/*************************************************************************/
@@ -170,7 +170,8 @@
#endif /* FT_DEBUG_LEVEL_ERROR */
- FT_BASE( void ) ft_debug_init( void );
+ FT_BASE( void )
+ ft_debug_init( void );
#if defined( _MSC_VER ) /* Visual C++ (and Intel C++) */
--- a/include/freetype/internal/ftdriver.h
+++ b/include/freetype/internal/ftdriver.h
@@ -4,7 +4,7 @@
/* */
/* FreeType font 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, */
@@ -76,14 +76,14 @@
FT_Long charcode );
typedef FT_Long
- (*FT_CharMap_CharNextFunc)( FT_CharMap charmap,
- FT_Long charcode );
+ (*FT_CharMap_CharNextFunc)( FT_CharMap charmap,
+ FT_Long charcode );
typedef FT_Error
- (*FT_Face_GetKerningFunc)( FT_Face face,
- FT_UInt left_glyph,
- FT_UInt right_glyph,
- FT_Vector* kerning );
+ (*FT_Face_GetKerningFunc)( FT_Face face,
+ FT_UInt left_glyph,
+ FT_UInt right_glyph,
+ FT_Vector* kerning );
typedef FT_Error
@@ -167,31 +167,31 @@
/* */
typedef struct FT_Driver_ClassRec_
{
- FT_Module_Class root;
+ FT_Module_Class root;
- FT_Int face_object_size;
- FT_Int size_object_size;
- FT_Int slot_object_size;
+ FT_Int face_object_size;
+ FT_Int size_object_size;
+ FT_Int slot_object_size;
- FT_Face_InitFunc init_face;
- FT_Face_DoneFunc done_face;
+ FT_Face_InitFunc init_face;
+ FT_Face_DoneFunc done_face;
- FT_Size_InitFunc init_size;
- FT_Size_DoneFunc done_size;
+ FT_Size_InitFunc init_size;
+ FT_Size_DoneFunc done_size;
- FT_Slot_InitFunc init_slot;
- FT_Slot_DoneFunc done_slot;
+ FT_Slot_InitFunc init_slot;
+ FT_Slot_DoneFunc done_slot;
- FT_Size_ResetPointsFunc set_char_sizes;
- FT_Size_ResetPixelsFunc set_pixel_sizes;
+ FT_Size_ResetPointsFunc set_char_sizes;
+ FT_Size_ResetPixelsFunc set_pixel_sizes;
- FT_Slot_LoadFunc load_glyph;
- FT_CharMap_CharIndexFunc get_char_index;
+ FT_Slot_LoadFunc load_glyph;
+ FT_CharMap_CharIndexFunc get_char_index;
- FT_Face_GetKerningFunc get_kerning;
- FT_Face_AttachFunc attach_file;
- FT_Face_GetAdvancesFunc get_advances;
- FT_CharMap_CharNextFunc get_next_char;
+ FT_Face_GetKerningFunc get_kerning;
+ FT_Face_AttachFunc attach_file;
+ FT_Face_GetAdvancesFunc get_advances;
+ FT_CharMap_CharNextFunc get_next_char;
} FT_Driver_ClassRec, *FT_Driver_Class;
--- a/include/freetype/internal/ftgloadr.h
+++ b/include/freetype/internal/ftgloadr.h
@@ -1,24 +1,32 @@
-#ifndef __FT_INTERNAL_GLYPH_LOADER_H__
-#define __FT_INTERNAL_GLYPH_LOADER_H__
+/***************************************************************************/
+/* */
+/* ftgloadr.h */
+/* */
+/* The FreeType glyph loader (specification). */
+/* */
+/* 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. */
+/* */
+/***************************************************************************/
+
+#ifndef __FTGLOADR_H__
+#define __FTGLOADR_H__
+
+
#include <ft2build.h>
#include FT_FREETYPE_H
+
FT_BEGIN_HEADER
- /*************************************************************************/
- /*************************************************************************/
- /*************************************************************************/
- /**** ****/
- /**** ****/
- /**** G L Y P H L O A D E R ****/
- /**** ****/
- /**** ****/
- /*************************************************************************/
- /*************************************************************************/
- /*************************************************************************/
-
/*************************************************************************/
/* */
/* <Struct> */
@@ -63,9 +71,9 @@
typedef struct FT_GlyphLoadRec_
{
- FT_Outline outline; /* outline */
- FT_Vector* extra_points; /* extra points table */
- FT_UInt num_subglyphs; /* number of subglyphs */
+ FT_Outline outline; /* outline */
+ FT_Vector* extra_points; /* extra points table */
+ FT_UInt num_subglyphs; /* number of subglyphs */
FT_SubGlyph subglyphs; /* subglyphs */
} FT_GlyphLoadRec, *FT_GlyphLoad;
@@ -87,55 +95,59 @@
} FT_GlyphLoaderRec;
- /* create new empty glyph loader */
+ /* create new empty glyph loader */
FT_BASE( FT_Error )
- FT_GlyphLoader_New( FT_Memory memory,
- FT_GlyphLoader *aloader );
+ FT_GlyphLoader_New( FT_Memory memory,
+ FT_GlyphLoader *aloader );
- /* add an extra points table to a glyph loader */
+ /* add an extra points table to a glyph loader */
FT_BASE( FT_Error )
- FT_GlyphLoader_CreateExtra( FT_GlyphLoader loader );
+ FT_GlyphLoader_CreateExtra( FT_GlyphLoader loader );
- /* destroy a glyph loader */
+ /* destroy a glyph loader */
FT_BASE( void )
- FT_GlyphLoader_Done( FT_GlyphLoader loader );
+ FT_GlyphLoader_Done( FT_GlyphLoader loader );
- /* reset a glyph loader (frees everything int it) */
+ /* reset a glyph loader (frees everything int it) */
FT_BASE( void )
- FT_GlyphLoader_Reset( FT_GlyphLoader loader );
+ FT_GlyphLoader_Reset( FT_GlyphLoader loader );
- /* rewind a glyph loader */
+ /* rewind a glyph loader */
FT_BASE( void )
- FT_GlyphLoader_Rewind( FT_GlyphLoader loader );
+ FT_GlyphLoader_Rewind( FT_GlyphLoader loader );
- /* check that there is enough room to add 'n_points' and 'n_contours' */
- /* to the glyph loader.. */
+ /* check that there is enough room to add 'n_points' and 'n_contours' */
+ /* to the glyph loader */
FT_BASE( FT_Error )
- FT_GlyphLoader_CheckPoints( FT_GlyphLoader loader,
- FT_UInt n_points,
- FT_UInt n_contours );
+ FT_GlyphLoader_CheckPoints( FT_GlyphLoader loader,
+ FT_UInt n_points,
+ FT_UInt n_contours );
- /* check that there is enough room to add 'n_subs' sub-glyphs to */
- /* a glyph loader */
+ /* check that there is enough room to add 'n_subs' sub-glyphs to */
+ /* a glyph loader */
FT_BASE( FT_Error )
- FT_GlyphLoader_CheckSubGlyphs( FT_GlyphLoader loader,
- FT_UInt n_subs );
+ FT_GlyphLoader_CheckSubGlyphs( FT_GlyphLoader loader,
+ FT_UInt n_subs );
- /* prepare a glyph loader, i.e. empty the current glyph */
+ /* prepare a glyph loader, i.e. empty the current glyph */
FT_BASE( void )
- FT_GlyphLoader_Prepare( FT_GlyphLoader loader );
+ FT_GlyphLoader_Prepare( FT_GlyphLoader loader );
- /* add the current glyph to the base glyph */
+ /* add the current glyph to the base glyph */
FT_BASE( void )
- FT_GlyphLoader_Add( FT_GlyphLoader loader );
+ FT_GlyphLoader_Add( FT_GlyphLoader loader );
- /* copy points from one glyph loader to another */
+ /* copy points from one glyph loader to another */
FT_BASE( FT_Error )
- FT_GlyphLoader_CopyPoints( FT_GlyphLoader target,
- FT_GlyphLoader source );
+ FT_GlyphLoader_CopyPoints( FT_GlyphLoader target,
+ FT_GlyphLoader source );
/* */
+
FT_END_HEADER
-#endif /* __FT_INTERNAL_GLYPH_LOADER_H__ */
+#endif /* __FTGLOADR_H__ */
+
+
+/* END */
--- a/include/freetype/internal/ftmemory.h
+++ b/include/freetype/internal/ftmemory.h
@@ -4,7 +4,7 @@
/* */
/* The FreeType memory management macros (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, */
@@ -183,81 +183,80 @@
#define FT_MEM_MOVE( dest, source, count ) memmove( dest, source, count )
-/**************************************************************************
- *
- * we first define FT_MEM_ALLOC, FT_MEM_REALLOC and FT_MEM_FREE
- * all macros use an _implicit_ 'memory' parameter to access the
- * current memory allocator
- *
- */
+ /*************************************************************************/
+ /* */
+ /* We first define FT_MEM_ALLOC, FT_MEM_REALLOC, and FT_MEM_FREE. All */
+ /* macros use an _implicit_ `memory' parameter to access the current */
+ /* memory allocator. */
+ /* */
#ifdef FT_DEBUG_MEMORY
-# define FT_MEM_ALLOC( _pointer_, _size_ ) \
- FT_Alloc_Debug( memory, _size_, \
+#define FT_MEM_ALLOC( _pointer_, _size_ ) \
+ FT_Alloc_Debug( memory, _size_, \
(void**)&(_pointer_), __FILE__, __LINE__ )
-# define FT_MEM_REALLOC( _pointer_, _current_, _size_ ) \
- FT_Realloc_Debug( memory, _current_, _size_, \
+#define FT_MEM_REALLOC( _pointer_, _current_, _size_ ) \
+ FT_Realloc_Debug( memory, _current_, _size_, \
(void**)&(_pointer_), __FILE__, __LINE__ )
-# define FT_MEM_FREE( _pointer_ ) \
+#define FT_MEM_FREE( _pointer_ ) \
FT_Free_Debug( memory, (void**)&(_pointer_), __FILE__, __LINE__ )
#else /* !FT_DEBUG_MEMORY */
-# define FT_MEM_ALLOC( _pointer_, _size_ ) \
+
+#define FT_MEM_ALLOC( _pointer_, _size_ ) \
FT_Alloc( memory, _size_, (void**)&(_pointer_) )
-# define FT_MEM_FREE( _pointer_ ) \
+#define FT_MEM_FREE( _pointer_ ) \
FT_Free( memory, (void**)&(_pointer_) )
-# define FT_MEM_REALLOC( _pointer_, _current_, _size_ ) \
+#define FT_MEM_REALLOC( _pointer_, _current_, _size_ ) \
FT_Realloc( memory, _current_, _size_, (void**)&(_pointer_) )
+
#endif /* !FT_DEBUG_MEMORY */
-/**************************************************************************
- *
- * the following functions macros that their pointer argument is _typed_
- * in order to automatically compute array element sizes..
- */
-#define FT_MEM_NEW( _pointer_ ) \
- FT_MEM_ALLOC( _pointer_, sizeof(*(_pointer_)) )
+ /*************************************************************************/
+ /* */
+ /* The following functions macros expect that their pointer argument is */
+ /* _typed_ in order to automatically compute array element sizes. */
+ /* */
-#define FT_MEM_NEW_ARRAY( _pointer_, _count_ ) \
- FT_MEM_ALLOC( _pointer_, (_count_)*sizeof(*(_pointer_)) )
+#define FT_MEM_NEW( _pointer_ ) \
+ FT_MEM_ALLOC( _pointer_, sizeof ( *(_pointer_) ) )
-#define FT_MEM_RENEW_ARRAY( _pointer_, _old_, _new_ ) \
- FT_MEM_REALLOC( _pointer_, (_old_)*sizeof(*(_pointer_)), \
- (_new_)*sizeof(*(_pointer_)) )
+#define FT_MEM_NEW_ARRAY( _pointer_, _count_ ) \
+ FT_MEM_ALLOC( _pointer_, (_count_) * sizeof ( *(_pointer_) ) )
+#define FT_MEM_RENEW_ARRAY( _pointer_, _old_, _new_ ) \
+ FT_MEM_REALLOC( _pointer_, (_old_) * sizeof ( *(_pointer_) ), \
+ (_new_) * sizeof ( *(_pointer_) ) )
-/**************************************************************************
- *
- * the following macros are obsolete but kept for compatibility reasons
- */
-#define FT_MEM_ALLOC_ARRAY( _pointer_, _count_, _type_ ) \
- FT_MEM_ALLOC( _pointer_, (_count_)*sizeof(_type_) )
+ /*************************************************************************/
+ /* */
+ /* the following macros are obsolete but kept for compatibility reasons */
+ /* */
+#define FT_MEM_ALLOC_ARRAY( _pointer_, _count_, _type_ ) \
+ FT_MEM_ALLOC( _pointer_, (_count_) * sizeof ( _type_ ) )
+
#define FT_MEM_REALLOC_ARRAY( _pointer_, _old_, _new_, _type_ ) \
- FT_MEM_REALLOC( _pointer_, (_old_)*sizeof(_type), \
- (_new_)*sizeof(_type_) )
+ FT_MEM_REALLOC( _pointer_, (_old_) * sizeof ( _type ), \
+ (_new_) * sizeof ( _type_ ) )
+ /*************************************************************************/
+ /* */
+ /* The following macros are variants of their FT_MEM_XXXX equivalents; */
+ /* they are used to set an _implicit_ `error' variable and return TRUE */
+ /* if an error occured (i.e. if 'error != 0'). */
+ /* */
-/**************************************************************************
- *
- * the following macros are variants of their FT_MEM_XXXX equivalents
- * they're used to set an _implicit_ 'error' variable and return TRUE
- * if an error occured (i.e. if 'error != 0')
- */
-
-
-
#define FT_ALLOC( _pointer_, _size_ ) \
FT_SET_ERROR( FT_MEM_ALLOC( _pointer_, _size_ ) )
@@ -276,16 +275,17 @@
#define FT_RENEW_ARRAY( _pointer_, _old_, _new_ ) \
FT_SET_ERROR( FT_MEM_RENEW_ARRAY( _pointer_, _old_, _new_ ) )
+#define FT_ALLOC_ARRAY( _pointer_, _count_, _type_ ) \
+ FT_SET_ERROR( FT_MEM_ALLOC( _pointer_, \
+ (_count_) * sizeof ( _type_ ) ) )
-#define FT_ALLOC_ARRAY( _pointer_, _count_, _type_ ) \
- FT_SET_ERROR( FT_MEM_ALLOC( _pointer_, \
- (_count_)*sizeof ( _type_ ) ) )
-
-#define FT_REALLOC_ARRAY( _pointer_, _old_, _new_, _type_ ) \
+#define FT_REALLOC_ARRAY( _pointer_, _old_, _new_, _type_ ) \
FT_SET_ERROR( FT_MEM_REALLOC( _pointer_, \
- (_old_)*sizeof ( _type_ ), \
- (_new_)*sizeof ( _type_ ) ) )
+ (_old_) * sizeof ( _type_ ), \
+ (_new_) * sizeof ( _type_ ) ) )
+
/* */
+
FT_END_HEADER
--- a/include/freetype/internal/ftobjs.h
+++ b/include/freetype/internal/ftobjs.h
@@ -4,7 +4,7 @@
/* */
/* The FreeType private base classes (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, */
@@ -86,36 +86,36 @@
/*************************************************************************/
/*************************************************************************/
- /* handle to a validation object */
- typedef struct FT_ValidatorRec_* FT_Validator;
+ /* handle to a validation object */
+ typedef struct FT_ValidatorRec_* FT_Validator;
- /**************************************************************************
- *
- * there are three distinct validation levels defined here:
- *
- * FT_VALIDATE_DEFAULT ::
- * a table that passes this validation level can be used reliably by
- * FreeType. It generally means that all offsets have been checked to
- * prevent out-of-bound reads, array counts are correct, etc..
- *
- *
- * FT_VALIDATE_TIGHT ::
- * a table that passes this validation level can be used reliably and
- * doesn't contain invalid data. For example, a charmap table that
- * returns invalid glyph indices will not pass, even though it can
- * be used with FreeType in default mode (the library will simply
- * return an error later when trying to load the glyph)
- *
- * it also check that fields that must be a multiple of 2, 4 or 8 don't
- * have incorrect values, etc..
- *
- *
- * FT_VALIDATE_PARANOID ::
- * only for font facists. Checks that a table follows the specification
- * 100%. Very few fonts will be able to pass this level anyway but it
- * can be useful for certain tools like font editors/converters..
- */
- typedef enum FT_ValidationLevel_
+
+ /*************************************************************************/
+ /* */
+ /* There are three distinct validation levels defined here: */
+ /* */
+ /* FT_VALIDATE_DEFAULT :: */
+ /* A table that passes this validation level can be used reliably by */
+ /* FreeType. It generally means that all offsets have been checked to */
+ /* prevent out-of-bound reads, array counts are correct, etc. */
+ /* */
+ /* FT_VALIDATE_TIGHT :: */
+ /* A table that passes this validation level can be used reliably and */
+ /* doesn't contain invalid data. For example, a charmap table that */
+ /* returns invalid glyph indices will not pass, even though it can */
+ /* be used with FreeType in default mode (the library will simply */
+ /* return an error later when trying to load the glyph). */
+ /* */
+ /* It also check that fields that must be a multiple of 2, 4, or 8 */
+ /* dont' have incorrect values, etc. */
+ /* */
+ /* FT_VALIDATE_PARANOID :: */
+ /* Only for font debugging. Checks that a table follows the */
+ /* specification by 100%. Very few fonts will be able to pass this */
+ /* level anyway but it can be useful for certain tools like font */
+ /* editors/converters. */
+ /* */
+ typedef enum FT_ValidationLevel_
{
FT_VALIDATE_DEFAULT = 0,
FT_VALIDATE_TIGHT,
@@ -124,20 +124,22 @@
} FT_ValidationLevel;
- /* validator structure */
- typedef struct FT_ValidatorRec_
+ /* validator structure */
+ typedef struct FT_ValidatorRec_
{
- const FT_Byte* base; /* address of table in memory */
- const FT_Byte* limit; /* 'base' + sizeof(table) in memory */
- FT_ValidationLevel level; /* validation level */
- FT_Error error; /* error returned. 0 means success */
+ const FT_Byte* base; /* address of table in memory */
+ const FT_Byte* limit; /* `base' + sizeof(table) in memory */
+ FT_ValidationLevel level; /* validation level */
+ FT_Error error; /* error returned. 0 means success */
jmp_buf jump_buffer; /* used for exception handling */
} FT_ValidatorRec;
-#define FT_VALIDATOR(x) ((FT_Validator)(x))
+#define FT_VALIDATOR( x ) ((FT_Validator)( x ))
+
+
FT_BASE( void )
ft_validator_init( FT_Validator valid,
const FT_Byte* base,
@@ -147,34 +149,34 @@
FT_BASE( FT_Int )
ft_validator_run( FT_Validator valid );
- /* sets the error field in a validator, then calls 'longjmp' to return */
- /* to high-level caller. Using 'setjmp/longjmp' avoids many stupid */
- /* error checks within the validation routines.. */
- /* */
+ /* Sets the error field in a validator, then calls `longjmp' to return */
+ /* to high-level caller. Using `setjmp/longjmp' avoids many stupid */
+ /* error checks within the validation routines. */
+ /* */
FT_BASE( void )
ft_validator_error( FT_Validator valid,
FT_Error error );
- /* calls ft_validate_error. Assumes that the 'valid' local variable holds */
- /* a pointer to the current validator object.. */
- /* */
-#define FT_INVALID(_error) ft_validator_error( valid, _error )
- /* called when a broken table is detected */
-#define FT_INVALID_TOO_SHORT FT_INVALID( FT_Err_Invalid_Table )
+ /* Calls ft_validate_error. Assumes that the `valid' local variable */
+ /* holds a pointer to the current validator object. */
+ /* */
+#define FT_INVALID( _error ) ft_validator_error( valid, _error )
- /* called when an invalid offset is detected */
-#define FT_INVALID_OFFSET FT_INVALID( FT_Err_Invalid_Offset )
+ /* called when a broken table is detected */
+#define FT_INVALID_TOO_SHORT FT_INVALID( FT_Err_Invalid_Table )
- /* called when an invalid format/value is detected */
-#define FT_INVALID_FORMAT FT_INVALID( FT_Err_Invalid_Table )
+ /* called when an invalid offset is detected */
+#define FT_INVALID_OFFSET FT_INVALID( FT_Err_Invalid_Offset )
- /* called when an invalid glyph index is detected */
-#define FT_INVALID_GLYPH_ID FT_INVALID( FT_Err_Invalid_Glyph_Index )
+ /* called when an invalid format/value is detected */
+#define FT_INVALID_FORMAT FT_INVALID( FT_Err_Invalid_Table )
- /* called when an invalid field value is detected */
-#define FT_INVALID_DATA FT_INVALID( FT_Err_Invalid_Table )
+ /* called when an invalid glyph index is detected */
+#define FT_INVALID_GLYPH_ID FT_INVALID( FT_Err_Invalid_Glyph_Index )
+ /* called when an invalid field value is detected */
+#define FT_INVALID_DATA FT_INVALID( FT_Err_Invalid_Table )
/*************************************************************************/
@@ -189,14 +191,14 @@
/*************************************************************************/
/*************************************************************************/
- /* handle to internal charmap object */
+ /* handle to internal charmap object */
typedef struct FT_CMapRec_* FT_CMap;
- /* handle to charmap class structure */
- typedef const struct FT_CMap_ClassRec_* FT_CMap_Class;
+ /* handle to charmap class structure */
+ typedef const struct FT_CMap_ClassRec_* FT_CMap_Class;
- /* internal charmap object structure */
- typedef struct FT_CMapRec_
+ /* internal charmap object structure */
+ typedef struct FT_CMapRec_
{
FT_CharMapRec charmap;
FT_CMap_Class clazz;
@@ -203,29 +205,34 @@
} FT_CMapRec;
- /* typecase any pointer to a charmap handle */
-#define FT_CMAP(x) ((FT_CMap)(x))
+ /* typecase any pointer to a charmap handle */
+#define FT_CMAP( x ) ((FT_CMap)( x ))
- /* obvious macros */
-#define FT_CMAP_PLATFORM_ID(x) FT_CMAP(x)->charmap.platform_id
-#define FT_CMAP_ENCODING_ID(x) FT_CMAP(x)->charmap.encoding_id
-#define FT_CMAP_ENCODING(x) FT_CMAP(x)->charmap.encoding
-#define FT_CMAP_FACE(x) FT_CMAP(x)->charmap.face
+ /* obvious macros */
+#define FT_CMAP_PLATFORM_ID( x ) FT_CMAP( x )->charmap.platform_id
+#define FT_CMAP_ENCODING_ID( x ) FT_CMAP( x )->charmap.encoding_id
+#define FT_CMAP_ENCODING( x ) FT_CMAP( x )->charmap.encoding
+#define FT_CMAP_FACE( x ) FT_CMAP( x )->charmap.face
- /* class method definitions */
- typedef FT_Error (*FT_CMap_InitFunc)( FT_CMap cmap,
- FT_Pointer init_data );
+ /* class method definitions */
+ typedef FT_Error
+ (*FT_CMap_InitFunc)( FT_CMap cmap,
+ FT_Pointer init_data );
- typedef void (*FT_CMap_DoneFunc)( FT_CMap cmap );
+ typedef void
+ (*FT_CMap_DoneFunc)( FT_CMap cmap );
- typedef FT_UInt (*FT_CMap_CharIndexFunc)( FT_CMap cmap,
- FT_UInt32 char_code );
+ typedef FT_UInt
+ (*FT_CMap_CharIndexFunc)( FT_CMap cmap,
+ FT_UInt32 char_code );
- typedef FT_UInt (*FT_CMap_CharNextFunc)( FT_CMap cmap,
- FT_UInt32 *achar_code );
+ typedef FT_UInt
+ (*FT_CMap_CharNextFunc)( FT_CMap cmap,
+ FT_UInt32 *achar_code );
- typedef struct FT_CMap_ClassRec_
+
+ typedef struct FT_CMap_ClassRec_
{
FT_UInt size;
FT_CMap_InitFunc init;
@@ -236,7 +243,7 @@
} FT_CMap_ClassRec;
- /* create a new charmap and add it to charmap->face */
+ /* create a new charmap and add it to charmap->face */
FT_BASE( FT_Error )
FT_CMap_New( FT_CMap_Class clazz,
FT_Pointer init_data,
@@ -243,7 +250,7 @@
FT_CharMap charmap,
FT_CMap *acmap );
- /* destroy a charmap (don't remove it from face's list though) */
+ /* destroy a charmap (don't remove it from face's list though) */
FT_BASE( void )
FT_CMap_Done( FT_CMap cmap );
@@ -330,11 +337,11 @@
/* */
typedef struct FT_Slot_InternalRec_
{
- FT_GlyphLoader loader;
- FT_Bool glyph_transformed;
- FT_Matrix glyph_matrix;
- FT_Vector glyph_delta;
- void* glyph_hints;
+ FT_GlyphLoader loader;
+ FT_Bool glyph_transformed;
+ FT_Matrix glyph_matrix;
+ FT_Vector glyph_delta;
+ void* glyph_hints;
} FT_GlyphSlot_InternalRec;
@@ -380,11 +387,12 @@
/* typecast an object to a FT_Module */
-#define FT_MODULE( x ) ((FT_Module)(x))
-#define FT_MODULE_CLASS( x ) FT_MODULE(x)->clazz
-#define FT_MODULE_LIBRARY( x ) FT_MODULE(x)->library
-#define FT_MODULE_MEMORY( x ) FT_MODULE(x)->memory
+#define FT_MODULE( x ) ((FT_Module)( x ))
+#define FT_MODULE_CLASS( x ) FT_MODULE( x )->clazz
+#define FT_MODULE_LIBRARY( x ) FT_MODULE( x )->library
+#define FT_MODULE_MEMORY( x ) FT_MODULE( x )->memory
+
#define FT_MODULE_IS_DRIVER( x ) ( FT_MODULE_CLASS( x )->module_flags & \
ft_module_font_driver )
@@ -397,13 +405,13 @@
#define FT_MODULE_IS_STYLER( x ) ( FT_MODULE_CLASS( x )->module_flags & \
ft_module_styler )
-#define FT_DRIVER_IS_SCALABLE( x ) ( FT_MODULE_CLASS(x)->module_flags & \
+#define FT_DRIVER_IS_SCALABLE( x ) ( FT_MODULE_CLASS( x )->module_flags & \
ft_module_driver_scalable )
-#define FT_DRIVER_USES_OUTLINES( x ) !( FT_MODULE_CLASS(x)->module_flags & \
+#define FT_DRIVER_USES_OUTLINES( x ) !( FT_MODULE_CLASS( x )->module_flags & \
ft_module_driver_no_outlines )
-#define FT_DRIVER_HAS_HINTER( x ) ( FT_MODULE_CLASS(x)->module_flags & \
+#define FT_DRIVER_HAS_HINTER( x ) ( FT_MODULE_CLASS( x )->module_flags & \
ft_module_driver_has_hinter )
@@ -587,13 +595,13 @@
/* */
typedef struct FT_DriverRec_
{
- FT_ModuleRec root;
- FT_Driver_Class clazz;
+ FT_ModuleRec root;
+ FT_Driver_Class clazz;
- FT_ListRec faces_list;
- void* extensions;
+ FT_ListRec faces_list;
+ void* extensions;
- FT_GlyphLoader glyph_loader;
+ FT_GlyphLoader glyph_loader;
} FT_DriverRec;
@@ -611,8 +619,8 @@
/*************************************************************************/
-#define FT_DEBUG_HOOK_TRUETYPE 0
-#define FT_DEBUG_HOOK_TYPE1 1
+#define FT_DEBUG_HOOK_TRUETYPE 0
+#define FT_DEBUG_HOOK_TYPE1 1
/*************************************************************************/
@@ -677,7 +685,7 @@
FT_Module auto_hinter;
FT_Byte* raster_pool; /* scan-line conversion */
- /* render pool */
+ /* render pool */
FT_ULong raster_pool_size; /* size of render pool in bytes */
FT_DebugHook_Func debug_hooks[4];
--- a/include/freetype/internal/ftstream.h
+++ b/include/freetype/internal/ftstream.h
@@ -2,9 +2,9 @@
/* */
/* ftstream.h */
/* */
-/* Stream handling(specification). */
+/* Stream handling (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, */
@@ -27,20 +27,15 @@
FT_BEGIN_HEADER
+ /* format of an 8-bit frame_op value: */
+ /* */
+ /* bit 76543210 */
+ /* xxxxxxes */
+ /* */
+ /* s is set to 1 if the value is signed. */
+ /* e is set to 1 if the value is little-endian. */
+ /* xxx is a command. */
-
-
-
-
-
-
-
-
- /* format of an 8-bit frame_op value = [ xxxxx | e | s ] */
- /* s is set to 1 if the value is signed, */
- /* e is set to 1 if the value is little-endian */
- /* xxxxx is a command */
-
#define FT_FRAME_OP_SHIFT 2
#define FT_FRAME_OP_SIGNED 1
#define FT_FRAME_OP_LITTLE 2
@@ -49,13 +44,13 @@
#define FT_MAKE_FRAME_OP( command, little, sign ) \
( ( command << FT_FRAME_OP_SHIFT ) | ( little << 1 ) | sign )
-#define FT_FRAME_OP_END 0
-#define FT_FRAME_OP_START 1 /* start a new frame */
-#define FT_FRAME_OP_BYTE 2 /* read 1-byte value */
-#define FT_FRAME_OP_SHORT 3 /* read 2-byte value */
-#define FT_FRAME_OP_LONG 4 /* read 4-byte value */
-#define FT_FRAME_OP_OFF3 5 /* read 3-byte value */
-#define FT_FRAME_OP_BYTES 6 /* read a bytes sequence */
+#define FT_FRAME_OP_END 0
+#define FT_FRAME_OP_START 1 /* start a new frame */
+#define FT_FRAME_OP_BYTE 2 /* read 1-byte value */
+#define FT_FRAME_OP_SHORT 3 /* read 2-byte value */
+#define FT_FRAME_OP_LONG 4 /* read 4-byte value */
+#define FT_FRAME_OP_OFF3 5 /* read 3-byte value */
+#define FT_FRAME_OP_BYTES 6 /* read a bytes sequence */
typedef enum FT_Frame_Op_
@@ -89,9 +84,9 @@
typedef struct FT_Frame_Field_
{
- FT_Byte value;
- FT_Byte size;
- FT_UShort offset;
+ FT_Byte value;
+ FT_Byte size;
+ FT_UShort offset;
} FT_Frame_Field;
@@ -99,6 +94,7 @@
/* Construct an FT_Frame_Field out of a structure type and a field name. */
/* The structure type must be set in the FT_STRUCTURE macro before */
/* calling the FT_FRAME_START() macro. */
+ /* */
#define FT_FIELD_SIZE( f ) \
(FT_Byte)sizeof ( ((FT_STRUCTURE*)0)->f )
@@ -146,120 +142,118 @@
#define FT_FRAME_SKIP_BYTES( count ) { ft_frame_skip, count, 0 }
-
/*************************************************************************/
/* */
- /* integer extraction macros -- the `buffer' parameter must ALWAYS be of */
+ /* Integer extraction macros -- the `buffer' parameter must ALWAYS be of */
/* type `char*' or equivalent (1-byte elements). */
/* */
-#define FT_BYTE_(p,i) (((const FT_Byte*)(p))[(i)])
-#define FT_INT8_(p,i) (((const FT_Char*)(p))[(i)])
+#define FT_BYTE_( p, i ) ( ((const FT_Byte*)(p))[(i)] )
+#define FT_INT8_( p, i ) ( ((const FT_Char*)(p))[(i)] )
-#define FT_INT16(x) ((FT_Int16)(x))
-#define FT_UINT16(x) ((FT_UInt16)(x))
-#define FT_INT32(x) ((FT_Int32)(x))
-#define FT_UINT32(x) ((FT_UInt32)(x))
+#define FT_INT16( x ) ( (FT_Int16)(x) )
+#define FT_UINT16( x ) ( (FT_UInt16)(x) )
+#define FT_INT32( x ) ( (FT_Int32)(x) )
+#define FT_UINT32( x ) ( (FT_UInt32)(x) )
-#define FT_BYTE_I16(p,i,s) (FT_INT16( FT_BYTE_(p,i)) << (s))
-#define FT_BYTE_U16(p,i,s) (FT_UINT16(FT_BYTE_(p,i)) << (s))
-#define FT_BYTE_I32(p,i,s) (FT_INT32( FT_BYTE_(p,i)) << (s))
-#define FT_BYTE_U32(p,i,s) (FT_UINT32(FT_BYTE_(p,i)) << (s))
+#define FT_BYTE_I16( p, i, s ) ( FT_INT16( FT_BYTE_( p, i ) ) << (s) )
+#define FT_BYTE_U16( p, i, s ) ( FT_UINT16( FT_BYTE_( p, i ) ) << (s) )
+#define FT_BYTE_I32( p, i, s ) ( FT_INT32( FT_BYTE_( p, i ) ) << (s) )
+#define FT_BYTE_U32( p, i, s ) ( FT_UINT32( FT_BYTE_( p, i ) ) << (s) )
-#define FT_INT8_I16(p,i,s) (FT_INT16( FT_INT8_(p,i)) << (s))
-#define FT_INT8_U16(p,i,s) (FT_UINT16(FT_INT8_(p,i)) << (s))
-#define FT_INT8_I32(p,i,s) (FT_INT32( FT_INT8_(p,i)) << (s))
-#define FT_INT8_U32(p,i,s) (FT_UINT32(FT_INT8_(p,i)) << (s))
+#define FT_INT8_I16( p, i, s ) ( FT_INT16( FT_INT8_( p, i ) ) << (s) )
+#define FT_INT8_U16( p, i, s ) ( FT_UINT16( FT_INT8_( p, i ) ) << (s) )
+#define FT_INT8_I32( p, i, s ) ( FT_INT32( FT_INT8_( p, i ) ) << (s) )
+#define FT_INT8_U32( p, i, s ) ( FT_UINT32( FT_INT8_( p, i ) ) << (s) )
-#define FT_PEEK_SHORT( p ) FT_INT16( FT_INT8_I16(p,0,8) | \
- FT_BYTE_I16(p,1,0) )
-#define FT_PEEK_USHORT( p ) FT_UINT16( FT_BYTE_U16(p,0,8) | \
- FT_BYTE_U16(p,1,0) )
+#define FT_PEEK_SHORT( p ) FT_INT16( FT_INT8_I16( p, 0, 8) | \
+ FT_BYTE_I16( p, 1, 0) )
-#define FT_PEEK_LONG( p ) FT_INT32( FT_INT8_I32(p,0,24) | \
- FT_BYTE_I32(p,1,16) | \
- FT_BYTE_I32(p,2, 8) | \
- FT_BYTE_I32(p,3, 0) )
+#define FT_PEEK_USHORT( p ) FT_UINT16( FT_BYTE_U16( p, 0, 8 ) | \
+ FT_BYTE_U16( p, 1, 0 ) )
-#define FT_PEEK_ULONG( p ) FT_UINT32( FT_BYTE_U32(p,0,24) | \
- FT_BYTE_U32(p,1,16) | \
- FT_BYTE_U32(p,2, 8) | \
- FT_BYTE_U32(p,3, 0) )
+#define FT_PEEK_LONG( p ) FT_INT32( FT_INT8_I32( p, 0, 24 ) | \
+ FT_BYTE_I32( p, 1, 16 ) | \
+ FT_BYTE_I32( p, 2, 8 ) | \
+ FT_BYTE_I32( p, 3, 0 ) )
-#define FT_PEEK_OFF3( p ) FT_INT32( FT_INT8_I32(p,0,16) | \
- FT_BYTE_I32(p,1, 8) | \
- FT_BYTE_I32(p,2, 0) )
+#define FT_PEEK_ULONG( p ) FT_UINT32( FT_BYTE_U32( p, 0, 24 ) | \
+ FT_BYTE_U32( p, 1, 16 ) | \
+ FT_BYTE_U32( p, 2, 8 ) | \
+ FT_BYTE_U32( p, 3, 0 ) )
-#define FT_PEEK_UOFF3( p ) FT_UINT32( FT_BYTE_U32(p,0,16) | \
- FT_BYTE_U32(p,1, 8) | \
- FT_BYTE_U32(p,2, 0) )
+#define FT_PEEK_OFF3( p ) FT_INT32( FT_INT8_I32( p, 0, 16 ) | \
+ FT_BYTE_I32( p, 1, 8 ) | \
+ FT_BYTE_I32( p, 2, 0 ) )
+#define FT_PEEK_UOFF3( p ) FT_UINT32( FT_BYTE_U32( p, 0, 16 ) | \
+ FT_BYTE_U32( p, 1, 8 ) | \
+ FT_BYTE_U32( p, 2, 0 ) )
-#define FT_PEEK_SHORT_LE( p ) FT_INT16( FT_INT8_I16(p,1,8) | \
- FT_BYTE_I16(p,0,0) )
+#define FT_PEEK_SHORT_LE( p ) FT_INT16( FT_INT8_I16( p, 1, 8 ) | \
+ FT_BYTE_I16( p, 0, 0 ) )
-#define FT_PEEK_USHORT_LE( p ) FT_UINT16( FT_BYTE_U16(p,1,8) | \
- FT_BYTE_U16(p,0,0) )
+#define FT_PEEK_USHORT_LE( p ) FT_UINT16( FT_BYTE_U16( p, 1, 8 ) | \
+ FT_BYTE_U16( p, 0, 0 ) )
-#define FT_PEEK_LONG_LE( p ) FT_INT32( FT_INT8_I32(p,3,24) | \
- FT_BYTE_I32(p,2,16) | \
- FT_BYTE_I32(p,1, 8) | \
- FT_BYTE_I32(p,0, 0) )
+#define FT_PEEK_LONG_LE( p ) FT_INT32( FT_INT8_I32( p, 3, 24 ) | \
+ FT_BYTE_I32( p, 2, 16 ) | \
+ FT_BYTE_I32( p, 1, 8 ) | \
+ FT_BYTE_I32( p, 0, 0 ) )
-#define FT_PEEK_ULONG_LE( p ) FT_UINT32( FT_BYTE_U32(p,3,24) | \
- FT_BYTE_U32(p,2,16) | \
- FT_BYTE_U32(p,1, 8) | \
- FT_BYTE_U32(p,0, 0) )
+#define FT_PEEK_ULONG_LE( p ) FT_UINT32( FT_BYTE_U32( p, 3, 24 ) | \
+ FT_BYTE_U32( p, 2, 16 ) | \
+ FT_BYTE_U32( p, 1, 8 ) | \
+ FT_BYTE_U32( p, 0, 0 ) )
-#define FT_PEEK_OFF3_LE( p ) FT_INT32( FT_INT8_I32(p,2,16) | \
- FT_BYTE_I32(p,1, 8) | \
- FT_BYTE_I32(p,0, 0) )
+#define FT_PEEK_OFF3_LE( p ) FT_INT32( FT_INT8_I32( p, 2, 16 ) | \
+ FT_BYTE_I32( p, 1, 8 ) | \
+ FT_BYTE_I32( p, 0, 0 ) )
-#define FT_PEEK_UOFF3_LE( p ) FT_UINT32( FT_BYTE_U32(p,2,16) | \
- FT_BYTE_U32(p,1, 8) | \
- FT_BYTE_U32(p,0, 0) )
+#define FT_PEEK_UOFF3_LE( p ) FT_UINT32( FT_BYTE_U32( p, 2, 16 ) | \
+ FT_BYTE_U32( p, 1, 8 ) | \
+ FT_BYTE_U32( p, 0, 0 ) )
-#define FT_NEXT_CHAR( buffer ) \
+#define FT_NEXT_CHAR( buffer ) \
( (signed char)*buffer++ )
-#define FT_NEXT_BYTE( buffer ) \
+#define FT_NEXT_BYTE( buffer ) \
( (unsigned char)*buffer++ )
-#define FT_NEXT_SHORT( buffer ) \
+#define FT_NEXT_SHORT( buffer ) \
( (short)( buffer += 2, FT_PEEK_SHORT( buffer - 2 ) ) )
#define FT_NEXT_USHORT( buffer ) \
( (unsigned short)( buffer += 2, FT_PEEK_USHORT( buffer - 2 ) ) )
-#define FT_NEXT_OFF3( buffer ) \
+#define FT_NEXT_OFF3( buffer ) \
( (long)( buffer += 3, FT_PEEK_OFF3( buffer - 3 ) ) )
-#define FT_NEXT_UOFF3( buffer ) \
+#define FT_NEXT_UOFF3( buffer ) \
( (unsigned long)( buffer += 3, FT_PEEK_UOFF3( buffer - 3 ) ) )
-#define FT_NEXT_LONG( buffer ) \
+#define FT_NEXT_LONG( buffer ) \
( (long)( buffer += 4, FT_PEEK_LONG( buffer - 4 ) ) )
-#define FT_NEXT_ULONG( buffer ) \
+#define FT_NEXT_ULONG( buffer ) \
( (unsigned long)( buffer += 4, FT_PEEK_ULONG( buffer - 4 ) ) )
-#define FT_NEXT_SHORT_LE( buffer ) \
+#define FT_NEXT_SHORT_LE( buffer ) \
( (short)( buffer += 2, FT_PEEK_SHORT_LE( buffer - 2 ) ) )
-#define FT_NEXT_USHORT_LE( buffer ) \
+#define FT_NEXT_USHORT_LE( buffer ) \
( (unsigned short)( buffer += 2, FT_PEEK_USHORT_LE( buffer - 2 ) ) )
-#define FT_NEXT_OFF3_LE( buffer ) \
+#define FT_NEXT_OFF3_LE( buffer ) \
( (long)( buffer += 3, FT_PEEK_OFF3_LE( buffer - 3 ) ) )
#define FT_NEXT_UOFF3_LE( buffer ) \
( (unsigned long)( buffer += 3, FT_PEEK_UOFF3_LE( buffer - 3 ) ) )
-
-#define FT_NEXT_LONG_LE( buffer ) \
+#define FT_NEXT_LONG_LE( buffer ) \
( (long)( buffer += 4, FT_PEEK_LONG_LE( buffer - 4 ) ) )
#define FT_NEXT_ULONG_LE( buffer ) \
@@ -272,15 +266,15 @@
/* */
#define FT_GET_MACRO( func, type ) ( (type)func( stream ) )
-#define FT_GET_CHAR() FT_GET_MACRO( FT_Stream_GetChar, FT_Char )
-#define FT_GET_BYTE() FT_GET_MACRO( FT_Stream_GetChar, FT_Byte )
-#define FT_GET_SHORT() FT_GET_MACRO( FT_Stream_GetShort, FT_Short )
-#define FT_GET_USHORT() FT_GET_MACRO( FT_Stream_GetShort, FT_UShort )
-#define FT_GET_OFF3() FT_GET_MACRO( FT_Stream_GetOffset, FT_Long )
-#define FT_GET_UOFF3() FT_GET_MACRO( FT_Stream_GetOffset, FT_ULong )
-#define FT_GET_LONG() FT_GET_MACRO( FT_Stream_GetLong, FT_Long )
-#define FT_GET_ULONG() FT_GET_MACRO( FT_Stream_GetLong, FT_ULong )
-#define FT_GET_TAG4() FT_GET_MACRO( FT_Stream_GetLong, FT_ULong )
+#define FT_GET_CHAR() FT_GET_MACRO( FT_Stream_GetChar, FT_Char )
+#define FT_GET_BYTE() FT_GET_MACRO( FT_Stream_GetChar, FT_Byte )
+#define FT_GET_SHORT() FT_GET_MACRO( FT_Stream_GetShort, FT_Short )
+#define FT_GET_USHORT() FT_GET_MACRO( FT_Stream_GetShort, FT_UShort )
+#define FT_GET_OFF3() FT_GET_MACRO( FT_Stream_GetOffset, FT_Long )
+#define FT_GET_UOFF3() FT_GET_MACRO( FT_Stream_GetOffset, FT_ULong )
+#define FT_GET_LONG() FT_GET_MACRO( FT_Stream_GetLong, FT_Long )
+#define FT_GET_ULONG() FT_GET_MACRO( FT_Stream_GetLong, FT_ULong )
+#define FT_GET_TAG4() FT_GET_MACRO( FT_Stream_GetLong, FT_ULong )
#define FT_GET_SHORT_LE() FT_GET_MACRO( FT_Stream_GetShortLE, FT_Short )
#define FT_GET_USHORT_LE() FT_GET_MACRO( FT_Stream_GetShortLE, FT_UShort )
@@ -306,11 +300,9 @@
#define FT_READ_ULONG_LE( var ) FT_READ_MACRO( FT_Stream_ReadLongLE, FT_ULong, var )
-
-
#ifndef FT_CONFIG_OPTION_NO_DEFAULT_SYSTEM
- /* initialize a stream for reading a regular system stream */
+ /* initialize a stream for reading a regular system stream */
FT_EXPORT( FT_Error )
FT_Stream_Open( FT_Stream stream,
const char* filepathname );
@@ -318,40 +310,39 @@
#endif /* FT_CONFIG_OPTION_NO_DEFAULT_SYSTEM */
- /* initialize a stream for reading in-memory data */
+ /* initialize a stream for reading in-memory data */
FT_BASE( void )
FT_Stream_OpenMemory( FT_Stream stream,
const FT_Byte* base,
FT_ULong size );
- /* close a stream (does not destroy the stream structure) */
+ /* close a stream (does not destroy the stream structure) */
FT_BASE( void )
FT_Stream_Close( FT_Stream stream );
- /* seek within a stream. position is relative to start of stream */
+ /* seek within a stream. position is relative to start of stream */
FT_BASE( FT_Error )
FT_Stream_Seek( FT_Stream stream,
FT_ULong pos );
- /* skip bytes in a stream */
+ /* skip bytes in a stream */
FT_BASE( FT_Error )
FT_Stream_Skip( FT_Stream stream,
FT_Long distance );
- /* return current stream position */
+ /* return current stream position */
FT_BASE( FT_Long )
FT_Stream_Pos( FT_Stream stream );
-
- /* read bytes from a stream into a user-allocated buffer, returns an */
- /* error if all bytes could not be read.. */
+ /* read bytes from a stream into a user-allocated buffer, returns an */
+ /* error if not all bytes could be read. */
FT_BASE( FT_Error )
FT_Stream_Read( FT_Stream stream,
FT_Byte* buffer,
FT_ULong count );
- /* read bytes from a stream at a given position */
+ /* read bytes from a stream at a given position */
FT_BASE( FT_Error )
FT_Stream_ReadAt( FT_Stream stream,
FT_ULong pos,
@@ -358,100 +349,98 @@
FT_Byte* buffer,
FT_ULong count );
- /* enter a frame of 'count' consecutive bytes in a stream. returns an */
- /* error if the frame could not be read/accessed. The caller can use */
- /* the FT_Stream_Get_XXX function to retrieve frame data without */
- /* error checks.. */
- /* */
- /* you must _always_ call FT_Stream_ExitFrame once you've entered */
- /* a stream frame !! */
- /* */
+ /* Enter a frame of `count' consecutive bytes in a stream. Returns an */
+ /* error if the frame could not be read/accessed. The caller can use */
+ /* the FT_Stream_Get_XXX functions to retrieve frame data without */
+ /* error checks. */
+ /* */
+ /* You must _always_ call FT_Stream_ExitFrame() once you have entered */
+ /* a stream frame! */
+ /* */
FT_BASE( FT_Error )
FT_Stream_EnterFrame( FT_Stream stream,
FT_ULong count );
- /* exit a stream frame.. */
- /* */
+ /* exit a stream frame */
FT_BASE( void )
FT_Stream_ExitFrame( FT_Stream stream );
- /* extract a stream frame. if the stream is disk-based, a heap block */
- /* is allocated and the frame bytes are read into it. if the stream */
- /* is memory-based, this function simply set a pointer to the data */
- /* */
- /* useful to optimize access to memory-based streams transparently. */
- /* */
- /* all extracted frames must be "freed" with a call to the function */
- /* FT_Stream_ReleaseFrame */
- /* */
+ /* Extract a stream frame. If the stream is disk-based, a heap block */
+ /* is allocated and the frame bytes are read into it. If the stream */
+ /* is memory-based, this function simply set a pointer to the data. */
+ /* */
+ /* Useful to optimize access to memory-based streams transparently. */
+ /* */
+ /* All extracted frames must be `freed` with a call to the function */
+ /* FT_Stream_ReleaseFrame(). */
+ /* */
FT_BASE( FT_Error )
FT_Stream_ExtractFrame( FT_Stream stream,
FT_ULong count,
FT_Byte** pbytes );
- /* release an extract frame (see FT_Stream_ExtractFrame) */
- /* */
+ /* release an extract frame (see FT_Stream_ExtractFrame) */
FT_BASE( void )
FT_Stream_ReleaseFrame( FT_Stream stream,
FT_Byte** pbytes );
- /* read a byte from an entered frame */
+ /* read a byte from an entered frame */
FT_BASE( FT_Char )
FT_Stream_GetChar( FT_Stream stream );
- /* read a 16-bit big-endian integer from an entered frame */
+ /* read a 16-bit big-endian integer from an entered frame */
FT_BASE( FT_Short )
FT_Stream_GetShort( FT_Stream stream );
- /* read a 24-bit big-endian integer from an entered frame */
+ /* read a 24-bit big-endian integer from an entered frame */
FT_BASE( FT_Long )
FT_Stream_GetOffset( FT_Stream stream );
- /* read a 32-bit big-endian integer from an entered frame */
+ /* read a 32-bit big-endian integer from an entered frame */
FT_BASE( FT_Long )
FT_Stream_GetLong( FT_Stream stream );
- /* read a 16-bit little-endian integer from an entered frame */
+ /* read a 16-bit little-endian integer from an entered frame */
FT_BASE( FT_Short )
FT_Stream_GetShortLE( FT_Stream stream );
- /* read a 32-bit little-endian integer from an entered frame */
+ /* read a 32-bit little-endian integer from an entered frame */
FT_BASE( FT_Long )
FT_Stream_GetLongLE( FT_Stream stream );
- /* read a byte from a stream */
+ /* read a byte from a stream */
FT_BASE( FT_Char )
FT_Stream_ReadChar( FT_Stream stream,
FT_Error* error );
- /* read a 16-bit big-endian integer from a stream */
+ /* read a 16-bit big-endian integer from a stream */
FT_BASE( FT_Short )
FT_Stream_ReadShort( FT_Stream stream,
FT_Error* error );
- /* read a 24-bit big-endian integer from a stream */
+ /* read a 24-bit big-endian integer from a stream */
FT_BASE( FT_Long )
FT_Stream_ReadOffset( FT_Stream stream,
FT_Error* error );
- /* read a 32-bit big-endian integer from a stream */
+ /* read a 32-bit big-endian integer from a stream */
FT_BASE( FT_Long )
FT_Stream_ReadLong( FT_Stream stream,
FT_Error* error );
- /* read a 16-bit little-endian integer from a stream */
+ /* read a 16-bit little-endian integer from a stream */
FT_BASE( FT_Short )
FT_Stream_ReadShortLE( FT_Stream stream,
FT_Error* error );
- /* read a 32-bit little-endian integer from a stream */
+ /* read a 32-bit little-endian integer from a stream */
FT_BASE( FT_Long )
FT_Stream_ReadLongLE( FT_Stream stream,
FT_Error* error );
- /* read a structure from a stream. The structure must be described */
- /* by an array of FT_Frame_Field records.. */
+ /* Read a structure from a stream. The structure must be described */
+ /* by an array of FT_Frame_Field records. */
FT_BASE( FT_Error )
FT_Stream_ReadFields( FT_Stream stream,
const FT_Frame_Field* fields,
@@ -458,7 +447,7 @@
void* structure );
-#define FT_STREAM_POS() \
+#define FT_STREAM_POS() \
FT_Stream_Pos( stream )
#define FT_STREAM_SEEK( position ) \
@@ -467,9 +456,9 @@
#define FT_STREAM_SKIP( distance ) \
FT_SET_ERROR( FT_Stream_Skip( stream, distance ) )
-#define FT_STREAM_READ( buffer, count ) \
- FT_SET_ERROR( FT_Stream_Read( stream, \
- (FT_Byte*)buffer, \
+#define FT_STREAM_READ( buffer, count ) \
+ FT_SET_ERROR( FT_Stream_Read( stream, \
+ (FT_Byte*)buffer, \
count ) )
#define FT_STREAM_READ_AT( position, buffer, count ) \
@@ -478,23 +467,22 @@
(FT_Byte*)buffer, \
count ) )
-#define FT_STREAM_READ_FIELDS( fields, object ) \
+#define FT_STREAM_READ_FIELDS( fields, object ) \
FT_SET_ERROR( FT_Stream_ReadFields( stream, fields, object ) )
-#define FT_FRAME_ENTER( size ) \
+#define FT_FRAME_ENTER( size ) \
FT_SET_ERROR( FT_Stream_EnterFrame( stream, size ) )
-#define FT_FRAME_EXIT() \
+#define FT_FRAME_EXIT() \
FT_Stream_ExitFrame( stream )
#define FT_FRAME_EXTRACT( size, bytes ) \
FT_SET_ERROR( FT_Stream_ExtractFrame( stream, size, \
- (FT_Byte**)&(bytes) ) )
+ (FT_Byte**)&(bytes) ) )
-#define FT_FRAME_RELEASE( bytes ) \
+#define FT_FRAME_RELEASE( bytes ) \
FT_Stream_ReleaseFrame( stream, (FT_Byte**)&(bytes) )
-
FT_END_HEADER
--- a/include/freetype/internal/fttrace.h
+++ b/include/freetype/internal/fttrace.h
@@ -1,3 +1,21 @@
+/***************************************************************************/
+/* */
+/* fttrace.h */
+/* */
+/* Tracing handling (specification only). */
+/* */
+/* 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. */
+/* */
+/***************************************************************************/
+
+
/* definitions of trace levels for FreeType 2 */
/* the first level must always be `trace_any' */
@@ -73,3 +91,6 @@
/* PCF fonts component */
FT_TRACE_DEF( pcfdriver )
FT_TRACE_DEF( pcfread )
+
+
+/* END */
--- a/include/freetype/internal/internal.h
+++ b/include/freetype/internal/internal.h
@@ -4,7 +4,7 @@
/* */
/* Internal header files (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, */
--- a/include/freetype/internal/psaux.h
+++ b/include/freetype/internal/psaux.h
@@ -5,7 +5,7 @@
/* Auxiliary functions and data structures related to PostScript fonts */
/* (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, */
@@ -41,6 +41,7 @@
typedef struct PS_TableRec_* PS_Table;
typedef const struct PS_Table_FuncsRec_* PS_Table_Funcs;
+
/*************************************************************************/
/* */
/* <Struct> */
@@ -162,8 +163,8 @@
/* a simple structure used to identify tokens */
typedef struct T1_TokenRec_
{
- FT_Byte* start; /* first character of token in input stream */
- FT_Byte* limit; /* first character after the token */
+ FT_Byte* start; /* first character of token in input stream */
+ FT_Byte* limit; /* first character after the token */
T1_TokenType type; /* type of token */
} T1_TokenRec;
@@ -186,6 +187,7 @@
} T1_FieldType;
+
typedef enum T1_FieldLocation_
{
T1_FIELD_LOCATION_CID_INFO,
@@ -229,12 +231,12 @@
0, 0 \
},
-#define T1_NEW_CALLBACK_FIELD( _ident, _reader ) \
- { \
- _ident, T1CODE, T1_FIELD_TYPE_CALLBACK, \
+#define T1_NEW_CALLBACK_FIELD( _ident, _reader ) \
+ { \
+ _ident, T1CODE, T1_FIELD_TYPE_CALLBACK, \
(T1_Field_ParseFunc)_reader, \
- 0, 0, \
- 0, 0 \
+ 0, 0, \
+ 0, 0 \
},
#define T1_NEW_TABLE_FIELD( _ident, _type, _fname, _max ) \
@@ -257,40 +259,38 @@
},
-#define T1_FIELD_TYPE_BOOL( _ident, _fname ) \
+#define T1_FIELD_TYPE_BOOL( _ident, _fname ) \
T1_NEW_SIMPLE_FIELD( _ident, T1_FIELD_TYPE_BOOL, _fname )
-#define T1_FIELD_NUM( _ident, _fname ) \
+#define T1_FIELD_NUM( _ident, _fname ) \
T1_NEW_SIMPLE_FIELD( _ident, T1_FIELD_TYPE_INTEGER, _fname )
-#define T1_FIELD_FIXED( _ident, _fname ) \
+#define T1_FIELD_FIXED( _ident, _fname ) \
T1_NEW_SIMPLE_FIELD( _ident, T1_FIELD_TYPE_FIXED, _fname )
-#define T1_FIELD_STRING( _ident, _fname ) \
+#define T1_FIELD_STRING( _ident, _fname ) \
T1_NEW_SIMPLE_FIELD( _ident, T1_FIELD_TYPE_STRING, _fname )
-#define T1_FIELD_NUM_TABLE( _ident, _fname, _fmax ) \
- T1_NEW_TABLE_FIELD( _ident, T1_FIELD_TYPE_INTEGER_ARRAY, \
- _fname, _fmax )
+#define T1_FIELD_NUM_TABLE( _ident, _fname, _fmax ) \
+ T1_NEW_TABLE_FIELD( _ident, T1_FIELD_TYPE_INTEGER_ARRAY, \
+ _fname, _fmax )
-#define T1_FIELD_FIXED_TABLE( _ident, _fname, _fmax ) \
- T1_NEW_TABLE_FIELD( _ident, T1_FIELD_TYPE_FIXED_ARRAY, \
+#define T1_FIELD_FIXED_TABLE( _ident, _fname, _fmax ) \
+ T1_NEW_TABLE_FIELD( _ident, T1_FIELD_TYPE_FIXED_ARRAY, \
+ _fname, _fmax )
+
+#define T1_FIELD_NUM_TABLE2( _ident, _fname, _fmax ) \
+ T1_NEW_TABLE_FIELD2( _ident, T1_FIELD_TYPE_INTEGER_ARRAY, \
_fname, _fmax )
-#define T1_FIELD_NUM_TABLE2( _ident, _fname, _fmax ) \
- T1_NEW_TABLE_FIELD2( _ident, T1_FIELD_TYPE_INTEGER_ARRAY, \
- _fname, _fmax )
-
#define T1_FIELD_FIXED_TABLE2( _ident, _fname, _fmax ) \
- T1_NEW_TABLE_FIELD2( _ident, T1_FIELD_TYPE_FIXED_ARRAY, \
- _fname, _fmax )
+ T1_NEW_TABLE_FIELD2( _ident, T1_FIELD_TYPE_FIXED_ARRAY, \
+ _fname, _fmax )
-#define T1_FIELD_CALLBACK( _ident, _name ) \
+#define T1_FIELD_CALLBACK( _ident, _name ) \
T1_NEW_CALLBACK_FIELD( _ident, _name )
-
-
/*************************************************************************/
/*************************************************************************/
/***** *****/
@@ -305,9 +305,9 @@
{
void
(*init)( PS_Parser parser,
- FT_Byte* base,
- FT_Byte* limit,
- FT_Memory memory );
+ FT_Byte* base,
+ FT_Byte* limit,
+ FT_Memory memory );
void
(*done)( PS_Parser parser );
@@ -321,16 +321,16 @@
(*to_int)( PS_Parser parser );
FT_Fixed
(*to_fixed)( PS_Parser parser,
- FT_Int power_ten );
+ FT_Int power_ten );
FT_Int
(*to_coord_array)( PS_Parser parser,
- FT_Int max_coords,
- FT_Short* coords );
+ FT_Int max_coords,
+ FT_Short* coords );
FT_Int
(*to_fixed_array)( PS_Parser parser,
- FT_Int max_values,
- FT_Fixed* values,
- FT_Int power_ten );
+ FT_Int max_values,
+ FT_Fixed* values,
+ FT_Int power_ten );
void
(*to_token)( PS_Parser parser,
@@ -338,22 +338,22 @@
void
(*to_token_array)( PS_Parser parser,
T1_Token tokens,
- FT_UInt max_tokens,
- FT_Int* pnum_tokens );
+ FT_UInt max_tokens,
+ FT_Int* pnum_tokens );
FT_Error
(*load_field)( PS_Parser parser,
const T1_Field field,
- void** objects,
- FT_UInt max_objects,
- FT_ULong* pflags );
+ void** objects,
+ FT_UInt max_objects,
+ FT_ULong* pflags );
FT_Error
(*load_field_table)( PS_Parser parser,
const T1_Field field,
- void** objects,
- FT_UInt max_objects,
- FT_ULong* pflags );
+ void** objects,
+ FT_UInt max_objects,
+ FT_ULong* pflags );
} PS_Parser_FuncsRec;
@@ -379,13 +379,13 @@
/* */
/* funcs :: A table of functions for the parser. */
/* */
- typedef struct PS_ParserRec_
+ typedef struct PS_ParserRec_
{
- FT_Byte* cursor;
- FT_Byte* base;
- FT_Byte* limit;
- FT_Error error;
- FT_Memory memory;
+ FT_Byte* cursor;
+ FT_Byte* base;
+ FT_Byte* limit;
+ FT_Error error;
+ FT_Memory memory;
PS_Parser_FuncsRec funcs;
@@ -392,7 +392,6 @@
} PS_ParserRec;
-
/*************************************************************************/
/*************************************************************************/
/***** *****/
@@ -411,14 +410,14 @@
typedef void
(*T1_Builder_Add_Point_Func)( T1_Builder builder,
- FT_Pos x,
- FT_Pos y,
- FT_Byte flag );
+ FT_Pos x,
+ FT_Pos y,
+ FT_Byte flag );
typedef FT_Error
(*T1_Builder_Add_Point1_Func)( T1_Builder builder,
- FT_Pos x,
- FT_Pos y );
+ FT_Pos x,
+ FT_Pos y );
typedef FT_Error
(*T1_Builder_Add_Contour_Func)( T1_Builder builder );
@@ -425,8 +424,8 @@
typedef FT_Error
(*T1_Builder_Start_Point_Func)( T1_Builder builder,
- FT_Pos x,
- FT_Pos y );
+ FT_Pos x,
+ FT_Pos y );
typedef void
(*T1_Builder_Close_Contour_Func)( T1_Builder builder );
@@ -514,35 +513,35 @@
/* */
typedef struct T1_BuilderRec_
{
- FT_Memory memory;
- FT_Face face;
- FT_GlyphSlot glyph;
- FT_GlyphLoader loader;
- FT_Outline* base;
- FT_Outline* current;
+ FT_Memory memory;
+ FT_Face face;
+ FT_GlyphSlot glyph;
+ FT_GlyphLoader loader;
+ FT_Outline* base;
+ FT_Outline* current;
- FT_Vector last;
+ FT_Vector last;
- FT_Fixed scale_x;
- FT_Fixed scale_y;
+ FT_Fixed scale_x;
+ FT_Fixed scale_y;
- FT_Pos pos_x;
- FT_Pos pos_y;
+ FT_Pos pos_x;
+ FT_Pos pos_y;
- FT_Vector left_bearing;
- FT_Vector advance;
+ FT_Vector left_bearing;
+ FT_Vector advance;
- FT_BBox bbox; /* bounding box */
- FT_Bool path_begun;
- FT_Bool load_points;
- FT_Bool no_recurse;
- FT_Bool shift;
+ FT_BBox bbox; /* bounding box */
+ FT_Bool path_begun;
+ FT_Bool load_points;
+ FT_Bool no_recurse;
+ FT_Bool shift;
- FT_Error error; /* only used for memory errors */
- FT_Bool metrics_only;
+ FT_Error error; /* only used for memory errors */
+ FT_Bool metrics_only;
- void* hints_funcs; /* hinter-specific */
- void* hints_globals; /* hinter-specific */
+ void* hints_funcs; /* hinter-specific */
+ void* hints_globals; /* hinter-specific */
T1_Builder_FuncsRec funcs;
@@ -598,22 +597,22 @@
typedef struct T1_Decoder_FuncsRec_
{
FT_Error
- (*init) ( T1_Decoder decoder,
- FT_Face face,
- FT_Size size,
- FT_GlyphSlot slot,
- FT_Byte** glyph_names,
- PS_Blend blend,
- FT_Bool hinting,
- T1_Decoder_Callback callback );
+ (*init)( T1_Decoder decoder,
+ FT_Face face,
+ FT_Size size,
+ FT_GlyphSlot slot,
+ FT_Byte** glyph_names,
+ PS_Blend blend,
+ FT_Bool hinting,
+ T1_Decoder_Callback callback );
void
- (*done) ( T1_Decoder decoder );
+ (*done)( T1_Decoder decoder );
FT_Error
(*parse_charstrings)( T1_Decoder decoder,
- FT_Byte* base,
- FT_UInt len );
+ FT_Byte* base,
+ FT_UInt len );
} T1_Decoder_FuncsRec;
@@ -651,6 +650,7 @@
} T1_DecoderRec;
+
/*************************************************************************/
/*************************************************************************/
/***** *****/
@@ -692,11 +692,11 @@
FT_Offset length,
FT_UShort seed );
- T1_CMap_Classes t1_cmap_classes;
+ T1_CMap_Classes t1_cmap_classes;
} PSAux_ServiceRec, *PSAux_Service;
- /* backwards-compatible type definition */
+ /* backwards-compatible type definition */
typedef PSAux_ServiceRec PSAux_Interface;
FT_END_HEADER