diff --git a/ChangeLog b/ChangeLog index 0ed2b29cf..85889a37a 100644 --- 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,12 +408,16 @@ * 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". - - * Renaming "ft_glyph_own_bitmap" into "FT_GLYPH_OWN_BITMAP". + (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. 2002-02-22 Werner Lemberg @@ -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. diff --git a/include/freetype/internal/autohint.h b/include/freetype/internal/autohint.h index 161a8b5f2..cf1568e45 100644 --- 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 @@ FT_BEGIN_HEADER /* */ /* 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(). */ /* */ /* */ /* hinter :: A handle to the source auto-hinter. */ @@ -102,10 +102,10 @@ FT_BEGIN_HEADER /* 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 @@ FT_BEGIN_HEADER /* */ /* */ /* 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. */ /* */ /* */ @@ -124,8 +124,8 @@ FT_BEGIN_HEADER /* 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 @@ FT_BEGIN_HEADER /* 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 @@ FT_BEGIN_HEADER /* */ /* */ /* face :: A handle to the face. */ + /* */ /* glyph_index :: The glyph index. */ + /* */ /* load_flags :: The load flags. */ /* */ /* */ @@ -187,13 +189,14 @@ FT_BEGIN_HEADER /* */ 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 #endif /* __AUTOHINT_H__ */ diff --git a/include/freetype/internal/cfftypes.h b/include/freetype/internal/cfftypes.h index f243ac615..ab9510917 100644 --- 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 @@ FT_BEGIN_HEADER /*************************************************************************/ /* */ /* */ - /* CFF_IndexRec */ + /* CFF_IndexRec */ /* */ /* */ /* A structure used to model a CFF Index table. */ @@ -184,16 +184,16 @@ FT_BEGIN_HEADER } 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; diff --git a/include/freetype/internal/fnttypes.h b/include/freetype/internal/fnttypes.h index fbefa4b21..54e37ec4c 100644 --- 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 @@ FT_BEGIN_HEADER 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 @@ FT_BEGIN_HEADER typedef struct FNT_SizeRec_ { FT_SizeRec root; - FNT_Font font; + FNT_Font font; } FNT_SizeRec, *FNT_Size; diff --git a/include/freetype/internal/ftdebug.h b/include/freetype/internal/ftdebug.h index 3d1100abd..039b17b5d 100644 --- 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 @@ FT_BEGIN_HEADER /*************************************************************************/ /* */ - /* 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 @@ FT_BEGIN_HEADER #define FT_TRACE_DEF( x ) trace_ ## x , - /* defining the enums */ + /* defining the enumeration */ typedef enum { #include FT_INTERNAL_TRACE_H @@ -57,7 +57,7 @@ FT_BEGIN_HEADER /* 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 @@ FT_BEGIN_HEADER /*************************************************************************/ /* */ - /* Define the FT_TRACE macro */ + /* Define the FT_TRACE macro */ /* */ /* IMPORTANT! */ /* */ @@ -128,7 +128,7 @@ FT_BEGIN_HEADER /*************************************************************************/ /* */ - /* Define the FT_ASSERT macro */ + /* Define the FT_ASSERT macro */ /* */ /*************************************************************************/ @@ -170,7 +170,8 @@ FT_BEGIN_HEADER #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++) */ diff --git a/include/freetype/internal/ftdriver.h b/include/freetype/internal/ftdriver.h index bd7da8677..875d0909d 100644 --- 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_BEGIN_HEADER 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 @@ FT_BEGIN_HEADER /* */ 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; diff --git a/include/freetype/internal/ftgloadr.h b/include/freetype/internal/ftgloadr.h index 82066829c..d66d10b19 100644 --- a/include/freetype/internal/ftgloadr.h +++ b/include/freetype/internal/ftgloadr.h @@ -1,22 +1,30 @@ -#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 #include FT_FREETYPE_H -FT_BEGIN_HEADER - /*************************************************************************/ - /*************************************************************************/ - /*************************************************************************/ - /**** ****/ - /**** ****/ - /**** G L Y P H L O A D E R ****/ - /**** ****/ - /**** ****/ - /*************************************************************************/ - /*************************************************************************/ - /*************************************************************************/ +FT_BEGIN_HEADER /*************************************************************************/ @@ -63,9 +71,9 @@ FT_BEGIN_HEADER 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_BEGIN_HEADER } 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 */ diff --git a/include/freetype/internal/ftmemory.h b/include/freetype/internal/ftmemory.h index a4b40b47d..821d8c421 100644 --- 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,80 +183,79 @@ FT_BEGIN_HEADER #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 - */ + /*************************************************************************/ + /* */ + /* 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_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_) ) - - - -/************************************************************************** - * - * 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') - */ + 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'). */ + /* */ #define FT_ALLOC( _pointer_, _size_ ) \ FT_SET_ERROR( FT_MEM_ALLOC( _pointer_, _size_ ) ) @@ -276,17 +275,18 @@ FT_BEGIN_HEADER #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 #endif /* __FTMEMORY_H__ */ diff --git a/include/freetype/internal/ftobjs.h b/include/freetype/internal/ftobjs.h index 15becd1bc..4f2cbad80 100644 --- 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 @@ FT_BEGIN_HEADER /*************************************************************************/ /*************************************************************************/ - /* 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,19 +124,21 @@ FT_BEGIN_HEADER } 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, @@ -147,34 +149,34 @@ FT_BEGIN_HEADER 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,43 +191,48 @@ FT_BEGIN_HEADER /*************************************************************************/ /*************************************************************************/ - /* 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; } 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,14 +243,14 @@ FT_BEGIN_HEADER } 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, 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 @@ FT_BEGIN_HEADER /* */ 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,10 +387,11 @@ FT_BEGIN_HEADER /* 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 @@ FT_BEGIN_HEADER #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 @@ FT_BEGIN_HEADER /* */ 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 @@ FT_BEGIN_HEADER /*************************************************************************/ -#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_BEGIN_HEADER 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]; diff --git a/include/freetype/internal/ftstream.h b/include/freetype/internal/ftstream.h index a9c4450a3..ead5e09bc 100644 --- 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,19 +27,14 @@ FT_BEGIN_HEADER - - - - - - - - - - /* 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 */ + /* 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. */ #define FT_FRAME_OP_SHIFT 2 #define FT_FRAME_OP_SIGNED 1 @@ -49,13 +44,13 @@ FT_BEGIN_HEADER #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 @@ FT_BEGIN_HEADER 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 @@ FT_BEGIN_HEADER /* 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 @@ FT_BEGIN_HEADER #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_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_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_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_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_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_LE( p ) FT_INT16( FT_INT8_I16(p,1,8) | \ - FT_BYTE_I16(p,0,0) ) +#define FT_PEEK_SHORT( p ) FT_INT16( FT_INT8_I16( p, 0, 8) | \ + FT_BYTE_I16( p, 1, 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( p ) FT_UINT16( FT_BYTE_U16( p, 0, 8 ) | \ + FT_BYTE_U16( p, 1, 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( 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_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( 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_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( 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_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( 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_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_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_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 @@ FT_BEGIN_HEADER /* */ #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 @@ FT_BEGIN_HEADER #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,147 +310,144 @@ FT_BEGIN_HEADER #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, 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, void* structure ); -#define FT_STREAM_POS() \ +#define FT_STREAM_POS() \ FT_Stream_Pos( stream ) #define FT_STREAM_SEEK( position ) \ @@ -467,9 +456,9 @@ FT_BEGIN_HEADER #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,25 +467,24 @@ FT_BEGIN_HEADER (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 #endif /* __FTSTREAM_H__ */ diff --git a/include/freetype/internal/fttrace.h b/include/freetype/internal/fttrace.h index f1e9d6eb9..6295d127c 100644 --- 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 @@ FT_TRACE_DEF( winfnt ) /* PCF fonts component */ FT_TRACE_DEF( pcfdriver ) FT_TRACE_DEF( pcfread ) + + +/* END */ diff --git a/include/freetype/internal/internal.h b/include/freetype/internal/internal.h index 054413c97..3d423835e 100644 --- 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, */ diff --git a/include/freetype/internal/psaux.h b/include/freetype/internal/psaux.h index 123f2393b..a2cf527a8 100644 --- 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 @@ FT_BEGIN_HEADER typedef struct PS_TableRec_* PS_Table; typedef const struct PS_Table_FuncsRec_* PS_Table_Funcs; + /*************************************************************************/ /* */ /* */ @@ -162,8 +163,8 @@ FT_BEGIN_HEADER /* 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 @@ FT_BEGIN_HEADER } T1_FieldType; + typedef enum T1_FieldLocation_ { T1_FIELD_LOCATION_CID_INFO, @@ -229,12 +231,12 @@ FT_BEGIN_HEADER 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 @@ FT_BEGIN_HEADER }, -#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, \ - _fname, _fmax ) +#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 @@ FT_BEGIN_HEADER { 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 @@ FT_BEGIN_HEADER (*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 @@ FT_BEGIN_HEADER 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,20 +379,19 @@ FT_BEGIN_HEADER /* */ /* 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; } PS_ParserRec; - /*************************************************************************/ /*************************************************************************/ /***** *****/ @@ -411,22 +410,22 @@ FT_BEGIN_HEADER 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 ); 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 @@ FT_BEGIN_HEADER /* */ 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 @@ FT_BEGIN_HEADER 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 @@ FT_BEGIN_HEADER } T1_DecoderRec; + /*************************************************************************/ /*************************************************************************/ /***** *****/ @@ -692,11 +692,11 @@ FT_BEGIN_HEADER 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