[truetype] Minor documentation improvements.

This commit is contained in:
Werner Lemberg 2021-10-15 19:02:41 +02:00
parent 943a6bf7e6
commit 0b92c56c34
2 changed files with 42 additions and 37 deletions

View File

@ -350,6 +350,8 @@
*
* @Note:
* Only the glyph loader and debugger should call this function.
*
* Note that not all members of `TT_ExecContext` get initialized.
*/
FT_LOCAL_DEF( FT_Error )
TT_Load_Context( TT_ExecContext exec,

View File

@ -144,36 +144,39 @@ FT_BEGIN_HEADER
*
* The main structure for the interpreter which collects all necessary
* variables and states.
*
* Members that are initialized by `TT_Load_Context` are marked with '!'.
* Members that are initialized by `TT_Run_Context` are marked with '@'.
*/
typedef struct TT_ExecContextRec_
{
TT_Face face;
TT_Size size;
TT_Face face; /* ! */
TT_Size size; /* ! */
FT_Memory memory;
/* instructions state */
FT_Error error; /* last execution error */
FT_Long top; /* top of exec. stack */
FT_Long top; /* @ top of exec. stack */
FT_Long stackSize; /* size of exec. stack */
FT_Long* stack; /* current exec. stack */
FT_Long stackSize; /* ! size of exec. stack */
FT_Long* stack; /* ! current exec. stack */
FT_Long args;
FT_Long new_top; /* new top after exec. */
FT_Long new_top; /* new top after exec. */
TT_GlyphZoneRec zp0, /* zone records */
zp1,
zp2,
pts,
twilight;
TT_GlyphZoneRec zp0, /* @! zone records */
zp1, /* @! */
zp2, /* @! */
pts, /* ! */
twilight; /* ! */
FT_Long pointSize; /* in 26.6 format */
FT_Size_Metrics metrics;
TT_Size_Metrics tt_metrics; /* size metrics */
FT_Long pointSize; /* ! in 26.6 format */
FT_Size_Metrics metrics; /* ! */
TT_Size_Metrics tt_metrics; /* ! size metrics */
TT_GraphicsState GS; /* current graphics state */
TT_GraphicsState GS; /* !@ current graphics state */
FT_Int iniRange; /* initial code range number */
FT_Int curRange; /* current code range number */
@ -186,39 +189,39 @@ FT_BEGIN_HEADER
FT_Bool step_ins; /* true if the interpreter must */
/* increment IP after ins. exec */
FT_ULong cvtSize;
FT_Long* cvt;
FT_ULong cvtSize; /* ! */
FT_Long* cvt; /* ! */
FT_ULong glyfCvtSize;
FT_Long* glyfCvt; /* cvt working copy for glyph */
FT_Long* origCvt;
FT_UInt glyphSize; /* glyph instructions buffer size */
FT_Byte* glyphIns; /* glyph instructions buffer */
FT_UInt glyphSize; /* ! glyph instructions buffer size */
FT_Byte* glyphIns; /* ! glyph instructions buffer */
FT_UInt numFDefs; /* number of function defs */
FT_UInt maxFDefs; /* maximum number of function defs */
TT_DefArray FDefs; /* table of FDefs entries */
FT_UInt numFDefs; /* ! number of function defs */
FT_UInt maxFDefs; /* ! maximum number of function defs */
TT_DefArray FDefs; /* table of FDefs entries */
FT_UInt numIDefs; /* number of instruction defs */
FT_UInt maxIDefs; /* maximum number of ins defs */
TT_DefArray IDefs; /* table of IDefs entries */
FT_UInt numIDefs; /* ! number of instruction defs */
FT_UInt maxIDefs; /* ! maximum number of ins defs */
TT_DefArray IDefs; /* table of IDefs entries */
FT_UInt maxFunc; /* maximum function index */
FT_UInt maxIns; /* maximum instruction index */
FT_UInt maxFunc; /* ! maximum function index */
FT_UInt maxIns; /* ! maximum instruction index */
FT_Int callTop, /* top of call stack during execution */
callSize; /* size of call stack */
TT_CallStack callStack; /* call stack */
FT_Int callTop, /* @ top of call stack during execution */
callSize; /* size of call stack */
TT_CallStack callStack; /* call stack */
FT_UShort maxPoints; /* capacity of this context's `pts' */
FT_Short maxContours; /* record, expressed in points and */
/* contours. */
TT_CodeRangeTable codeRangeTable; /* table of valid code ranges */
/* useful for the debugger */
TT_CodeRangeTable codeRangeTable; /* ! table of valid code ranges */
/* useful for the debugger */
FT_UShort storeSize; /* size of current storage */
FT_Long* storage; /* storage area */
FT_UShort storeSize; /* ! size of current storage */
FT_Long* storage; /* ! storage area */
FT_UShort glyfStoreSize;
FT_Long* glyfStorage; /* storage working copy for glyph */
FT_Long* origStorage;
@ -227,8 +230,8 @@ FT_BEGIN_HEADER
FT_F26Dot6 phase; /* `SuperRounding' */
FT_F26Dot6 threshold;
FT_Bool instruction_trap; /* If `True', the interpreter will */
/* exit after each instruction */
FT_Bool instruction_trap; /* ! If `True', the interpreter */
/* exits after each instruction */
TT_GraphicsState default_GS; /* graphics state resulting from */
/* the prep program */
@ -245,7 +248,7 @@ FT_BEGIN_HEADER
func_dualproj, /* current dual proj. function */
func_freeProj; /* current freedom proj. func */
TT_Move_Func func_move; /* current point move function */
TT_Move_Func func_move; /* current point move function */
TT_Move_Func func_move_orig; /* move original position function */
TT_Cur_Ppem_Func func_cur_ppem; /* get current proj. ppem value */