* src/sfnt/ttpost.c (load_post_names, tt_face_free_ps_names,
tt_face_get_ps_name): Replace switch statement with if clauses to
make it more portable.
* src/cff/cffobjs.c (cff_face_init): Ditto.
* include/freetype/ftmodule.h (FT_Module_Class): Use `FT_Long' for
`module_size'.
* include/freetype/ftrender.h (FT_Glyph_Class_): Use `FT_Long' for
`glyph_size'.
* src/base/ftobjs.c (FT_Render_Glyph): Change second parameter to
`FT_Render_Mode'.
(FT_Render_Glyph_Internal): Change third parameter to
`FT_Render_Mode'.
* src/base/ftglyph.c (FT_Glyph_To_Bitmap): Change second parameter
to `FT_Render_Mode'.
* src/raster/ftrend1.c (ft_raster1_render): Change third parameter
to `FT_Render_Mode'.
* src/smooth/ftsmooth.c (ft_smooth_render, ft_smooth_render_lcd,
ft_smooth_render_lcd_v): Ditto.
(ft_smooth_render_generic): Change third and fifth parameter to
`FT_Render_Mode'.
* include/freetype/freetype.h, include/freetype/internal/ftobjs.h,
include/freetype/ftglyph.h: Updated.
* src/cff/cffdrivr.c (Load_Glyph), src/pcf/pcfdriver.c
(PCF_Glyph_Load), src/pfr/pfrobjs.c (pfr_slot_load),
src/winfonts/winfnt.c (FNT_Load_Glyph), src/t42/t42objs.c
(T42_GlyphSlot_Load), src/bdf/bdfdrivr.c (BDF_Glyph_Load): Change
fourth parameter to `FT_Int32'.
* src/pfr/pfrobjs.c (pfr_face_init): Add two missing parameters
and declare them as unused.
* src/cid/cidparse.h (CID_Parser): Use FT_Long for `postscript_len'.
* src/psnames/psnames.h (PS_Unicode_Value_Func): Change return
value to FT_UInt32.
* src/psnames/psmodule.c (ps_unicode_value, ps_build_unicode_table):
Updated accordingly.
* src/cff/cffdrivr.c (Get_Kerning): Use FT_Long for `middle'.
(cff_get_glyph_name): Use cast for result of ft_strlen.
* src/cff/cffparse.c (cff_parse_real): User cast for assigning
`exp'.
* src/cff/cffload.c (cff_index_get_pointers): Use FT_ULong for
some local variables.
(cff_charset_load, cff_encoding_load): Use casts to FT_UInt for some
switch statements.
(cff_font_load): Use cast in call to CFF_Load_FD_Select.
* src/cff/cffobjs.c (cff_size_init): Use more casts.
(cff_face_init): Use FT_Int32 for `flags'.
* src/cff/cffgload.c (cff_operator_seac): Use cast for assigning
`adx' and `ady'.
(cff_decoder_parse_charstrings): Use FT_ULong for third parameter.
Use more casts.
* src/cff/cffcmap.c (cff_cmap_unicode_init): Use cast for `count'.
* src/cid/cidload.c (cid_read_subrs): Use FT_ULong for `len'.
* src/cid/cidgload.c (cid_load_glyph): Add missing cast for
`cid_get_offset'.
* src/psaux/t1decode.c (t1_decoder_parse_charstrings) <18>: Use
cast for `num_points'.
(t1_decoder_init): Use cast for assigning `decoder->num_glyphs'.
* src/base/ftdebug.c (ft_debug_init): Use FT_Int.
* include/freetype/internal/ftdriver.h (FT_Slot_LoadFunc): Use
`FT_Int32' for fourth parameter.
* src/base/ftobjs.c (open_face): Use cast for calling
clazz->init_face.
* src/raster/ftraster.c (Set_High_Precision): Use `1' instead of
`1L'.
(Finalize_Profile_Table, Line_Up, ft_black_init): Use casts.
* src/raster/ftrend1.c (ft_raster1_render): Ditto.
* src/sfnt/sfnt_dir_check: Compare `magic' with unsigned long
constant.
* builds/amiga/include/freetype/config/ftmodule.h: Updated.
diff --git a/ChangeLog b/ChangeLog
index ccf2577..1451ca1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,15 +1,106 @@
+2002-09-26 Werner Lemberg <wl@gnu.org>
+
+ * src/sfnt/ttpost.c (load_post_names, tt_face_free_ps_names,
+ tt_face_get_ps_name): Replace switch statement with if clauses to
+ make it more portable.
+
+ * src/cff/cffobjs.c (cff_face_init): Ditto.
+
+ * include/freetype/ftmodule.h (FT_Module_Class): Use `FT_Long' for
+ `module_size'.
+ * include/freetype/ftrender.h (FT_Glyph_Class_): Use `FT_Long' for
+ `glyph_size'.
+
+ * src/base/ftobjs.c (FT_Render_Glyph): Change second parameter to
+ `FT_Render_Mode'.
+ (FT_Render_Glyph_Internal): Change third parameter to
+ `FT_Render_Mode'.
+ * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Change second parameter
+ to `FT_Render_Mode'.
+
+ * src/raster/ftrend1.c (ft_raster1_render): Change third parameter
+ to `FT_Render_Mode'.
+ * src/smooth/ftsmooth.c (ft_smooth_render, ft_smooth_render_lcd,
+ ft_smooth_render_lcd_v): Ditto.
+ (ft_smooth_render_generic): Change third and fifth parameter to
+ `FT_Render_Mode'.
+
+ * include/freetype/freetype.h, include/freetype/internal/ftobjs.h,
+ include/freetype/ftglyph.h: Updated.
+
+ * src/cff/cffdrivr.c (Load_Glyph), src/pcf/pcfdriver.c
+ (PCF_Glyph_Load), src/pfr/pfrobjs.c (pfr_slot_load),
+ src/winfonts/winfnt.c (FNT_Load_Glyph), src/t42/t42objs.c
+ (T42_GlyphSlot_Load), src/bdf/bdfdrivr.c (BDF_Glyph_Load): Change
+ fourth parameter to `FT_Int32'.
+
+ * src/pfr/pfrobjs.c (pfr_face_init): Add two missing parameters
+ and declare them as unused.
+
+ * src/cid/cidparse.h (CID_Parser): Use FT_Long for `postscript_len'.
+
+ * src/psnames/psnames.h (PS_Unicode_Value_Func): Change return
+ value to FT_UInt32.
+ * src/psnames/psmodule.c (ps_unicode_value, ps_build_unicode_table):
+ Updated accordingly.
+
+2002-09-26 Wolfgang Domröse <porthos.domroese@harz.de>
+
+ * src/cff/cffdrivr.c (Get_Kerning): Use FT_Long for `middle'.
+ (cff_get_glyph_name): Use cast for result of ft_strlen.
+ * src/cff/cffparse.c (cff_parse_real): User cast for assigning
+ `exp'.
+ * src/cff/cffload.c (cff_index_get_pointers): Use FT_ULong for
+ some local variables.
+ (cff_charset_load, cff_encoding_load): Use casts to FT_UInt for some
+ switch statements.
+ (cff_font_load): Use cast in call to CFF_Load_FD_Select.
+ * src/cff/cffobjs.c (cff_size_init): Use more casts.
+ (cff_face_init): Use FT_Int32 for `flags'.
+ * src/cff/cffgload.c (cff_operator_seac): Use cast for assigning
+ `adx' and `ady'.
+ (cff_decoder_parse_charstrings): Use FT_ULong for third parameter.
+ Use more casts.
+ * src/cff/cffcmap.c (cff_cmap_unicode_init): Use cast for `count'.
+
+ * src/cid/cidload.c (cid_read_subrs): Use FT_ULong for `len'.
+ * src/cid/cidgload.c (cid_load_glyph): Add missing cast for
+ `cid_get_offset'.
+
+ * src/psaux/t1decode.c (t1_decoder_parse_charstrings) <18>: Use
+ cast for `num_points'.
+ (t1_decoder_init): Use cast for assigning `decoder->num_glyphs'.
+
+ * src/base/ftdebug.c (ft_debug_init): Use FT_Int.
+ * include/freetype/internal/ftdriver.h (FT_Slot_LoadFunc): Use
+ `FT_Int32' for fourth parameter.
+ * src/base/ftobjs.c (open_face): Use cast for calling
+ clazz->init_face.
+
+ * src/raster/ftraster.c (Set_High_Precision): Use `1' instead of
+ `1L'.
+ (Finalize_Profile_Table, Line_Up, ft_black_init): Use casts.
+ * src/raster/ftrend1.c (ft_raster1_render): Ditto.
+
+ * src/sfnt/sfnt_dir_check: Compare `magic' with unsigned long
+ constant.
+
+2002-09-26 Detlef Würkner <TetiSoft@apg.lahn.de>
+
+ * builds/amiga/include/freetype/config/ftmodule.h: Updated.
+
2002-09-25 David Turner <david@freetype.org>
- * src/autohint/ahtypes.h: disabling metrics hinting in the auto-hinter.
- this produces much better anti-aliased text
+ * src/autohint/ahtypes.h: Disabling metrics hinting in the
+ auto-hinter. this produces much better anti-aliased text.
- * docs/CHANGES: updating the changes documentation
+ * docs/CHANGES: Updating the changes documentation.
2002-09-25 Anthony Fok <anthony@thizlinux.com>
- * src/sfnt/ttcmap0.c: added support for opens___.ttf (it contains
- a charmap that uses offset=0xFFFFU instead of 0x0000 to indicate a
- missing glyph)
+ * src/sfnt/ttcmap0.c: Added support for opens___.ttf (it contains a
+ charmap that uses offset=0xFFFFU instead of 0x0000 to indicate a
+ missing glyph).
2002-09-21 Wolfgang Domröse <porthos.domroese@harz.de>
diff --git a/builds/amiga/include/freetype/config/ftmodule.h b/builds/amiga/include/freetype/config/ftmodule.h
index 6cdb81f..d7bc9cb 100644
--- a/builds/amiga/include/freetype/config/ftmodule.h
+++ b/builds/amiga/include/freetype/config/ftmodule.h
@@ -7,7 +7,7 @@
//#define FT_USE_SMOOTH // anti-aliasing rasterizer
//#define FT_USE_TT // truetype font driver
//#define FT_USE_T1 // type1 font driver
-//#define FT_USE_T42 // type42 font driver // yet unstable
+//#define FT_USE_T42 // type42 font driver
//#define FT_USE_T1CID // cid-keyed type1 font driver // no cmap support
//#define FT_USE_CFF // opentype font driver
//#define FT_USE_BDF // bdf bitmap font driver
@@ -102,6 +102,8 @@
#ifdef FT_USE_SMOOTH
FT_USE_MODULE(ft_smooth_renderer_class)
+FT_USE_MODULE(ft_smooth_lcd_renderer_class)
+FT_USE_MODULE(ft_smooth_lcdv_renderer_class)
#endif
#ifdef FT_USE_TT
diff --git a/include/freetype/freetype.h b/include/freetype/freetype.h
index 812aa56..cc3c0b2 100644
--- a/include/freetype/freetype.h
+++ b/include/freetype/freetype.h
@@ -2273,8 +2273,8 @@
/* FreeType error code. 0 means success. */
/* */
FT_EXPORT( FT_Error )
- FT_Render_Glyph( FT_GlyphSlot slot,
- FT_UInt render_mode );
+ FT_Render_Glyph( FT_GlyphSlot slot,
+ FT_Render_Mode render_mode );
/*************************************************************************/
diff --git a/include/freetype/ftglyph.h b/include/freetype/ftglyph.h
index 6d2ab46..67a698f 100644
--- a/include/freetype/ftglyph.h
+++ b/include/freetype/ftglyph.h
@@ -374,8 +374,8 @@
/* the_glyph :: A pointer to a handle to the target glyph. */
/* */
/* <Input> */
- /* render_mode :: A set of bit flags that describe how the data is */
- /* */
+ /* render_mode :: An enumeration that describe how the data is */
+ /* rendered. */
/* */
/* origin :: A pointer to a vector used to translate the glyph */
/* image before rendering. Can be 0 (if no */
@@ -434,10 +434,10 @@
/* scalable. */
/* */
FT_EXPORT( FT_Error )
- FT_Glyph_To_Bitmap( FT_Glyph* the_glyph,
- FT_ULong render_mode,
- FT_Vector* origin,
- FT_Bool destroy );
+ FT_Glyph_To_Bitmap( FT_Glyph* the_glyph,
+ FT_Render_Mode render_mode,
+ FT_Vector* origin,
+ FT_Bool destroy );
/*************************************************************************/
diff --git a/include/freetype/ftmodule.h b/include/freetype/ftmodule.h
index 97718ad..2ec5a03 100644
--- a/include/freetype/ftmodule.h
+++ b/include/freetype/ftmodule.h
@@ -111,7 +111,7 @@
typedef struct FT_Module_Class_
{
FT_ULong module_flags;
- FT_Int module_size;
+ FT_Long module_size;
const FT_String* module_name;
FT_Fixed module_version;
FT_Fixed module_requires;
diff --git a/include/freetype/ftrender.h b/include/freetype/ftrender.h
index bb6487b..db3ca94 100644
--- a/include/freetype/ftrender.h
+++ b/include/freetype/ftrender.h
@@ -73,7 +73,7 @@
struct FT_Glyph_Class_
{
- FT_UInt glyph_size;
+ FT_Long glyph_size;
FT_Glyph_Format glyph_format;
FT_Glyph_InitFunc glyph_init;
FT_Glyph_DoneFunc glyph_done;
diff --git a/include/freetype/internal/ftdriver.h b/include/freetype/internal/ftdriver.h
index 1ad9607..9323910 100644
--- a/include/freetype/internal/ftdriver.h
+++ b/include/freetype/internal/ftdriver.h
@@ -68,7 +68,7 @@
(*FT_Slot_LoadFunc)( FT_GlyphSlot slot,
FT_Size size,
FT_UInt glyph_index,
- FT_Int load_flags );
+ FT_Int32 load_flags );
typedef FT_UInt
diff --git a/include/freetype/internal/ftobjs.h b/include/freetype/internal/ftobjs.h
index 4ddd0e6..5ccd5dc 100644
--- a/include/freetype/internal/ftobjs.h
+++ b/include/freetype/internal/ftobjs.h
@@ -723,9 +723,9 @@
FT_ListNode* node );
FT_BASE( FT_Error )
- FT_Render_Glyph_Internal( FT_Library library,
- FT_GlyphSlot slot,
- FT_UInt render_mode );
+ FT_Render_Glyph_Internal( FT_Library library,
+ FT_GlyphSlot slot,
+ FT_Render_Mode render_mode );
typedef const char*
(*FT_Face_GetPostscriptNameFunc)( FT_Face face );
diff --git a/include/freetype/internal/psnames.h b/include/freetype/internal/psnames.h
index d9f1556..0f4ec86 100644
--- a/include/freetype/internal/psnames.h
+++ b/include/freetype/internal/psnames.h
@@ -52,7 +52,7 @@
/* This function will not be compiled if the configuration macro */
/* FT_CONFIG_OPTION_ADOBE_GLYPH_LIST is undefined. */
/* */
- typedef FT_ULong
+ typedef FT_UInt32
(*PS_Unicode_Value_Func)( const char* glyph_name );
diff --git a/src/base/ftdebug.c b/src/base/ftdebug.c
index caa3c74..48a2143 100644
--- a/src/base/ftdebug.c
+++ b/src/base/ftdebug.c
@@ -136,8 +136,8 @@
if ( *p == ':' && p > q )
{
- int n, i, len = p - q;
- int level = -1, found = -1;
+ FT_Int n, i, len = (FT_Int)(p - q);
+ FT_Int level = -1, found = -1;
for ( n = 0; n < trace_count; n++ )
diff --git a/src/base/ftglyph.c b/src/base/ftglyph.c
index 3f50cf8..9f3d6fd 100644
--- a/src/base/ftglyph.c
+++ b/src/base/ftglyph.c
@@ -566,10 +566,10 @@
/* documentation is in ftglyph.h */
FT_EXPORT_DEF( FT_Error )
- FT_Glyph_To_Bitmap( FT_Glyph* the_glyph,
- FT_ULong render_mode,
- FT_Vector* origin,
- FT_Bool destroy )
+ FT_Glyph_To_Bitmap( FT_Glyph* the_glyph,
+ FT_Render_Mode render_mode,
+ FT_Vector* origin,
+ FT_Bool destroy )
{
FT_GlyphSlotRec dummy;
FT_Error error = FT_Err_Ok;
diff --git a/src/base/ftobjs.c b/src/base/ftobjs.c
index 545c403..bd07ac5 100644
--- a/src/base/ftobjs.c
+++ b/src/base/ftobjs.c
@@ -555,6 +555,7 @@
{
FT_Render_Mode mode = FT_LOAD_TARGET_MODE( load_flags );
+
if ( mode == FT_RENDER_MODE_NORMAL &&
(load_flags & FT_LOAD_MONOCHROME ) )
mode = FT_RENDER_MODE_MONO;
@@ -745,7 +746,7 @@
error = clazz->init_face( stream,
face,
- face_index,
+ (FT_Int)face_index,
num_params,
params );
if ( error )
@@ -1997,9 +1998,9 @@
FT_BASE_DEF( FT_Error )
- FT_Render_Glyph_Internal( FT_Library library,
- FT_GlyphSlot slot,
- FT_UInt render_mode )
+ FT_Render_Glyph_Internal( FT_Library library,
+ FT_GlyphSlot slot,
+ FT_Render_Mode render_mode )
{
FT_Error error = FT_Err_Ok;
FT_Renderer renderer;
@@ -2058,8 +2059,8 @@
/* documentation is in freetype.h */
FT_EXPORT_DEF( FT_Error )
- FT_Render_Glyph( FT_GlyphSlot slot,
- FT_UInt render_mode )
+ FT_Render_Glyph( FT_GlyphSlot slot,
+ FT_Render_Mode render_mode )
{
FT_Library library;
@@ -2185,7 +2186,7 @@
}
/* allocate module object */
- if ( FT_ALLOC( module,clazz->module_size ) )
+ if ( FT_ALLOC( module, clazz->module_size ) )
goto Exit;
/* base initialization */
diff --git a/src/bdf/bdfdrivr.c b/src/bdf/bdfdrivr.c
index 6b64ba6..0e9197f 100644
--- a/src/bdf/bdfdrivr.c
+++ b/src/bdf/bdfdrivr.c
@@ -478,7 +478,7 @@
BDF_Glyph_Load( FT_GlyphSlot slot,
FT_Size size,
FT_UInt glyph_index,
- FT_Int load_flags )
+ FT_Int32 load_flags )
{
BDF_Face face = (BDF_Face)FT_SIZE_FACE( size );
FT_Error error = BDF_Err_Ok;
diff --git a/src/cff/cffcmap.c b/src/cff/cffcmap.c
index 453dbc3..5beb6ae 100644
--- a/src/cff/cffcmap.c
+++ b/src/cff/cffcmap.c
@@ -152,7 +152,7 @@
cmap->num_pairs = 0;
cmap->pairs = NULL;
- count = face->root.num_glyphs;
+ count = (FT_UInt)face->root.num_glyphs;
if ( !FT_NEW_ARRAY( cmap->pairs, count ) )
{
@@ -167,6 +167,7 @@
FT_UInt sid = charset->sids[n];
const char* gname;
+
gname = cff_index_get_sid_string( &cff->string_index, sid, psnames );
/* build unsorted pair table by matching glyph names */
diff --git a/src/cff/cffdrivr.c b/src/cff/cffdrivr.c
index dcc2cc9..34ed2bf 100644
--- a/src/cff/cffdrivr.c
+++ b/src/cff/cffdrivr.c
@@ -118,7 +118,7 @@
while ( left <= right )
{
- FT_Int middle = left + ( ( right - left ) >> 1 );
+ FT_Long middle = left + ( ( right - left ) >> 1 );
FT_ULong cur_pair;
@@ -177,7 +177,7 @@
Load_Glyph( CFF_GlyphSlot slot,
CFF_Size size,
FT_UShort glyph_index,
- FT_UInt load_flags )
+ FT_Int32 load_flags )
{
FT_Error error;
@@ -257,7 +257,7 @@
if ( buffer_max > 0 )
{
- FT_UInt len = ft_strlen( gname );
+ FT_UInt len = (FT_UInt)ft_strlen( gname );
if ( len >= buffer_max )
diff --git a/src/cff/cffgload.c b/src/cff/cffgload.c
index 262505e..69277ae 100644
--- a/src/cff/cffgload.c
+++ b/src/cff/cffgload.c
@@ -702,8 +702,8 @@
/* subglyph 1 = accent character */
subg->index = achar_index;
subg->flags = FT_SUBGLYPH_FLAG_ARGS_ARE_XY_VALUES;
- subg->arg1 = adx;
- subg->arg2 = ady;
+ subg->arg1 = (FT_Int)adx;
+ subg->arg2 = (FT_Int)ady;
/* set up remaining glyph fields */
glyph->num_subglyphs = 2;
@@ -796,7 +796,7 @@
FT_LOCAL_DEF( FT_Error )
cff_decoder_parse_charstrings( CFF_Decoder* decoder,
FT_Byte* charstring_base,
- FT_Int charstring_len )
+ FT_ULong charstring_len )
{
FT_Error error;
CFF_Decoder_Zone* zone;
@@ -913,7 +913,7 @@
else
{
FT_Fixed* args = decoder->top;
- FT_Int num_args = args - decoder->stack;
+ FT_Int num_args = (FT_Int)( args - decoder->stack );
FT_Int req_args;
@@ -1676,8 +1676,8 @@
/* grab up to the last argument */
for ( count = 5; count > 0; count-- )
{
- dx += args[0];
- dy += args[1];
+ dx += (FT_Int)args[0];
+ dy += (FT_Int)args[1];
args += 2;
}
@@ -1748,8 +1748,10 @@
if ( num_args == 4 )
{
error = cff_operator_seac( decoder,
- args[0] >> 16, args[1] >> 16,
- args[2] >> 16, args[3] >> 16 );
+ args[0] >> 16,
+ args[1] >> 16,
+ (FT_Int)( args[2] >> 16 ),
+ (FT_Int)( args[3] >> 16 ) );
args += 4;
}
@@ -1886,7 +1888,7 @@
case cff_op_index:
{
- FT_Int idx = args[0] >> 16;
+ FT_Int idx = (FT_Int)( args[0] >> 16 );
FT_TRACE4(( " index" ));
diff --git a/src/cff/cffgload.h b/src/cff/cffgload.h
index 146cfdd..a1be92c 100644
--- a/src/cff/cffgload.h
+++ b/src/cff/cffgload.h
@@ -197,7 +197,7 @@
FT_LOCAL( FT_Error )
cff_decoder_parse_charstrings( CFF_Decoder* decoder,
FT_Byte* charstring_base,
- FT_Int charstring_len );
+ FT_ULong charstring_len );
FT_LOCAL( FT_Error )
cff_slot_load( CFF_GlyphSlot glyph,
diff --git a/src/cff/cffload.c b/src/cff/cffload.c
index 896df2d..b21cfc3 100644
--- a/src/cff/cffload.c
+++ b/src/cff/cffload.c
@@ -1179,7 +1179,7 @@
{
FT_Error error = 0;
FT_Memory memory = idx->stream->memory;
- FT_UInt n, offset, old_offset;
+ FT_ULong n, offset, old_offset;
FT_Byte** t;
@@ -1600,7 +1600,7 @@
charset->offset = offset; /* record charset type */
- switch ( offset )
+ switch ( (FT_UInt)offset )
{
case 0:
if ( num_glyphs != 229 )
@@ -1869,7 +1869,7 @@
encoding->count = 256;
- switch ( offset )
+ switch ( (FT_UInt)offset )
{
case 0:
/* First, copy the code to SID mapping. */
@@ -2145,7 +2145,7 @@
/* now load the FD Select array */
error = CFF_Load_FD_Select( &font->fd_select,
- dict->cid_count,
+ (FT_UInt)dict->cid_count,
stream,
base_offset + dict->cid_fd_select_offset );
diff --git a/src/cff/cffobjs.c b/src/cff/cffobjs.c
index cc321ef..830f462 100644
--- a/src/cff/cffobjs.c
+++ b/src/cff/cffobjs.c
@@ -131,8 +131,8 @@
priv.family_other_blues[n] = (FT_Short)cpriv->family_other_blues[n];
priv.blue_scale = cpriv->blue_scale;
- priv.blue_shift = cpriv->blue_shift;
- priv.blue_fuzz = cpriv->blue_fuzz;
+ priv.blue_shift = (FT_Int)cpriv->blue_shift;
+ priv.blue_fuzz = (FT_Int)cpriv->blue_fuzz;
priv.standard_width[0] = (FT_UShort)cpriv->standard_width;
priv.standard_height[0] = (FT_UShort)cpriv->standard_height;
@@ -335,7 +335,7 @@
CFF_Font cff;
FT_Memory memory = face->root.memory;
FT_Face root;
- FT_UInt flags;
+ FT_Int32 flags;
if ( FT_NEW( cff ) )
@@ -499,24 +499,23 @@
cmaprec.face = root;
cmaprec.platform_id = 7; /* Adobe platform id */
- switch( encoding->offset )
+ if ( encoding->offset == 0 )
{
- case 0:
- cmaprec.encoding_id = 0;
- cmaprec.encoding = FT_ENCODING_ADOBE_STANDARD;
- clazz = &cff_cmap_encoding_class_rec;
- break;
-
- case 1:
- cmaprec.encoding_id = 1;
- cmaprec.encoding = FT_ENCODING_ADOBE_EXPERT;
- clazz = &cff_cmap_encoding_class_rec;
- break;
-
- default:
- cmaprec.encoding_id = 3;
- cmaprec.encoding = FT_ENCODING_ADOBE_CUSTOM;
- clazz = &cff_cmap_encoding_class_rec;
+ cmaprec.encoding_id = 0;
+ cmaprec.encoding = FT_ENCODING_ADOBE_STANDARD;
+ clazz = &cff_cmap_encoding_class_rec;
+ }
+ else if ( encoding->offset == 1 )
+ {
+ cmaprec.encoding_id = 1;
+ cmaprec.encoding = FT_ENCODING_ADOBE_EXPERT;
+ clazz = &cff_cmap_encoding_class_rec;
+ }
+ else
+ {
+ cmaprec.encoding_id = 3;
+ cmaprec.encoding = FT_ENCODING_ADOBE_CUSTOM;
+ clazz = &cff_cmap_encoding_class_rec;
}
FT_CMap_New( clazz, NULL, &cmaprec, NULL );
diff --git a/src/cff/cffparse.c b/src/cff/cffparse.c
index 43cc559..3e1f840 100644
--- a/src/cff/cffparse.c
+++ b/src/cff/cffparse.c
@@ -244,7 +244,7 @@
if ( exp_sign )
exp = -exp;
- power_ten += exp;
+ power_ten += (FT_Int)exp;
}
/* raise to power of ten if needed */
diff --git a/src/cid/cidgload.c b/src/cid/cidgload.c
index c5b2ecf..9e60674 100644
--- a/src/cid/cidgload.c
+++ b/src/cid/cidgload.c
@@ -107,7 +107,8 @@
fd_select = (FT_UInt) cid_get_offset( &p, (FT_Byte)cid->fd_bytes );
off1 = (FT_ULong)cid_get_offset( &p, (FT_Byte)cid->gd_bytes );
p += cid->fd_bytes;
- glyph_length = cid_get_offset( &p, (FT_Byte)cid->gd_bytes ) - off1;
+ glyph_length = (FT_UInt) cid_get_offset(
+ &p, (FT_Byte)cid->gd_bytes ) - off1;
FT_FRAME_EXIT();
if ( glyph_length == 0 )
diff --git a/src/cid/cidload.c b/src/cid/cidload.c
index 66a3cbe..19cfab5 100644
--- a/src/cid/cidload.c
+++ b/src/cid/cidload.c
@@ -448,7 +448,7 @@
/* set up pointers */
for ( count = 1; count <= num_subrs; count++ )
{
- FT_UInt len;
+ FT_ULong len;
len = offsets[count] - offsets[count - 1];
@@ -460,7 +460,7 @@
{
for ( count = 0; count < num_subrs; count++ )
{
- FT_UInt len;
+ FT_ULong len;
len = offsets[count + 1] - offsets[count];
diff --git a/src/cid/cidparse.h b/src/cid/cidparse.h
index eb56a48..1b3e0b9 100644
--- a/src/cid/cidparse.h
+++ b/src/cid/cidparse.h
@@ -61,7 +61,7 @@
FT_Stream stream;
FT_Byte* postscript;
- FT_Int postscript_len;
+ FT_Long postscript_len;
FT_ULong data_offset;
diff --git a/src/pcf/pcfdriver.c b/src/pcf/pcfdriver.c
index ec478cd..4c7801c 100644
--- a/src/pcf/pcfdriver.c
+++ b/src/pcf/pcfdriver.c
@@ -319,7 +319,7 @@
PCF_Glyph_Load( FT_GlyphSlot slot,
FT_Size size,
FT_UInt glyph_index,
- FT_Int load_flags )
+ FT_Int32 load_flags )
{
PCF_Face face = (PCF_Face)FT_SIZE_FACE( size );
FT_Stream stream = face->root.stream;
diff --git a/src/pfr/pfrobjs.c b/src/pfr/pfrobjs.c
index 30ba5e2..1ce2571 100644
--- a/src/pfr/pfrobjs.c
+++ b/src/pfr/pfrobjs.c
@@ -48,12 +48,17 @@
FT_LOCAL_DEF( FT_Error )
- pfr_face_init( FT_Stream stream,
- PFR_Face face,
- FT_Int face_index )
+ pfr_face_init( FT_Stream stream,
+ PFR_Face face,
+ FT_Int face_index,
+ FT_Int num_params,
+ FT_Parameter* params )
{
FT_Error error;
+ FT_UNUSED( num_params );
+ FT_UNUSED( params );
+
/* load the header and check it */
error = pfr_header_load( &face->header, stream );
@@ -223,7 +228,7 @@
pfr_slot_load( PFR_Slot slot,
PFR_Size size,
FT_UInt gindex,
- FT_Int load_flags )
+ FT_Int32 load_flags )
{
FT_Error error;
PFR_Face face = (PFR_Face)slot->root.face;
diff --git a/src/pfr/pfrobjs.h b/src/pfr/pfrobjs.h
index 5b74931..832c6fd 100644
--- a/src/pfr/pfrobjs.h
+++ b/src/pfr/pfrobjs.h
@@ -57,9 +57,11 @@
FT_LOCAL( FT_Error )
- pfr_face_init( FT_Stream stream,
- PFR_Face face,
- FT_Int face_index );
+ pfr_face_init( FT_Stream stream,
+ PFR_Face face,
+ FT_Int face_index,
+ FT_Int num_params,
+ FT_Parameter* params );
FT_LOCAL( void )
pfr_face_done( PFR_Face face );
@@ -83,7 +85,7 @@
pfr_slot_load( PFR_Slot slot,
PFR_Size size,
FT_UInt gindex,
- FT_Int load_flags );
+ FT_Int32 load_flags );
FT_END_HEADER
diff --git a/src/psaux/t1decode.c b/src/psaux/t1decode.c
index 1ec7416..27b4e87 100644
--- a/src/psaux/t1decode.c
+++ b/src/psaux/t1decode.c
@@ -675,7 +675,7 @@
goto Syntax_Error;
}
- num_points = top[1] - 13 + ( top[1] == 18 );
+ num_points = (FT_UInt)top[1] - 13 + ( top[1] == 18 );
if ( top[0] != (FT_Int)( num_points * blend->num_designs ) )
{
FT_ERROR(( "t1_decoder_parse_charstrings: " ));
@@ -1146,7 +1146,7 @@
t1_builder_init( &decoder->builder, face, size, slot, hinting );
- decoder->num_glyphs = face->num_glyphs;
+ decoder->num_glyphs = (FT_UInt)face->num_glyphs;
decoder->glyph_names = glyph_names;
decoder->hint_flags = face->internal->hint_flags;
decoder->hint_mode = hint_mode;
diff --git a/src/psnames/psmodule.c b/src/psnames/psmodule.c
index 758de2c..b2ddcb7 100644
--- a/src/psnames/psmodule.c
+++ b/src/psnames/psmodule.c
@@ -36,7 +36,7 @@
/* we do deal with glyph variants by detecting a non-initial dot in */
/* the name, as in `A.swash' or `e.final', etc. */
/* */
- static FT_ULong
+ static FT_UInt32
ps_unicode_value( const char* glyph_name )
{
FT_Int n;
@@ -156,7 +156,7 @@
FT_UInt n;
FT_UInt count;
PS_UniMap* map;
- FT_ULong uni_char;
+ FT_UInt32 uni_char;
map = table->maps;
diff --git a/src/raster/ftraster.c b/src/raster/ftraster.c
index 0967947..654a81e 100644
--- a/src/raster/ftraster.c
+++ b/src/raster/ftraster.c
@@ -539,7 +539,7 @@
FT_TRACE6(( "Set_High_Precision(%s)\n", High ? "true" : "false" ));
- ras.precision = 1L << ras.precision_bits;
+ ras.precision = 1 << ras.precision_bits;
ras.precision_half = ras.precision / 2;
ras.precision_shift = ras.precision_bits - Pixel_Bits;
ras.precision_mask = -ras.precision;
@@ -702,7 +702,7 @@
if ( n >= 0 && y > y_turns[n] )
while ( n >= 0 )
{
- y2 = y_turns[n];
+ y2 = (Int)y_turns[n];
y_turns[n] = y;
y = y2;
n--;
@@ -758,16 +758,16 @@
switch ( p->flow )
{
case Flow_Down:
- bottom = p->start - p->height+1;
- top = p->start;
+ bottom = (Int)( p->start - p->height + 1 );
+ top = (Int)p->start;
p->start = bottom;
p->offset += p->height - 1;
break;
case Flow_Up:
default:
- bottom = p->start;
- top = p->start + p->height - 1;
+ bottom = (Int)p->start;
+ top = (Int)( p->start + p->height - 1 );
}
if ( Insert_Y_Turn( RAS_VARS bottom ) ||
@@ -922,20 +922,20 @@
}
else
{
- e1 = TRUNC( y1 );
- f1 = FRAC( y1 );
+ e1 = (Int)TRUNC( y1 );
+ f1 = (Int)FRAC( y1 );
}
if ( y2 > maxy )
{
/* x2 += FMulDiv( Dx, maxy - y2, Dy ); UNNECESSARY */
- e2 = TRUNC( maxy );
+ e2 = (Int)TRUNC( maxy );
f2 = 0;
}
else
{
- e2 = TRUNC( y2 );
- f2 = FRAC( y2 );
+ e2 = (Int)TRUNC( y2 );
+ f2 = (Int)FRAC( y2 );
}
if ( f1 > 0 )
@@ -3116,7 +3116,7 @@
( ( c << 2 ) & 0x0030 ) |
(c & 0x0003 );
- raster->count_table[n] = c;
+ raster->count_table[n] = (UInt)c;
}
#ifdef FT_RASTER_OPTION_ANTI_ALIASING
diff --git a/src/raster/ftrend1.c b/src/raster/ftrend1.c
index c375d58..d7ab6e4 100644
--- a/src/raster/ftrend1.c
+++ b/src/raster/ftrend1.c
@@ -95,10 +95,10 @@
/* convert a slot's glyph image into a bitmap */
static FT_Error
- ft_raster1_render( FT_Renderer render,
- FT_GlyphSlot slot,
- FT_UInt mode,
- FT_Vector* origin )
+ ft_raster1_render( FT_Renderer render,
+ FT_GlyphSlot slot,
+ FT_Render_Mode mode,
+ FT_Vector* origin )
{
FT_Error error;
FT_Outline* outline;
@@ -145,8 +145,8 @@
cbox.xMax = ( cbox.xMax + 63 ) & -64;
cbox.yMax = ( cbox.yMax + 63 ) & -64;
- width = ( cbox.xMax - cbox.xMin ) >> 6;
- height = ( cbox.yMax - cbox.yMin ) >> 6;
+ width = (FT_UInt)( ( cbox.xMax - cbox.xMin ) >> 6 );
+ height = (FT_UInt)( ( cbox.yMax - cbox.yMin ) >> 6 );
bitmap = &slot->bitmap;
memory = render->root.memory;
@@ -200,8 +200,8 @@
goto Exit;
slot->format = FT_GLYPH_FORMAT_BITMAP;
- slot->bitmap_left = cbox.xMin >> 6;
- slot->bitmap_top = cbox.yMax >> 6;
+ slot->bitmap_left = (FT_UInt)( cbox.xMin >> 6 );
+ slot->bitmap_top = (FT_UInt)( cbox.yMax >> 6 );
Exit:
return error;
diff --git a/src/sfnt/ttload.c b/src/sfnt/ttload.c
index 94c3233..603e490 100644
--- a/src/sfnt/ttload.c
+++ b/src/sfnt/ttload.c
@@ -216,7 +216,7 @@
if ( table.Length != 0x36 ||
FT_STREAM_SEEK( table.Offset + 12 ) ||
FT_READ_ULONG( magic ) ||
- magic != 0x5F0F3CF5U )
+ magic != 0x5F0F3CF5UL )
goto Bad_Format;
if ( FT_STREAM_SEEK( offset + 28 + 16*nn ) )
diff --git a/src/sfnt/ttpost.c b/src/sfnt/ttpost.c
index a548849..486ba3d 100644
--- a/src/sfnt/ttpost.c
+++ b/src/sfnt/ttpost.c
@@ -356,19 +356,12 @@
goto Exit;
/* now read postscript table */
- switch ( format )
- {
- case 0x00020000L:
+ if ( format == 0x00020000L )
error = load_format_20( face, stream );
- break;
-
- case 0x00028000L:
+ else if ( format == 0x00028000L )
error = load_format_25( face, stream );
- break;
-
- default:
+ else
error = SFNT_Err_Invalid_File_Format;
- }
face->postscript_names.loaded = 1;
@@ -382,38 +375,35 @@
{
FT_Memory memory = face->root.memory;
TT_Post_Names names = &face->postscript_names;
+ FT_Fixed format;
if ( names->loaded )
{
- switch ( face->postscript.FormatType )
+ format = face->postscript.FormatType;
+
+ if ( format == 0x00020000L )
{
- case 0x00020000L:
- {
- TT_Post_20 table = &names->names.format_20;
- FT_UShort n;
+ TT_Post_20 table = &names->names.format_20;
+ FT_UShort n;
- FT_FREE( table->glyph_indices );
- table->num_glyphs = 0;
+ FT_FREE( table->glyph_indices );
+ table->num_glyphs = 0;
- for ( n = 0; n < table->num_names; n++ )
- FT_FREE( table->glyph_names[n] );
+ for ( n = 0; n < table->num_names; n++ )
+ FT_FREE( table->glyph_names[n] );
- FT_FREE( table->glyph_names );
- table->num_names = 0;
- }
- break;
-
- case 0x00028000L:
- {
- TT_Post_25 table = &names->names.format_25;
+ FT_FREE( table->glyph_names );
+ table->num_names = 0;
+ }
+ else if ( format == 0x00028000L )
+ {
+ TT_Post_25 table = &names->names.format_25;
- FT_FREE( table->offsets );
- table->num_glyphs = 0;
- }
- break;
+ FT_FREE( table->offsets );
+ table->num_glyphs = 0;
}
}
names->loaded = 0;
@@ -448,6 +438,7 @@
{
FT_Error error;
TT_Post_Names names;
+ FT_Fixed format;
#ifdef FT_CONFIG_OPTION_POSTSCRIPT_NAMES
PSNames_Service psnames;
@@ -471,62 +462,58 @@
/* `.notdef' by default */
*PSname = MAC_NAME( 0 );
- switch ( face->postscript.FormatType )
+ format = face->postscript.FormatType;
+
+ if ( format == 0x00010000L )
{
- case 0x00010000L:
if ( idx < 258 ) /* paranoid checking */
*PSname = MAC_NAME( idx );
- break;
-
- case 0x00020000L:
- {
- TT_Post_20 table = &names->names.format_20;
-
-
- if ( !names->loaded )
- {
- error = load_post_names( face );
- if ( error )
- break;
- }
-
- if ( idx < (FT_UInt)table->num_glyphs )
- {
- FT_UShort name_index = table->glyph_indices[idx];
-
-
- if ( name_index < 258 )
- *PSname = MAC_NAME( name_index );
- else
- *PSname = (FT_String*)table->glyph_names[name_index - 258];
- }
- }
- break;
-
- case 0x00028000L:
- {
- TT_Post_25 table = &names->names.format_25;
-
-
- if ( !names->loaded )
- {
- error = load_post_names( face );
- if ( error )
- break;
- }
-
- if ( idx < (FT_UInt)table->num_glyphs ) /* paranoid checking */
- {
- idx += table->offsets[idx];
- *PSname = MAC_NAME( idx );
- }
- }
- break;
-
- case 0x00030000L:
- break; /* nothing to do */
}
+ else if ( format == 0x00020000L )
+ {
+ TT_Post_20 table = &names->names.format_20;
+
+ if ( !names->loaded )
+ {
+ error = load_post_names( face );
+ if ( error )
+ goto End;
+ }
+
+ if ( idx < (FT_UInt)table->num_glyphs )
+ {
+ FT_UShort name_index = table->glyph_indices[idx];
+
+
+ if ( name_index < 258 )
+ *PSname = MAC_NAME( name_index );
+ else
+ *PSname = (FT_String*)table->glyph_names[name_index - 258];
+ }
+ }
+ else if ( format == 0x00028000L )
+ {
+ TT_Post_25 table = &names->names.format_25;
+
+
+ if ( !names->loaded )
+ {
+ error = load_post_names( face );
+ if ( error )
+ goto End;
+ }
+
+ if ( idx < (FT_UInt)table->num_glyphs ) /* paranoid checking */
+ {
+ idx += table->offsets[idx];
+ *PSname = MAC_NAME( idx );
+ }
+ }
+
+ /* nothing to do for format == 0x00030000L */
+
+ End:
return SFNT_Err_Ok;
}
diff --git a/src/smooth/ftsmooth.c b/src/smooth/ftsmooth.c
index c871b55..199b94a 100644
--- a/src/smooth/ftsmooth.c
+++ b/src/smooth/ftsmooth.c
@@ -94,13 +94,13 @@
/* convert a slot's glyph image into a bitmap */
static FT_Error
- ft_smooth_render_generic( FT_Renderer render,
- FT_GlyphSlot slot,
- FT_UInt mode,
- FT_Vector* origin,
- FT_UInt required_mode,
- FT_Int hmul,
- FT_Int vmul )
+ ft_smooth_render_generic( FT_Renderer render,
+ FT_GlyphSlot slot,
+ FT_Render_Mode mode,
+ FT_Vector* origin,
+ FT_Render_Mode required_mode,
+ FT_Int hmul,
+ FT_Int vmul )
{
FT_Error error;
FT_Outline* outline = NULL;
@@ -231,10 +231,10 @@
/* convert a slot's glyph image into a bitmap */
static FT_Error
- ft_smooth_render( FT_Renderer render,
- FT_GlyphSlot slot,
- FT_UInt mode,
- FT_Vector* origin )
+ ft_smooth_render( FT_Renderer render,
+ FT_GlyphSlot slot,
+ FT_Render_Mode mode,
+ FT_Vector* origin )
{
return ft_smooth_render_generic( render, slot, mode, origin,
FT_RENDER_MODE_NORMAL,
@@ -244,10 +244,10 @@
/* convert a slot's glyph image into a horizontal LCD bitmap */
static FT_Error
- ft_smooth_render_lcd( FT_Renderer render,
- FT_GlyphSlot slot,
- FT_UInt mode,
- FT_Vector* origin )
+ ft_smooth_render_lcd( FT_Renderer render,
+ FT_GlyphSlot slot,
+ FT_Render_Mode mode,
+ FT_Vector* origin )
{
FT_Error error;
@@ -263,10 +263,10 @@
/* convert a slot's glyph image into a vertical LCD bitmap */
static FT_Error
- ft_smooth_render_lcd_v( FT_Renderer render,
- FT_GlyphSlot slot,
- FT_UInt mode,
- FT_Vector* origin )
+ ft_smooth_render_lcd_v( FT_Renderer render,
+ FT_GlyphSlot slot,
+ FT_Render_Mode mode,
+ FT_Vector* origin )
{
FT_Error error;
diff --git a/src/type42/t42objs.c b/src/type42/t42objs.c
index d3abb38..dcc8077 100644
--- a/src/type42/t42objs.c
+++ b/src/type42/t42objs.c
@@ -147,7 +147,7 @@
T42_Face face,
FT_Int face_index,
FT_Int num_params,
- FT_Parameter* params)
+ FT_Parameter* params )
{
FT_Error error;
PSNames_Service psnames;
@@ -595,7 +595,7 @@
T42_GlyphSlot_Load( FT_GlyphSlot glyph,
FT_Size size,
FT_Int glyph_index,
- FT_Int load_flags )
+ FT_Int32 load_flags )
{
FT_Error error;
T42_GlyphSlot t42slot = (T42_GlyphSlot)glyph;
diff --git a/src/type42/t42objs.h b/src/type42/t42objs.h
index fceb811..6fb1769 100644
--- a/src/type42/t42objs.h
+++ b/src/type42/t42objs.h
@@ -103,7 +103,7 @@
T42_GlyphSlot_Load( FT_GlyphSlot glyph,
FT_Size size,
FT_Int glyph_index,
- FT_Int load_flags );
+ FT_Int32 load_flags );
FT_LOCAL( void )
T42_GlyphSlot_Done( T42_GlyphSlot slot );
diff --git a/src/winfonts/winfnt.c b/src/winfonts/winfnt.c
index d54eecc..21ff6df 100644
--- a/src/winfonts/winfnt.c
+++ b/src/winfonts/winfnt.c
@@ -563,7 +563,7 @@
FNT_Load_Glyph( FT_GlyphSlot slot,
FNT_Size size,
FT_UInt glyph_index,
- FT_Int load_flags )
+ FT_Int32 load_flags )
{
FNT_Font font = size->font;
FT_Error error = 0;