From 644b1ad49e2da9662aa8d4d263896c9508c58ee0 Mon Sep 17 00:00:00 2001 From: Werner Lemberg Date: Wed, 28 Mar 2007 21:17:11 +0000 Subject: [PATCH] * builds/win32/visualc/index.html, builds/win32/visualc/freetype.dsp, builds/win32/visualc/freetype.vcproc, README: s/2.3.2/2.3.3/, s/232/233/. * docs/CHANGES: Mention ftdiff. --- ChangeLog | 34 +++++++++++++++++--------- README | 2 +- builds/unix/ftconfig.in | 2 +- builds/vms/ftconfig.h | 2 +- builds/win32/visualc/freetype.dsp | 20 ++++++++-------- builds/win32/visualc/freetype.vcproj | 12 +++++----- builds/win32/visualc/index.html | 10 ++++---- docs/CHANGES | 36 +++++++++++++++++----------- include/freetype/config/ftconfig.h | 2 +- src/autofit/aflatin.c | 20 ++++++++-------- src/autofit/afloader.c | 4 ++-- 11 files changed, 82 insertions(+), 62 deletions(-) diff --git a/ChangeLog b/ChangeLog index 25add7773..8f7922294 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,6 @@ 2007-03-28 David Turner - * src/base/ftbitmap.c (ft_bitmap_assure_buffer): fix zero-ing of the + * src/base/ftbitmap.c (ft_bitmap_assure_buffer): Fix zero-ing of the padding. 2007-03-28 Werner Lemberg @@ -12,29 +12,41 @@ (_bdf_parse_glyphs): Limit allowed number of glyphs in font to the number of code points in Unicode. + * builds/win32/visualc/index.html, + builds/win32/visualc/freetype.dsp, + builds/win32/visualc/freetype.vcproc, README: s/2.3.2/2.3.3/, + s/232/233/. + + * docs/CHANGES: Mention ftdiff. + 2007-03-26 David Turner - * src/truetype/ttinterp.c: Last fix for the `MD' instruction - bytecode and remove the FIX_BYTECODE macros from the sources. + * src/truetype/ttinterp.c [FIX_BYTECODE]: Remove it and + corresponding code. + (Ins_MD): Last regression fix. * src/autofit/aflatin.c (af_latin_metrics_init_blues): Fix blues - computations in order to ignore 1-point contours. These are never - rasterized and correspond in certain fonts mark-attach points that - are very far from the glyph's real outline, ruining the computation. + computations in order to ignore single-point contours. These are + never rasterized and correspond in certain fonts to mark-attach + points that are very far from the glyph's real outline, ruining the + computation. * src/autofit/afloader.c (af_loader_load_g): In the case of monospaced fonts, always set `rsb_delta' and `lsb_delta' to 0. Otherwise code that uses them will most certainly ruin the fixed advance property. - * docs/CHANGES, docs/VERSION, include/freetype/freetype.h, - builds/unix/configure.raw, README, Jamfile: Update documentation and - bump version number to 2.3.3. + * docs/CHANGES, docs/VERSION.DLL, README, Jamfile (RefDoc): Update + documentation and bump version number to 2.3.3. + + * include/freetype/freetype.h (FREETYPE_PATCH): Set to 3. + + * builds/unix/configure.raw (version_info): Set to 9:14:3. 2007-03-26 suzuki toshiya - * builds/unix/ftconfig.in: disable Carbon framework dependency on - 64bit ABI on Mac OS X 10.4.x (ppc & i386), found by Sean McBride. + * builds/unix/ftconfig.in: Disable Carbon framework dependency on + 64bit ABI on Mac OS X 10.4.x (ppc & i386). Found by Sean McBride. * builds/vms/ftconfig.h: Ditto. * include/freetype/config/ftconfig.h: Ditto. diff --git a/README b/README index b88b572e3..d6507f27d 100644 --- a/README +++ b/README @@ -28,7 +28,7 @@ freetype-doc-2.3.3.tar.bz2 freetype-doc-2.3.3.tar.gz - ftdoc232.zip + ftdoc233.zip Bugs diff --git a/builds/unix/ftconfig.in b/builds/unix/ftconfig.in index e773b415a..1a9626465 100644 --- a/builds/unix/ftconfig.in +++ b/builds/unix/ftconfig.in @@ -4,7 +4,7 @@ /* */ /* UNIX-specific configuration file (specification only). */ /* */ -/* Copyright 1996-2001, 2002, 2003, 2004, 2006 by */ +/* Copyright 1996-2001, 2002, 2003, 2004, 2006, 2007 by */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* */ /* This file is part of the FreeType project, and may only be used, */ diff --git a/builds/vms/ftconfig.h b/builds/vms/ftconfig.h index 408b51fe9..185c3348e 100644 --- a/builds/vms/ftconfig.h +++ b/builds/vms/ftconfig.h @@ -4,7 +4,7 @@ /* */ /* VMS-specific configuration file (specification only). */ /* */ -/* Copyright 1996-2001, 2002, 2003, 2004, 2006 by */ +/* Copyright 1996-2001, 2002, 2003, 2004, 2006, 2007 by */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* */ /* This file is part of the FreeType project, and may only be used, */ diff --git a/builds/win32/visualc/freetype.dsp b/builds/win32/visualc/freetype.dsp index dbd518507..5c9556be8 100644 --- a/builds/win32/visualc/freetype.dsp +++ b/builds/win32/visualc/freetype.dsp @@ -54,7 +54,7 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LIB32=link.exe -lib # ADD BASE LIB32 /nologo -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype232.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype233.lib" !ELSEIF "$(CFG)" == "freetype - Win32 Debug" @@ -78,7 +78,7 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LIB32=link.exe -lib # ADD BASE LIB32 /nologo -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype232_D.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype233_D.lib" !ELSEIF "$(CFG)" == "freetype - Win32 Debug Multithreaded" @@ -102,8 +102,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"lib\freetype232_D.lib" -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype232MT_D.lib" +# ADD BASE LIB32 /nologo /out:"lib\freetype233_D.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype233MT_D.lib" !ELSEIF "$(CFG)" == "freetype - Win32 Release Multithreaded" @@ -126,8 +126,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"lib\freetype232.lib" -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype232MT.lib" +# ADD BASE LIB32 /nologo /out:"lib\freetype233.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype233MT.lib" !ELSEIF "$(CFG)" == "freetype - Win32 Release Singlethreaded" @@ -151,8 +151,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype232.lib" -# ADD LIB32 /out:"..\..\..\objs\freetype232ST.lib" +# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype233.lib" +# ADD LIB32 /out:"..\..\..\objs\freetype233ST.lib" # SUBTRACT LIB32 /nologo !ELSEIF "$(CFG)" == "freetype - Win32 Debug Singlethreaded" @@ -177,8 +177,8 @@ BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib -# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype232_D.lib" -# ADD LIB32 /nologo /out:"..\..\..\objs\freetype232ST_D.lib" +# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype233_D.lib" +# ADD LIB32 /nologo /out:"..\..\..\objs\freetype233ST_D.lib" !ENDIF diff --git a/builds/win32/visualc/freetype.vcproj b/builds/win32/visualc/freetype.vcproj index ec3e76c7b..43fe3cff8 100644 --- a/builds/win32/visualc/freetype.vcproj +++ b/builds/win32/visualc/freetype.vcproj @@ -69,7 +69,7 @@ /> This directory contains project files for Visual C++, named freetype.dsp, and Visual Studio, called freetype.sln. It -compiles the following libraries from the FreeType 2.3.2 sources:

+compiles the following libraries from the FreeType 2.3.3 sources:

    -    freetype232.lib     - release build; single threaded
    -    freetype232_D.lib   - debug build;   single threaded
    -    freetype232MT.lib   - release build; multi-threaded
    -    freetype232MT_D.lib - debug build;   multi-threaded
    + freetype233.lib - release build; single threaded + freetype233_D.lib - debug build; single threaded + freetype233MT.lib - release build; multi-threaded + freetype233MT_D.lib - debug build; multi-threaded

Be sure to extract the files with the Windows (CR+LF) line endings. ZIP diff --git a/docs/CHANGES b/docs/CHANGES index 7186c3b3a..dc2fa25e0 100644 --- a/docs/CHANGES +++ b/docs/CHANGES @@ -3,25 +3,33 @@ CHANGES BETWEEN 2.3.3 and 2.3.2 I. IMPORTANT BUG FIXES - Remove a serious regression in the TrueType bytecode interpreter - that was introduced in 2.3.2. Sorry ! Note that this doesn't not - disable the improvements introduced to the intepreter in 2.3.2, - only some ill cases that occured with certain fonts (though a - few popular ones). + that was introduced in version 2.3.2. Note that this does not + disable the improvements introduced to the intepreter in version + 2.3.2, only some ill cases that occurred with certain fonts + (though a few popular ones). - - Fixed some Autoconf/compilation issues on some 64-bit platforms - (see ChangeLog for details) + - The auto-hinter now ignores single-point contours for computing + blue zones. This bug created `wavy' baselines when rendering + text with various fonts that use these contours to model + mark-attach points (these are points that are never rasterized + and are placed outside of the glyph's real outline). - - The auto-hinter now ignores 1-point contours when computing blue - zones. This bug created "wavy" baselines when rendering text with - various fonts that use these contours to model mark-attach points - that are never rasterized and are placed outside of the glyph's - real outline - - - the "rsb_delta" and "lsb_delta" glyph slot fields are set to 0 - for mono-spaced fonts. Otherwise code that uses them would + - The `rsb_delta' and `lsb_delta' glyph slot fields are now set + to 0 for mono-spaced fonts. Otherwise code that uses them would essentially ruin the fixed-advance property. + II. MISCELLANEOUS + + - Fixed compilation issues on some 64-bit platforms (see ChangeLog + for details). + + - A new demo program `ftdiff' has been added to compare TrueType + hinting, FreeType's auto hinting, and rendering without hinting + in three columns. + + ====================================================================== + CHANGES BETWEEN 2.3.2 and 2.3.1 I. IMPORTANT BUG FIXES diff --git a/include/freetype/config/ftconfig.h b/include/freetype/config/ftconfig.h index 74d64c9b1..1547f5adb 100644 --- a/include/freetype/config/ftconfig.h +++ b/include/freetype/config/ftconfig.h @@ -4,7 +4,7 @@ /* */ /* ANSI-specific configuration file (specification only). */ /* */ -/* Copyright 1996-2001, 2002, 2003, 2004, 2006 by */ +/* Copyright 1996-2001, 2002, 2003, 2004, 2006, 2007 by */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* */ /* This file is part of the FreeType project, and may only be used, */ diff --git a/src/autofit/aflatin.c b/src/autofit/aflatin.c index ce0ca8532..cba9b6e7b 100644 --- a/src/autofit/aflatin.c +++ b/src/autofit/aflatin.c @@ -227,13 +227,13 @@ FT_Int old_best_point = best_point; FT_Int pp; + last = glyph->outline.contours[nn]; - /* avoid 1-point contours, they're never rasterized and - * in some fonts, they correspond to mark attachement - * points that are way outside the glyph's real outline. - */ - if (last <= first) + /* Avoid single-point contours since they are never rasterized. */ + /* In some fonts, they correspond to mark attachment points */ + /* which are way outside of the glyph's real outline. */ + if ( last <= first ) continue; if ( AF_LATIN_IS_TOP_BLUE( bb ) ) @@ -250,12 +250,12 @@ for ( pp = first; pp <= last; pp++ ) if ( best_point < 0 || points[pp].y < best_y ) { - best_point = pp; - best_y = points[pp].y; + best_point = pp; + best_y = points[pp].y; } } - if (best_point != old_best_point) + if ( best_point != old_best_point ) { best_first = first; best_last = last; @@ -264,9 +264,9 @@ AF_LOG(( "%5d", best_y )); } - /* now, check whether the point belongs to a straight or round */ + /* now check whether the point belongs to a straight or round */ /* segment; we first need to find in which contour the extremum */ - /* lies, then see its previous and next points */ + /* lies, then inspect its previous and next points */ { FT_Int prev, next; FT_Pos dist; diff --git a/src/autofit/afloader.c b/src/autofit/afloader.c index 9f925b3f6..1633e9e7f 100644 --- a/src/autofit/afloader.c +++ b/src/autofit/afloader.c @@ -432,8 +432,8 @@ slot->metrics.horiAdvance = FT_MulFix( slot->metrics.horiAdvance, metrics->scaler.x_scale ); - /* also reset the rsb_delta and lsb_delta to 0. Otherwise code */ - /* that uses them is going to ruin the fixed advance width */ + /* Set delta values to 0. Otherwise code that uses them is */ + /* going to ruin the fixed advance width. */ slot->lsb_delta = 0; slot->rsb_delta = 0; }