Formatting.

Fixed some errors which prevented compiling.
This commit is contained in:
Werner Lemberg 2000-07-02 13:53:16 +00:00
parent db5285a042
commit 5811c7c3a5
8 changed files with 120 additions and 77 deletions

View File

@ -16,9 +16,18 @@
/* */
/***************************************************************************/
#ifndef FTOUTLN_H
#define FTOUTLN_H
#include <freetype/freetype.h>
#ifdef __cplusplus
extern "C" {
#endif
/*************************************************************************/
/* */
/* <Function> */
@ -307,6 +316,12 @@
FT_Raster_Params* params );
#ifdef __cplusplus
}
#endif
#endif /* FTOUTLN_H */
/* END */

View File

@ -561,7 +561,7 @@
/* <Note> */
/* The 2x2 transformation matrix is also applied to the glyph's */
/* advance vector. */
/*
/* */
FT_EXPORT_FUNC( FT_Error ) FT_Glyph_Transform( FT_Glyph glyph,
FT_Matrix* matrix,
FT_Vector* delta )

View File

@ -23,7 +23,6 @@
#include <freetype/tttags.h>
#include <freetype/ftoutln.h>
#include <ttgload.h>
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
@ -146,10 +145,10 @@
}
#define cur_to_org( n, zone ) \
#define cur_to_org( n, zone ) \
MEM_Copy( (zone)->org, (zone)->cur, n * sizeof ( FT_Vector ) )
#define org_to_cur( n, zone ) \
#define org_to_cur( n, zone ) \
MEM_Copy( (zone)->cur, (zone)->org, n * sizeof ( FT_Vector ) )
@ -165,6 +164,7 @@
{
FT_UInt k;
if ( delta_x )
for ( k = 0; k < n; k++ )
coords[k].x += delta_x;
@ -175,10 +175,11 @@
}
static void tt_prepare_zone( TT_GlyphZone* zone,
FT_GlyphLoad* load,
FT_UInt start_point,
FT_UInt start_contour )
static
void tt_prepare_zone( TT_GlyphZone* zone,
FT_GlyphLoad* load,
FT_UInt start_point,
FT_UInt start_contour )
{
zone->n_points = load->outline.n_points - start_point;
zone->n_contours = load->outline.n_contours - start_contour;
@ -286,7 +287,6 @@
outline = &gloader->current.outline;
}
/* reading the bytecode instructions */
slot->control_len = 0;
slot->control_data = 0;
@ -481,6 +481,7 @@
subglyph->transform.yy = yy;
num_subglyphs++;
} while ( subglyph->flags & MORE_COMPONENTS );
gloader->current.num_subglyphs = num_subglyphs;
@ -575,6 +576,7 @@
FT_Fixed x_scale = load->size->metrics.x_scale;
FT_Fixed y_scale = load->size->metrics.y_scale;
/* first scale the glyph points */
for ( ; vec < limit; vec++ )
{
@ -726,6 +728,7 @@
loader->exec->glyphSize = 0;
#endif
error = FT_Err_Ok;
goto Exit;
}
@ -777,6 +780,7 @@
goto Fail;
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
{
TT_Size size = (TT_Size)loader->size;
@ -838,7 +842,6 @@
goto Exit;
}
/*********************************************************************/
/*********************************************************************/
/*********************************************************************/
@ -963,7 +966,7 @@
/*******************************************************************/
/*******************************************************************/
/* we have finished loading all sub-glyphs, now, look for */
/* we have finished loading all sub-glyphs; now, look for */
/* instructions for this composite! */
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
@ -986,7 +989,7 @@
goto Fail;
FT_TRACE5(( " Instructions size = %d\n", n_ins ));
/* in some fonts ?? */
/* in some fonts? */
if ( n_ins == 0xFFFF )
n_ins = 0;
@ -1131,11 +1134,11 @@
FT_Pos advance = loader->advance;
/* the flag FT_LOAD_NO_ADVANCE_CHECK was introduced to */
/* correctly support DynaLab fonts, which have an incorrect */
/* `advance_Width_Max' field! It is used, to my knowledge, */
/* exclusively in the X-TrueType font server. */
/* */
/* the flag FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH was introduced to */
/* correctly support DynaLab fonts, which have an incorrect */
/* `advance_Width_Max' field! It is used, to my knowledge, */
/* exclusively in the X-TrueType font server. */
/* */
if ( face->postscript.isFixedPitch &&
( loader->load_flags & FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH ) == 0 )
advance = face->horizontal.advance_Width_Max;
@ -1373,7 +1376,7 @@
#endif /* TT_CONFIG_OPTION_EMBEDDED_BITMAPS */
/* seek to the beginning of the glyph table. For Type 43 fonts */
/* seek to the beginning of the glyph table. For Type 42 fonts */
/* the table might be accessed from a Postscript stream or something */
/* else... */

View File

@ -36,7 +36,6 @@
FT_Short* bearing,
FT_UShort* advance );
LOCAL_DEF
void TT_Init_Glyph_Loading( TT_Face face );

View File

@ -443,12 +443,9 @@
FT_Error error;
FT_TRACE1(( "TT.Create_Create: new object at 0x%08p, parent = 0x%08p\n",
FT_TRACE1(( "Init_Context: new object at 0x%08p, parent = 0x%08p\n",
exec, face ));
/* XXX: We don't reserve arrays anymore, this is done automatically */
/* during a call to Context_Load(). */
exec->memory = memory;
exec->callSize = 32;
@ -474,8 +471,8 @@
return TT_Err_Ok;
Fail_Memory:
FT_ERROR(( "TT.Context_Create: not enough memory for 0x%08lx\n",
(long)exec ));
FT_ERROR(( "Init_Context: not enough memory for 0x%08lx\n",
(FT_Long)exec ));
TT_Destroy_Context( exec, memory );
return error;
@ -528,7 +525,6 @@
}
/*************************************************************************/
/* */
/* <Function> */
@ -796,7 +792,7 @@
if ( !driver->context )
{
FT_Error error;
FT_Error error;
/* allocate object */
@ -1203,7 +1199,7 @@
const FT_Vector Null_Vector = {0,0};
#undef PACK
#undef PACK
#undef NULL_Vector
@ -1237,15 +1233,22 @@
else
{
FT_Long x, y;
#ifdef FT_CONFIG_OPTION_OLD_CALCS
x = TT_MULDIV( CUR.GS.projVector.x, CUR.tt_metrics.x_ratio, 0x4000 );
y = TT_MULDIV( CUR.GS.projVector.y, CUR.tt_metrics.y_ratio, 0x4000 );
CUR.tt_metrics.ratio = Norm( x, y );
#else
x = TT_MULDIV( CUR.GS.projVector.x, CUR.tt_metrics.x_ratio, 0x8000 );
y = TT_MULDIV( CUR.GS.projVector.y, CUR.tt_metrics.y_ratio, 0x8000 );
CUR.tt_metrics.ratio = FT_Sqrt32( x * x + y * y ) << 1;
#endif /* FT_CONFIG_OPTION_OLD_CALCS */
}
return CUR.tt_metrics.ratio;
@ -1287,6 +1290,7 @@
CUR.cvt[index] = value;
}
static
void Write_CVT_Stretched( EXEC_OP_ FT_ULong index,
FT_F26Dot6 value )
@ -1420,14 +1424,20 @@
if ( v != 0 )
{
#ifdef NO_APPLE_PATENT
if ( ABS( CUR.F_dot_P ) > APPLE_THRESHOLD )
zone->cur[point].x += distance;
#else
zone->cur[point].x += TT_MULDIV( distance,
v * 0x10000L,
CUR.F_dot_P );
#endif
zone->tags[point] |= FT_Curve_Tag_Touch_X;
}
@ -1435,14 +1445,20 @@
if ( v != 0 )
{
#ifdef NO_APPLE_PATENT
if ( ABS( CUR.F_dot_P ) > APPLE_THRESHOLD )
zone->cur[point].y += distance;
#else
zone->cur[point].y += TT_MULDIV( distance,
v * 0x10000L,
CUR.F_dot_P );
#endif
zone->tags[point] |= FT_Curve_Tag_Touch_Y;
}
}
@ -1457,6 +1473,7 @@
/* */
/*************************************************************************/
static
void Direct_Move_X( EXEC_OP_ TT_GlyphZone* zone,
FT_UShort point,
@ -1465,7 +1482,7 @@
UNUSED_EXEC;
zone->cur[point].x += distance;
zone->tags[point] |= FT_Curve_Tag_Touch_X;
zone->tags[point] |= FT_Curve_Tag_Touch_X;
}
@ -1477,7 +1494,7 @@
UNUSED_EXEC;
zone->cur[point].y += distance;
zone->tags[point] |= FT_Curve_Tag_Touch_Y;
zone->tags[point] |= FT_Curve_Tag_Touch_Y;
}
@ -2209,7 +2226,7 @@
if ( W == 0 )
{
/* XXX: UNDOCUMENTED! It seems that it's possible to try */
/* XXX: UNDOCUMENTED! It seems that it is possible to try */
/* to normalize the vector (0,0). Return immediately. */
return SUCCESS;
}
@ -2664,7 +2681,7 @@
/* */
/* It seems that the value that is read here is */
/* expressed in 16.16 format rather than in font */
/* units.. */
/* units. */
/* */
#define DO_SSW \
CUR.GS.single_width_value = (FT_F26Dot6)( args[0] >> 10 );
@ -3847,7 +3864,7 @@
static
void Ins_AA( INS_ARG )
{
/* Intentional - no longer supported */
/* intentionally no longer supported */
}
@ -3986,7 +4003,7 @@
/* */
/* MANAGING THE FLOW OF CONTROL */
/* */
/* Instructions appear in the specification's order. */
/* Instructions appear in the specification's order. */
/* */
/*************************************************************************/
@ -4100,7 +4117,7 @@
/* */
/* DEFINING AND USING FUNCTIONS AND INSTRUCTIONS */
/* */
/* Instructions appear in the specification's order. */
/* Instructions appear in the specification's order. */
/* */
/*************************************************************************/
@ -4436,7 +4453,7 @@
/* */
/* PUSHING DATA ONTO THE INTERPRETER STACK */
/* */
/* Instructions appear in the specification's order. */
/* Instructions appear in the specification's order. */
/* */
/*************************************************************************/
@ -4960,7 +4977,7 @@
static
void Ins_SCANTYPE( INS_ARG )
{
/* For compatibility with future enhancements, */
/* for compatibility with future enhancements, */
/* we must ignore new modes */
if ( args[0] >= 0 && args[0] <= 5 )
@ -4977,7 +4994,7 @@
/* */
/* MANAGING OUTLINES */
/* */
/* Instructions appear in the specification's order. */
/* Instructions appear in the specification's order. */
/* */
/*************************************************************************/
@ -4993,9 +5010,9 @@
{
FT_UShort point;
UNUSED_ARG;
if ( CUR.top < CUR.GS.loop )
{
CUR.error = TT_Err_Too_Few_Arguments;
@ -5282,7 +5299,7 @@
FT_F26Dot6 dx,
dy;
FT_UShort last_point, i;
FT_UShort last_point, i;
if ( BOUNDS( args[0], 2 ) )
@ -5918,7 +5935,7 @@
return;
}
/* XXX: there are some glyphs in some braindead but popular */
/* XXX: There are some glyphs in some braindead but popular */
/* fonts out there (e.g. [aeu]grave in monotype.ttf) */
/* calling IP[] with bad values of rp[12]. */
/* Do something sane when this odd thing happens. */
@ -6020,7 +6037,7 @@
/* Local variables for Ins_IUP: */
struct LOC_Ins_IUP
struct LOC_Ins_IUP
{
FT_Vector* orgs; /* original and current coordinate */
FT_Vector* curs; /* arrays */

View File

@ -181,10 +181,11 @@
FT_F26Dot6 phase; /* `SuperRounding' */
FT_F26Dot6 threshold;
/* this seems to be unused */
#if 0
/* this seems to be unused */
FT_Int cur_ppem; /* ppem along the current proj vector */
#endif
FT_Bool instruction_trap; /* If `True', the interpreter will */
/* exit after each instruction */

View File

@ -41,8 +41,8 @@
/* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log */
/* messages during execution. */
/* */
#undef FT_COMPONENT
#define FT_COMPONENT trace_ttobjs
#undef FT_COMPONENT
#define FT_COMPONENT trace_ttobjs
/*************************************************************************/
@ -62,10 +62,12 @@
/* <Input> */
/* zone :: A pointer to the target glyph zone. */
/* */
LOCAL_FUNC void TT_Done_GlyphZone( TT_GlyphZone* zone )
LOCAL_FUNC
void TT_Done_GlyphZone( TT_GlyphZone* zone )
{
FT_Memory memory = zone->memory;
FREE( zone->contours );
FREE( zone->tags );
FREE( zone->cur );
@ -97,12 +99,14 @@
/* <Return> */
/* FreeType error code. 0 means success. */
/* */
LOCAL_FUNC FT_Error TT_New_GlyphZone( FT_Memory memory,
FT_UShort maxPoints,
FT_Short maxContours,
TT_GlyphZone* zone )
LOCAL_FUNC
FT_Error TT_New_GlyphZone( FT_Memory memory,
FT_UShort maxPoints,
FT_Short maxContours,
TT_GlyphZone* zone )
{
FT_Error error;
FT_Error error;
if ( maxPoints > 0 )
maxPoints += 2;
@ -156,6 +160,7 @@
FT_Library library;
SFNT_Interface* sfnt;
library = face->root.driver->root.library;
sfnt = (SFNT_Interface*)FT_Get_Module_Interface( library, "sfnt" );
if ( !sfnt )
@ -222,6 +227,7 @@
SFNT_Interface* sfnt = face->sfnt;
/* for `extended TrueType formats' (i.e. compressed versions) */
if ( face->extra.finalizer )
face->extra.finalizer( face->extra.data );
@ -269,7 +275,8 @@
LOCAL_DEF
FT_Error TT_Init_Size( TT_Size size )
{
FT_Error error = 0;
FT_Error error = TT_Err_Ok;
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
@ -546,23 +553,20 @@
}
/* Compute root ascender, descender, test height, and max_advance */
metrics->ascender = ( FT_MulFix( face->root.ascender,
metrics->y_scale ) + 32 ) & -64;
metrics->descender = ( FT_MulFix( face->root.descender,
metrics->y_scale ) + 32 ) & -64;
metrics->height = ( FT_MulFix( face->root.height,
metrics->y_scale ) + 32 ) & -64;
metrics->ascender = ( FT_MulFix( face->root.ascender,
metrics->y_scale ) + 32 ) & -64;
metrics->descender = ( FT_MulFix( face->root.descender,
metrics->y_scale ) + 32 ) & -64;
metrics->height = ( FT_MulFix( face->root.height,
metrics->y_scale ) + 32 ) & -64;
metrics->max_advance = ( FT_MulFix( face->root.max_advance_width,
metrics->x_scale ) + 32 ) & -64;
metrics->x_scale ) + 32 ) & -64;
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
{
TT_ExecContext exec;
FT_UInt i, j;
TT_ExecContext exec;
FT_UInt i, j;
/* Scale the cvt values to the new ppem. */
@ -613,7 +617,7 @@
{
error = TT_Goto_CodeRange( exec, tt_coderange_cvt, 0 );
if ( error )
goto Fin;
goto End;
if ( !size->debug )
error = face->interpreter( exec );
@ -624,7 +628,7 @@
size->GS = exec->GS;
/* save default graphics state */
Fin:
End:
TT_Save_Context( exec, size );
if ( !size->debug )
@ -641,7 +645,6 @@
}
/*************************************************************************/
/* */
/* <Function> */
@ -659,7 +662,7 @@
LOCAL_FUNC
FT_Error TT_Init_Driver( TT_Driver driver )
{
FT_Error error;
FT_Error error;
/* set `extra' in glyph loader */
@ -693,7 +696,9 @@
/* destroy extensions registry if needed */
#ifdef TT_CONFIG_OPTION_EXTEND_ENGINE
TT_Done_Extensions( driver );
#endif
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
@ -706,6 +711,7 @@
}
#endif
}

View File

@ -106,6 +106,7 @@
} TT_GraphicsState;
LOCAL_DEF void TT_Done_GlyphZone( TT_GlyphZone* zone );
LOCAL_DEF FT_Error TT_New_GlyphZone( FT_Memory memory,
@ -113,6 +114,7 @@
FT_Short maxContours,
TT_GlyphZone* zone );
/*************************************************************************/
/* */
/* EXECUTION SUBTABLES */
@ -166,7 +168,6 @@
} TT_DefRecord, *TT_DefArray;
/*************************************************************************/
/* */
/* Subglyph transformation record. */
@ -297,10 +298,10 @@
} TT_Size_Metrics;
/***********************************************************************/
/* */
/* TrueType size class. */
/* */
/*************************************************************************/
/* */
/* TrueType size class. */
/* */
typedef struct TT_SizeRec_
{
FT_SizeRec root;
@ -346,10 +347,10 @@
} TT_SizeRec;
/***********************************************************************/
/* */
/* TrueType driver class. */
/* */
/*************************************************************************/
/* */
/* TrueType driver class. */
/* */
typedef struct TT_DriverRec_
{
FT_DriverRec root;
@ -400,6 +401,7 @@
LOCAL_DEF
void TT_Done_Driver( TT_Driver driver );
#ifdef __cplusplus
}
#endif