formatting

This commit is contained in:
Werner Lemberg 2002-03-29 23:23:28 +00:00
parent b1e6e59782
commit 78e004e843
13 changed files with 567 additions and 522 deletions

View File

@ -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 <wl@gnu.org>
@ -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.

View File

@ -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, */
@ -89,7 +89,7 @@ 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 (). */
/* FT_AutoHinter_GlobalDoneFunc(). */
/* */
/* <Input> */
/* hinter :: A handle to the source auto-hinter. */
@ -102,7 +102,7 @@ FT_BEGIN_HEADER
/* global_len :: The size in bytes of the global hints. */
/* */
typedef void
(*FT_AutoHinter_GlobalGetFunc )( FT_AutoHinter hinter,
(*FT_AutoHinter_GlobalGetFunc)( FT_AutoHinter hinter,
FT_Face face,
void** global_hints,
long* global_len );
@ -115,7 +115,7 @@ FT_BEGIN_HEADER
/* */
/* <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,7 +124,7 @@ FT_BEGIN_HEADER
/* global :: A pointer to retrieved global hints to discard. */
/* */
typedef void
(*FT_AutoHinter_GlobalDoneFunc )( FT_AutoHinter hinter,
(*FT_AutoHinter_GlobalDoneFunc)( FT_AutoHinter hinter,
void* global );
@ -144,7 +144,7 @@ FT_BEGIN_HEADER
/* face :: A handle to the face. */
/* */
typedef void
(*FT_AutoHinter_GlobalResetFunc )( FT_AutoHinter hinter,
(*FT_AutoHinter_GlobalResetFunc)( FT_AutoHinter hinter,
FT_Face face );
@ -159,7 +159,9 @@ FT_BEGIN_HEADER
/* */
/* <Input> */
/* face :: A handle to the face. */
/* */
/* glyph_index :: The glyph index. */
/* */
/* load_flags :: The load flags. */
/* */
/* <Note> */
@ -194,6 +196,7 @@ FT_BEGIN_HEADER
} FT_AutoHinter_ServiceRec, *FT_AutoHinter_Service;
FT_END_HEADER
#endif /* __AUTOHINT_H__ */

View File

@ -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, */

View File

@ -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, */

View File

@ -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
@ -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++) */

View File

@ -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, */

View File

@ -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 <ft2build.h>
#include FT_FREETYPE_H
FT_BEGIN_HEADER
/*************************************************************************/
/*************************************************************************/
/*************************************************************************/
/**** ****/
/**** ****/
/**** G L Y P H L O A D E R ****/
/**** ****/
/**** ****/
/*************************************************************************/
/*************************************************************************/
/*************************************************************************/
FT_BEGIN_HEADER
/*************************************************************************/
@ -109,7 +117,7 @@ FT_BEGIN_HEADER
FT_GlyphLoader_Rewind( FT_GlyphLoader loader );
/* check that there is enough room to add 'n_points' and 'n_contours' */
/* to the glyph loader.. */
/* to the glyph loader */
FT_BASE( FT_Error )
FT_GlyphLoader_CheckPoints( FT_GlyphLoader loader,
FT_UInt n_points,
@ -136,6 +144,10 @@ FT_BEGIN_HEADER
/* */
FT_END_HEADER
#endif /* __FT_INTERNAL_GLYPH_LOADER_H__ */
#endif /* __FTGLOADR_H__ */
/* END */

View File

@ -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_ ) \
#define FT_MEM_ALLOC( _pointer_, _size_ ) \
FT_Alloc_Debug( memory, _size_, \
(void**)&(_pointer_), __FILE__, __LINE__ )
# define FT_MEM_REALLOC( _pointer_, _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..
*/
/*************************************************************************/
/* */
/* The following functions macros expect 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_)) )
FT_MEM_ALLOC( _pointer_, sizeof ( *(_pointer_) ) )
#define FT_MEM_NEW_ARRAY( _pointer_, _count_ ) \
FT_MEM_ALLOC( _pointer_, (_count_)*sizeof(*(_pointer_)) )
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_)) )
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_) )
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_ ) ) )
(_count_) * sizeof ( _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__ */

View File

@ -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, */
@ -89,32 +89,32 @@ FT_BEGIN_HEADER
/* 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..
*/
/*************************************************************************/
/* */
/* 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,
@ -128,7 +128,7 @@ FT_BEGIN_HEADER
typedef struct FT_ValidatorRec_
{
const FT_Byte* base; /* address of table in memory */
const FT_Byte* limit; /* 'base' + sizeof(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 */
@ -136,7 +136,9 @@ FT_BEGIN_HEADER
} 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,18 +149,19 @@ 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.. */
/* 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 )
#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 )
@ -176,7 +179,6 @@ FT_BEGIN_HEADER
#define FT_INVALID_DATA FT_INVALID( FT_Err_Invalid_Table )
/*************************************************************************/
/*************************************************************************/
/*************************************************************************/
@ -204,27 +206,32 @@ FT_BEGIN_HEADER
} FT_CMapRec;
/* typecase any pointer to a charmap handle */
#define FT_CMAP(x) ((FT_CMap)(x))
#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
#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,
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,
typedef FT_UInt
(*FT_CMap_CharIndexFunc)( FT_CMap cmap,
FT_UInt32 char_code );
typedef FT_UInt (*FT_CMap_CharNextFunc)( FT_CMap cmap,
typedef FT_UInt
(*FT_CMap_CharNextFunc)( FT_CMap cmap,
FT_UInt32 *achar_code );
typedef struct FT_CMap_ClassRec_
{
FT_UInt size;
@ -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 )

View File

@ -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
@ -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,79 +142,78 @@ 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 ) \
@ -258,7 +253,6 @@ FT_BEGIN_HEADER
#define FT_NEXT_UOFF3_LE( buffer ) \
( (unsigned long)( buffer += 3, FT_PEEK_UOFF3_LE( buffer - 3 ) ) )
#define FT_NEXT_LONG_LE( buffer ) \
( (long)( buffer += 4, FT_PEEK_LONG_LE( buffer - 4 ) ) )
@ -306,8 +300,6 @@ 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 */
@ -343,9 +335,8 @@ FT_BEGIN_HEADER
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.. */
/* error if not all bytes could be read. */
FT_BASE( FT_Error )
FT_Stream_Read( FT_Stream stream,
FT_Byte* buffer,
@ -358,31 +349,30 @@ FT_BEGIN_HEADER
FT_Byte* buffer,
FT_ULong count );
/* enter a frame of 'count' consecutive bytes in a stream. returns an */
/* 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.. */
/* the FT_Stream_Get_XXX functions to retrieve frame data without */
/* error checks. */
/* */
/* you must _always_ call FT_Stream_ExitFrame once you've entered */
/* a stream frame !! */
/* 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 */
/* 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. */
/* Useful to optimize access to memory-based streams transparently. */
/* */
/* all extracted frames must be "freed" with a call to the function */
/* FT_Stream_ReleaseFrame */
/* 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,
@ -390,7 +380,6 @@ FT_BEGIN_HEADER
FT_Byte** pbytes );
/* release an extract frame (see FT_Stream_ExtractFrame) */
/* */
FT_BASE( void )
FT_Stream_ReleaseFrame( FT_Stream stream,
FT_Byte** pbytes );
@ -450,8 +439,8 @@ FT_BEGIN_HEADER
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,
@ -496,7 +485,6 @@ FT_BEGIN_HEADER
FT_Stream_ReleaseFrame( stream, (FT_Byte**)&(bytes) )
FT_END_HEADER
#endif /* __FTSTREAM_H__ */

View File

@ -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 */

View File

@ -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, */

View File

@ -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;
/*************************************************************************/
/* */
/* <Struct> */
@ -186,6 +187,7 @@ FT_BEGIN_HEADER
} T1_FieldType;
typedef enum T1_FieldLocation_
{
T1_FIELD_LOCATION_CID_INFO,
@ -289,8 +291,6 @@ FT_BEGIN_HEADER
T1_NEW_CALLBACK_FIELD( _ident, _name )
/*************************************************************************/
/*************************************************************************/
/***** *****/
@ -392,7 +392,6 @@ FT_BEGIN_HEADER
} PS_ParserRec;
/*************************************************************************/
/*************************************************************************/
/***** *****/
@ -598,7 +597,7 @@ FT_BEGIN_HEADER
typedef struct T1_Decoder_FuncsRec_
{
FT_Error
(*init) ( T1_Decoder decoder,
(*init)( T1_Decoder decoder,
FT_Face face,
FT_Size size,
FT_GlyphSlot slot,
@ -608,7 +607,7 @@ FT_BEGIN_HEADER
T1_Decoder_Callback callback );
void
(*done) ( T1_Decoder decoder );
(*done)( T1_Decoder decoder );
FT_Error
(*parse_charstrings)( T1_Decoder decoder,
@ -651,6 +650,7 @@ FT_BEGIN_HEADER
} T1_DecoderRec;
/*************************************************************************/
/*************************************************************************/
/***** *****/