diff --git a/ChangeLog b/ChangeLog index 765e9bfa1..8fcf9481c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,610 +1,611 @@ 2005-10-17 David Turner - * src/base/ftobjs.c (FT_Open_Face): don't call FT_New_GlyphSlot and - FT_New_Size if we're opening a face with face_index < 0 (which is only - used for testing the format). - - * src/gxvalid/gxvmort0.c: removed compiler warning - -2005-10-16 David Turner - - * src/tools/apinames.c: adding new tool to extract public API - function names from header files - -2005-10-05 Werner Lemberg - - Add FT_FACE_FLAG_HINTER to indicate that a specific font driver has - a hinting engine of its own. - - * include/freetype/freetype.h (FT_FACE_FLAG_HINTER): New macro. - - * src/cff/cffobjs.c (cff_face_init), src/cid/cidobjs.c - (cid_face_init), src/truetype/ttobjs.c (tt_face_init) - [TT_CONFIG_OPTION_BYTECODE_INTERPRETER], src/type1/t1objs.c - (T1_Face_Init), src/type42/t42objs.c (T42_Face_Init) - [TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Update face flags. - - * docs/CHANGES: Document it. - -2005-09-27 Werner Lemberg - - * builds/unix/freetype2.m4: Add license exception so that the file - can be used in any other autoconf script. - -2005-09-26 David Turner - - * src/autofit/aflatin.c (af_latin_compute_stem_width): Fix bad - computation of the `vertical' flag, causing ugly things in LCD mode - and others. - -2005-09-23 David Turner - - * src/autofit/aflatin.c (af_latin_hints_init): Fix a bug that - prevented internal hint mode bitflags from being computed correctly. - - * src/base/Jamfile: Adding src/base/ftgxval.c. - - * src/gxvalid/gxvbsln.c, src/gxvalid/gxvcommn.c, - src/gxvalid/gxvfeat.c, src/gxvalid/gxvjust.c, src/gxvalid/gxvkern.c, - src/gxvalid/gxvlcar.c, src/gxvalid/gxvmort.c, - src/gxvalid/gxvmort0.c, src/gxvalid/gxvmort1.c, - src/gxvalid/gxvmort2.c, src/gxvalid/gxvmort4.c, - src/gxvalid/gxvmort5.c, src/gxvalid/gxvmorx.c, - src/gxvalid/gxvmorx0.c, src/gxvalid/gxvmorx1.c, - src/gxvalid/gxvmorx2.c, src/gxvalid/gxvmorx5.c, - src/gxvalid/gxvopbd.c, src/gxvalid/gxvprop.c, - src/truetype/ttgload.c: Remove _many_ compiler warnings when - compiling with Visual C++ at maximum level (/W4). - - * src/autofit/afangles.c (af_angle_atan): Replaced CORDIC-based - implementation with one using lookup tables. This simple thing - speeds up glyph loading by 18%, according to ftbench! - - * src/sfnt/sfdriver.c (sfnt_get_interface): Don't check for - `get_sfnt' and `load_sfnt' module interfaces. - -2005-09-22 Werner Lemberg - - * docs/CHANGES: Mention SING Glyphlet support. - -2005-09-22 David Turner - - * src/base/Jamfile: Disable compilation of ftgxval module - temporarily. - -2005-09-19 David Somers - - * freetype2/src/sfnt/ttload.c (sfnt_dir_check): Modified to allow a - font to have no `head' table if tables `SING' and `META' are - present; this is to support `SING Glyphlet'. - - `SING Glyphlet' is an extension to OpenType developed by Adobe - primarily to facilitate adding supplemental glyphs to an OpenType - font (with emphasis on, but not necessariy limited to, gaiji to a - CJK font). A SING Glyphlet Font is an OpenType font that contains - the outline(s), either in a `glyf' or `CFF' table, for a glyph; - `cmap', `BASE', and `GSUB' tables are present with the same format - and functionaliy as a regular OpenType font; there are no `name', - `head', `OS/2', and `post' tables; there are two new tables, `SING' - which contains details about the glyphlet, and `META' which contains - metadata. - - Further information on the SING Glyphlet format can be found at: - - http://www.adobe.com/products/indesign/sing_gaiji.html - - * freetype2/include/freetype/ttags.h (TTAG_SING, TTAG_META): New - macros for the OpenType tables `SING' and `META'. These two tables - are used in SING Glyphlet Format fonts. - -2005-09-09 Werner Lemberg - - * src/sfnt/sfobjs.c (sfnt_load_face): Reactivate code to set - FT_FACE_FLAG_KERNING which has been commented out erroneously. - - * docs/CHANGES: Document it. - -2005-09-05 Werner Lemberg - - Fixes for `make multi' and using C++ compiler. - - * gxvalid/gxvcommn.c (gxv_set_length_by_ushort_offset, - gxv_set_length_by_ulong_offset, gxv_array_getlimits_byte, - gxv_array_getlimits_ushort): Declare with FT_LOCAL_DEF. - (gxv_compare_ranges): Make it static. - (gxv_LookupTable_fmt0_validate, gxv_LookupTable_fmt2_validate, - gxv_LookupTable_fmt4_validate, gxv_LookupTable_fmt6_validate, - gxv_LookupTable_fmt8_validate, gxv_LookupTable_validate): Improve - trace messages. - (gxv_StateArray_validate, gxv_XStateArray_validate): s/class/clazz/. - (GXV_STATETABLE_HEADER_SIZE, GXV_STATEHEADER_SIZE, - GXV_XSTATETABLE_HEADER_SIZE, GXV_XSTATEHEADER_SIZE): Move to - gxvcommn.h. - - * gxvalid/gxvcommn.h: Add prototypes for - gxv_StateTable_subtable_setup, gxv_XStateTable_subtable_setup, - gxv_XStateTable_validate, gxv_array_getlimits_byte, - gxv_array_getlimits_ushort, gxv_set_length_by_ushort_offset, - gxv_set_length_by_ulong_offset, gxv_odtect_add_range, - gxv_odtect_validate. - (GXV_STATETABLE_HEADER_SIZE, GXV_STATEHEADER_SIZE, - GXV_XSTATETABLE_HEADER_SIZE, GXV_XSTATEHEADER_SIZE): Moved from - gxvcommn.c. - - * src/gxvalid/gxvbsln.c (gxv_bsln_LookupValue_validate, - gxv_bsln_parts_fmt1_validate): Improve trace messages. - - * gxvalid/gxvfeat.c: Split off predefined registry stuff to... - * gxvalid/gxvfeat.h: New file. - - * gxvalid/gxvjust.c (gxv_just_wdc_entry_validate): Improve trace - message. - - * gxvalid/gxvkern.c (GXV_kern_Dialect): Add KERN_DIALECT_UNKNOWN. - (gxv_kern_subtable_fmt1_valueTable_load, - gxv_kern_subtable_fmt1_subtable_setup, - gxv_kern_subtable_fmt1_entry_validate): Fix C++ compiler errors. - (gxv_kern_coverage_validate): Use KERN_DIALECT_UNKWOWN. - Improve trace message. - (gxv_kern_validate_generic): Fix C++ compiler error. - Improve trace message. - (gxv_kern_validate_classic): Fix C++ compiler error. - - * gxvalid/gxvmort0.c (gxv_mort_subtable_type0_validate): Declare - with FT_LOCAL_DEF. - - * gxvalid/gxvmort1.c - (gxv_mort_subtable_type1_substitutionTable_load, - gxv_mort_subtable_type1_subtable_setup): Fix C++ compiler errors. - (gxv_mort_subtable_type1_substTable_validate): Improve trace - message. - (gxv_mort_subtable_type1_validate): Declare with FT_LOCAL_DEF. - - * gxvalid/gxvmort2.c (gxv_mort_subtable_type2_opttable_load, - gxv_mort_subtable_type2_subtable_setup, - gxv_mort_subtable_type2_ligActionOffset_validate, - gxv_mort_subtable_type2_ligatureTable_validate): Fix C++ compiler - errors. - (gxv_mort_subtable_type2_validate): Declare with FT_LOCAL_DEF. - - * gxvalid/gxvmort4.c (gxv_mort_subtable_type4_validate): Declare - with FT_LOCAL_DEF. - - * gxvalid/gxvmort5.c (gxv_mort_subtable_type5_subtable_setup, - gxv_mort_subtable_type5_InsertList_validate): Fix C++ compiler - errors. - (gxv_mort_subtable_type5_validate): Declare with FT_LOCAL_DEF. - - * gxvalid/gxvmort.c: Include gxvfeat.h. - (gxv_mort_featurearray_validate, gxv_mort_coverage_validate): - Declare with FT_LOCAL_DEF. - (gxv_mort_subtables_validate, gxv_mort_validate): Improve trace - messages. - - * gxvalid/gxvmort.h (gxv_mort_feature_validate): Remove. - - * gxvalid/gxvmorx0.c (gxv_morx_subtable_type0_validate): Declare - with FT_LOCAL_DEF. - - * gxvalid/gxvmorx1.c - (gxv_morx_subtable_type1_substitutionTable_load, - gxv_morx_subtable_type1_subtable_setup, - gxv_morx_subtable_type1_entry_validate, - gxv_morx_subtable_type1_substitutionTable_validate): Fix C++ - compiler errors. - (gxv_morx_subtable_type1_validate): Declare with FT_LOCAL_DEF. - - * gxvalid/gxvmorx2.c (gxv_morx_subtable_type2_opttable_load, - gxv_morx_subtable_type2_subtable_setup, - gxv_morx_subtable_type2_ligActionIndex_validate, - gxv_morx_subtable_type2_ligatureTable_validate): Fix C++ compiler - errors. - (gxv_morx_subtable_type2_validate): Declare with FT_LOCAL_DEF. - Fix typo. - - * gxvalid/gxvmorx4.c (gxv_morx_subtable_type4_validate): Declare - with FT_LOCAL_DEF. - - * gxvalid/gxvmorx5.c (gxv_morx_subtable_type5_insertionGlyph_load, - gxv_morx_subtable_type5_subtable_setup): Fix C++ compiler error. - (gxv_morx_subtable_type5_validate): Declare with FT_LOCAL_DEF. - - * gxvalid/gxvmorx.c (gxv_morx_subtables_validate, - gxv_morx_validate): Improve trace message. - - * gxvalid/gxvopbd.c (gxv_opbd_LookupFmt4_transit): Fix compiler - warnings. - (gxv_opbd_validate): Improve trace message. - - * gxvalid/gxvprop.c: Decorate constants with `U' and `L' where - appropriate. - (gxv_prop_zero_advance_validate, gxv_prop_validate): Improve trace - message. - - * gxvalid/gxvtrak.c (gxv_trak_trackTable_validate): Remove unused - parameter. Update all callers. - (gxv_trak_validate): Improve trace message. - - * rules.mk (GXV_DRV_H): Add gxvfeat.h. - -2005-09-01 Werner Lemberg - - * src/gxvalid/gxvbsln.c (GXV_BSLN_VALUE_EMPTY): Add `U'. - - * src/gxvalid/gxmort1.c (GXV_MORT_SUBTABLE_TYPE1_HEADER_SIZE), - src/gxvalid/gxmort2.c (GXV_MORT_SUBTABLE_TYPE2_HEADER_SIZE): Fix - typo. - - * src/gxvalid/gxvmorx0.c, src/gxvalid/gxvmorx1.c, - src/gxvalid/gxvmorx2.c, src/gxvalid/gxvmorx4.c, - src/gxvalid/gxvmorx5.c, src/gxvalid/gxvmort.c: Improve trace - messages. - Decorate constants with `U' and `L' where appropriate. - Fix compiler warnings. - -2005-08-31 Werner Lemberg - - * src/truetype/ttgload.c (load_truetype_glyph): Fix typo. - - * src/gxvalid/gxvbsln.c (gxv_bsln_validate): Fix trace message. - - * src/gxvalid/gxvcommn.c (gxv_odtect_add_range): Use `const'. - - * src/gxvalid/gxvfeat.c, src/gxvalid/gxvjust.c, - src/gxvalid/gxvkern.c, src/gxvalid/gxvlcar.c, src/gxvalid/gxvmod.c, - src/gxvalid/gxvmort0.c, src/gxvalid/gxvmort1.c, - src/gxvalid/gxvmort2.c, src/gxvalid/gxvmort4.c, - src/gxvalid/gxvmort5.c, src/gxvalid/gxvmort.c: Improve trace - messages. - Decorate constants with `U' and `L' where appropriate. - Fix compiler warnings. - -2005-08-30 Werner Lemberg - - * src/gxvalid/README: Revised. - * src/gxvalid/gxvbsln.c: Fix compiler warnings. - * src/gxvalid/gxvcommn.c: Fix compiler warnings. - (gxv_XEntryTable_validate, gxv_compare_ranges): Remove unused - parameter. Update all callers. - Improve trace messages. - Some formatting. - -2005-08-29 Werner Lemberg - - * include/freetype/freetype.h, include/freetype/ftchapters.h: Add - a preliminary section with some explanations about user allocation. - - * src/tools/docmaker/tohtml.py (HtmlFormatter.section_enter): - Don't abort if there are no data types, functions, etc., in a - section. - Print synopsis only if we have a data type, function, etc. - - * docs/INSTALL.ANY, docs/INSTALL, docs/INSTALL.UNX, docs/CUSTOMIZE, - docs/INSTALL.GNU, docs/TRUETYPE, docs/DEBUG, docs/UPGRADE.UNX, - docs/VERSION.DLL, docs/formats.txt: Revised, formatted. - -2005-08-28 George Williams - - * src/truetype/ttgload.c [TT_MAX_COMPOSITE_RECURSE]: Removed. - (load_truetype_glyph): Limit recursion depth by `maxComponentDepth'. - -2005-08-25 J. Ali Harlow - - * builds/unix/freetype2.in (CFlags): Add missing directory. - -2005-08-24 Werner Lemberg - - * docs/CHANGES: Mention gxvalid module. - -2005-08-23 Werner Lemberg - - * src/autofit/aflatin.c (af_latin_metrics_scale): Initialize - render mode properly. Reported by chris@dokein.co.uk. - -2005-08-23 suzuki toshiya - - Add gxvalid module to validate TrueType GX/AAT tables. - - Modifications on existing files: - - * Jamfile: Register gxvalid module. - * src/base/Jamfile: Register ftgxval.c. - * src/base/rule.mk: Register ftgxval.c. - * docs/INSTALL.ANY: Register gxvalid/gxvalid.c. - - * include/freetype/config/ftheader.h (FT_GX_VALIDATE_H): New macro - to include gxvalid header file. - * include/freetype/config/ftmodule.h: Register gxv_module_class. - - * include/freetype/ftchapters.h: Add comment about gx_validation. - * include/freetype/ftotval.h: Change keyword FT_VALIDATE_XXX - to FT_VALIDATE_OTXXX to co-exist with gxvalid. - * include/freetype/tttags.h: Add tags for TrueType GX/AAT tables. - - * include/freetype/internal/ftserv.h (FT_SERVICE_GX_VALIDATE_H): New - macro for gxvalid service. - * include/freetype/internal/fttrace.h: Add trace facilities for - gxvalid. - - New files on existing directories: - - * include/freetype/internal/services/svgxval.h: Registration of - validation service for TrueType GX/AAT and classic kern table. - * include/freetype/ftgxval.h: Public API definition to use gxvalid. - * src/base/ftgxval.c: Public API of gxvalid. - - New files under src/gxvalid/: - - * src/gxvalid/Jamfile src/gxvalid/README src/gxvalid/module.mk - src/gxvalid/rules.mk src/gxvalid/gxvalid.c src/gxvalid/gxvalid.h - src/gxvalid/gxvbsln.c src/gxvalid/gxvcommn.c src/gxvalid/gxvcommn.h - src/gxvalid/gxverror.h src/gxvalid/gxvfeat.c src/gxvalid/gxvfgen.c - src/gxvalid/gxvjust.c src/gxvalid/gxvkern.c src/gxvalid/gxvlcar.c - src/gxvalid/gxvmod.c src/gxvalid/gxvmod.h src/gxvalid/gxvmort.c - src/gxvalid/gxvmort.h src/gxvalid/gxvmort0.c src/gxvalid/gxvmort1.c - src/gxvalid/gxvmort2.c src/gxvalid/gxvmort4.c src/gxvalid/gxvmort5.c - src/gxvalid/gxvmorx.c src/gxvalid/gxvmorx.h src/gxvalid/gxvmorx0.c - src/gxvalid/gxvmorx1.c src/gxvalid/gxvmorx2.c src/gxvalid/gxvmorx4.c - src/gxvalid/gxvmorx5.c src/gxvalid/gxvopbd.c src/gxvalid/gxvprop.c - src/gxvalid/gxvtrak.c: New files, gxvalid body. - -2005-08-21 Werner Lemberg - - * src/truetype/ttgload.c (TT_Load_Glyph): Only translate outline - to (0,0) if bit 1 of the `head' table isn't set. This improves - rendering of buggy fonts. - -2005-08-20 Chia I Wu - - * src/truetype/ttdriver.c (Load_Glyph): Don't check the validity of - ttmetrics here. TrueType fonts with only sbits always have - ttmetrics.valid set to false. - - * src/truetype/ttgload.c (TT_Load_Glyph): Check that ttmetrics is - valid before loading outline glyph. - - * src/cache/ftcimage.c (FTC_INode_New): Fix a memory leak. - -2005-08-20 Werner Lemberg - - * src/sfnt/ttload.c (tt_face_load_metrics_header): Ignore missing - `hhea' table for SFNT Mac fonts. Change based on a patch by - mpsuzuki@hiroshima-u.ac.jp. - -2005-08-20 Masatake YAMATO - - * src/otvalid/otvmod.c (otv_validate): Use ft_validator_run instead - of ft_setjmp. - -2005-08-19 Werner Lemberg - - * src/truetype/ttgload.c (load_truetype_glyph): Fix compiler - warnings. - -2005-08-16 Chia I Wu - - * src/truetype/ttinterp.c, src/truetype/ttinterp.h: Update copyright - messages. - -2005-08-16 Chia I Wu - - * src/truetype/ttinterp.c, src/truetype/ttinterp.h: Remove original - TT_Done_Context and rename TT_Destroy_Context to TT_Done_Context - with slight changes. - Update all callers. - (TT_New_Context): Now takes TT_Driver argument directly. - Update all callers. - - * src/truetype/ttobjs.h (tt_slot_init): New function. - * src/truetype/ttobjs.c (tt_driver_init): Initialize execution - context here. - (tt_slot_init): New function to create extra points for the internal - glyph loader. We then use it directly, instead of face's glyph - loader, when loading glyph. - - * src/truetype/ttdriver.c (tt_driver_class): Use tt_slot_init for - glyph slot initialization. - (Load_Glyph): Load flag dependencies are handled here. Return error - if size is NULL. - - * src/truetype/ttgload.c: Heavy cleanup and refactoring. - (org_to_cur): Removed. - (TT_Load_Simple_Glyph): Call FT_GlyphLoader_CheckPoints. - (TT_Hint_Glyph): New funcion to hint a zone, prepared by caller. - (TT_Process_Simple_Glyph): s/load/loader/. - Use loader->pp values instead of recalculation. - Use TT_Hint_Glyph. - No need to save/restore loader->stream before and after - TT_Vary_Get_Glyph_Deltas now. - (TT_LOADER_SET_PP): New macro to calculate and set the four phantom - points. - (load_truetype_glyph): Never set exec->glyphSize to 0. This closes - Savannah bug #13107. - Forget glyph frame before calling TT_Process_Simple_Glyph. - Use TT_LOADER_SET_PP. - Scale all four phantom points. - Split off some functionality to ... - (TT_Process_Composite_Component, TT_Process_Composite_Glyph): These - new functions. - (TT_Load_Glyph): Set various fields of `glyph' here, not in - load_truetype_glyph and compute_glyph_metrics. - Split off some functionality to ... - (load_sbit_image, tt_loader_init): These new functions. - (compute_glyph_metrics): Call FT_Outline_Get_CBox. - -2005-08-08 Werner Lemberg - - * docs/INSTALL.ANY: Updated. - -2005-08-05 Werner Lemberg - - * src/cff/cffgload.c (cff_builder_close_contour), - src/psaux/psobjs.c (t1_builder_close_contour): Protect against - zero `outline' pointer. - - * src/base/ftgloadr.c (FT_GlyphLoader_Add): Protect against zero - `loader' address. - -2005-08-03 Werner Lemberg - - * src/sfnt/sfdriver.c (sfnt_interface) [FT_OPTIMIZE_MEMORY]: - Reactivate pointers to tt_find_sbit_image and tt_load_sbit_metrics - to make X work again. - -2005-08-02 Werner Lemberg - - * src/otvalid/otvcommn.h: Remove dead code. - -2005-07-31 Chia I Wu - - * src/truetype/ttobjs.h (tt_size_run_fpgm, tt_size_run_prep): New - functions. - - * src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep): New - functions. - (tt_size_init): Add 4, instead of 2, (phantom) points to twilight - zone. - Move code that runs fpgm to tt_size_run_fpgm. - (Reset_Outline_Size): Move code that runs prep to tt_size_run_prep. - (tt_glyphzone_new): Allocate right size of arrays. - Set max_points and max_contours properly. - -2005-07-26 Chia I Wu - - * src/truetype/ttdriver.c (Set_Char_Sizes): Avoid unnecessary - computations and clean up. - - * src/truetype/ttobjs.h (struct TT_SizeRec_): Comment on the - internal copy of metrics. - -2005-07-12 Werner Lemberg - - * include/freetype/ftoutln.h (FT_Outline_Embolden): Fix prototype. - Reported by Xerxes. - -2005-07-04 Werner Lemberg - - * include/freetype/internal/ftmemory.h (FT_REALLOC_ARRAY): Fix typo. - Reported by Brett Hutley. - -2005-06-30 David Turner - - * src/sfnt/ftbitmap.c, src/truetype/ttgload.c, src/sfnt/ttcmap.c: - Removing compiler warnings (Visual C++ /W4). - - - Implement a work-around for broken C preprocessor in Visual C++ (it - has been confirmed by the MS developers that it is indeed a bug - which won't be fixed in the very near future). - - * Jamfile (FT2_COMPONENTS): Include otvalid (again). - - * src/otvalid/otvcommn.h (OTV_NAME, OTV_FUNC): New macros. - (OTV_NEST1, OTV_NEST2, OTV_NEST3): Use OTV_NAME and OTV_FUNC to - avoid argument expansion by argument prescan. - Append `Func' to all affected macros and change them to take just a - single argument. Example: `AttachList' is renamed to - `AttachListFunc'. - - * src/otvalid/otvgdef.c, src/otvalid/otvgpos.c, - src/otvalid/otvgsub.c, src/otvjstf.c: Append `Func' to macros - affected by the changes to OTV_NESTx and modify them to take just a - single argument. - -2005-06-20 Chia I Wu - - * include/freetype/internal/ftobjs.h, src/base/ftobjs.c: New function - ft_glyphslot_grid_fit_metrics. - - * src/truetype/ttgload.c (compute_glyph_metrics): Use - ft_glyphslot_grid_fit_metrics. - - * src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c - (cid_slot_load_glyph), src/type1/t1gload.c (T1_Load_Glyph): Use - ft_glyphslot_grid_fit_metrics. - FT_Outline_Get_CBox is called twice. - - * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Modify metrics to more - reasonable values when emboldening outline glyphs. The theoretic - ones are unrealistic. - -2005-06-16 Chia I Wu - - * src/base/ftoutln.c (FT_Outline_Embolden): Strength should be - halved. - - * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Change the default - strength. - Don't increase slot->advance.y. - -2005-06-16 Werner Lemberg - - * include/freetype/freetype.h (FREETYPE_MINOR): Set to 2. - (FREETYPE_PATCH): Set to 0. - - * builds/unix/configure.ac (version_info): Set to 9:9:3. - Currently, we are still binary compatible. - - * builds/win32/visualc/index.html, - builds/win32/visualc/freetype.dsp, - builds/win32/visualc/freetype.vcproj: s/219/2110/, s/2.1.9/2.1.10/. - - * builds/freetype.mk (refdoc), README, Jamfile (RefDoc): - s/2.1.9/2.1.10/. - - * docs/CHANGES, docs/VERSION.DLL: Updated. - - * ChangeLog: Split off older entries into... - * ChangeLog.20, ChangeLog.21: These new files. - -2005-06-15 Kirill Smelkov - - The next release will be 2.2.0, so don't worry about source code - backwards compatibility. - - * include/freetype/ftimage.h (FT_Outline_MoveToFunc, - FT_Outline_LineToFunc, FT_Outline_ConicToFunc, - FT_Outline_CubicToFunc, FT_SpanFunc, FT_Raster_RenderFunc), - include/freetype/ftrender.h (FT_Glyph_TransformFunc, - FT_Renderer_RenderFunc, FT_Renderer_TransformFunc): Decorate - parameters with `const' where appropriate. - -2005-06-15 Chia I Wu - - * src/sfnt/ttsbit.c (tt_face_load_sbit_image): Compute vertBearingY - to make glyphs centered vertically. - - * src/truetype/ttgload.c (compute_glyph_metrics): Compute - vertBearingY to make glyphs centered vertically. - Fix some bugs in vertical metrics: - - . loader->pp3.y and loader->pp4.y are in 26.6 format, not in font - units. - . As we use the glyph's cbox to calculate the top bearing now - there iss no need to adjust `top'. - -2005-06-15 Werner Lemberg - - * src/otvalid/otvcommn.h (OTV_OPTIONAL_TABLE): Use FT_UShort to be - in sync with OTV_OPTIONAL_OFFSET. Reported by YAMATO Masatake. - -2005-06-13 Werner Lemberg - - * docs/release: Update. - ----------------------------------------------------------------------------- - -Copyright 2005 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. - - -Local Variables: -version-control: never -coding: latin-1 -End: + * src/base/ftobjs.c (FT_Open_Face): Don't call FT_New_GlyphSlot and + FT_New_Size if we are opening a face with face_index < 0 (which is + only used for testing the format). + + * src/gxvalid/gxvmort0.c (gxv_mort_subtable_type0_entry_validate): + Remove compiler warning. + +2005-10-16 David Turner + + * src/tools/apinames.c: Add new tool to extract public API function + names from header files. + +2005-10-05 Werner Lemberg + + Add FT_FACE_FLAG_HINTER to indicate that a specific font driver has + a hinting engine of its own. + + * include/freetype/freetype.h (FT_FACE_FLAG_HINTER): New macro. + + * src/cff/cffobjs.c (cff_face_init), src/cid/cidobjs.c + (cid_face_init), src/truetype/ttobjs.c (tt_face_init) + [TT_CONFIG_OPTION_BYTECODE_INTERPRETER], src/type1/t1objs.c + (T1_Face_Init), src/type42/t42objs.c (T42_Face_Init) + [TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Update face flags. + + * docs/CHANGES: Document it. + +2005-09-27 Werner Lemberg + + * builds/unix/freetype2.m4: Add license exception so that the file + can be used in any other autoconf script. + +2005-09-26 David Turner + + * src/autofit/aflatin.c (af_latin_compute_stem_width): Fix bad + computation of the `vertical' flag, causing ugly things in LCD mode + and others. + +2005-09-23 David Turner + + * src/autofit/aflatin.c (af_latin_hints_init): Fix a bug that + prevented internal hint mode bitflags from being computed correctly. + + * src/base/Jamfile: Adding src/base/ftgxval.c. + + * src/gxvalid/gxvbsln.c, src/gxvalid/gxvcommn.c, + src/gxvalid/gxvfeat.c, src/gxvalid/gxvjust.c, src/gxvalid/gxvkern.c, + src/gxvalid/gxvlcar.c, src/gxvalid/gxvmort.c, + src/gxvalid/gxvmort0.c, src/gxvalid/gxvmort1.c, + src/gxvalid/gxvmort2.c, src/gxvalid/gxvmort4.c, + src/gxvalid/gxvmort5.c, src/gxvalid/gxvmorx.c, + src/gxvalid/gxvmorx0.c, src/gxvalid/gxvmorx1.c, + src/gxvalid/gxvmorx2.c, src/gxvalid/gxvmorx5.c, + src/gxvalid/gxvopbd.c, src/gxvalid/gxvprop.c, + src/truetype/ttgload.c: Remove _many_ compiler warnings when + compiling with Visual C++ at maximum level (/W4). + + * src/autofit/afangles.c (af_angle_atan): Replaced CORDIC-based + implementation with one using lookup tables. This simple thing + speeds up glyph loading by 18%, according to ftbench! + + * src/sfnt/sfdriver.c (sfnt_get_interface): Don't check for + `get_sfnt' and `load_sfnt' module interfaces. + +2005-09-22 Werner Lemberg + + * docs/CHANGES: Mention SING Glyphlet support. + +2005-09-22 David Turner + + * src/base/Jamfile: Disable compilation of ftgxval module + temporarily. + +2005-09-19 David Somers + + * freetype2/src/sfnt/ttload.c (sfnt_dir_check): Modified to allow a + font to have no `head' table if tables `SING' and `META' are + present; this is to support `SING Glyphlet'. + + `SING Glyphlet' is an extension to OpenType developed by Adobe + primarily to facilitate adding supplemental glyphs to an OpenType + font (with emphasis on, but not necessariy limited to, gaiji to a + CJK font). A SING Glyphlet Font is an OpenType font that contains + the outline(s), either in a `glyf' or `CFF' table, for a glyph; + `cmap', `BASE', and `GSUB' tables are present with the same format + and functionaliy as a regular OpenType font; there are no `name', + `head', `OS/2', and `post' tables; there are two new tables, `SING' + which contains details about the glyphlet, and `META' which contains + metadata. + + Further information on the SING Glyphlet format can be found at: + + http://www.adobe.com/products/indesign/sing_gaiji.html + + * freetype2/include/freetype/ttags.h (TTAG_SING, TTAG_META): New + macros for the OpenType tables `SING' and `META'. These two tables + are used in SING Glyphlet Format fonts. + +2005-09-09 Werner Lemberg + + * src/sfnt/sfobjs.c (sfnt_load_face): Reactivate code to set + FT_FACE_FLAG_KERNING which has been commented out erroneously. + + * docs/CHANGES: Document it. + +2005-09-05 Werner Lemberg + + Fixes for `make multi' and using C++ compiler. + + * gxvalid/gxvcommn.c (gxv_set_length_by_ushort_offset, + gxv_set_length_by_ulong_offset, gxv_array_getlimits_byte, + gxv_array_getlimits_ushort): Declare with FT_LOCAL_DEF. + (gxv_compare_ranges): Make it static. + (gxv_LookupTable_fmt0_validate, gxv_LookupTable_fmt2_validate, + gxv_LookupTable_fmt4_validate, gxv_LookupTable_fmt6_validate, + gxv_LookupTable_fmt8_validate, gxv_LookupTable_validate): Improve + trace messages. + (gxv_StateArray_validate, gxv_XStateArray_validate): s/class/clazz/. + (GXV_STATETABLE_HEADER_SIZE, GXV_STATEHEADER_SIZE, + GXV_XSTATETABLE_HEADER_SIZE, GXV_XSTATEHEADER_SIZE): Move to + gxvcommn.h. + + * gxvalid/gxvcommn.h: Add prototypes for + gxv_StateTable_subtable_setup, gxv_XStateTable_subtable_setup, + gxv_XStateTable_validate, gxv_array_getlimits_byte, + gxv_array_getlimits_ushort, gxv_set_length_by_ushort_offset, + gxv_set_length_by_ulong_offset, gxv_odtect_add_range, + gxv_odtect_validate. + (GXV_STATETABLE_HEADER_SIZE, GXV_STATEHEADER_SIZE, + GXV_XSTATETABLE_HEADER_SIZE, GXV_XSTATEHEADER_SIZE): Moved from + gxvcommn.c. + + * src/gxvalid/gxvbsln.c (gxv_bsln_LookupValue_validate, + gxv_bsln_parts_fmt1_validate): Improve trace messages. + + * gxvalid/gxvfeat.c: Split off predefined registry stuff to... + * gxvalid/gxvfeat.h: New file. + + * gxvalid/gxvjust.c (gxv_just_wdc_entry_validate): Improve trace + message. + + * gxvalid/gxvkern.c (GXV_kern_Dialect): Add KERN_DIALECT_UNKNOWN. + (gxv_kern_subtable_fmt1_valueTable_load, + gxv_kern_subtable_fmt1_subtable_setup, + gxv_kern_subtable_fmt1_entry_validate): Fix C++ compiler errors. + (gxv_kern_coverage_validate): Use KERN_DIALECT_UNKWOWN. + Improve trace message. + (gxv_kern_validate_generic): Fix C++ compiler error. + Improve trace message. + (gxv_kern_validate_classic): Fix C++ compiler error. + + * gxvalid/gxvmort0.c (gxv_mort_subtable_type0_validate): Declare + with FT_LOCAL_DEF. + + * gxvalid/gxvmort1.c + (gxv_mort_subtable_type1_substitutionTable_load, + gxv_mort_subtable_type1_subtable_setup): Fix C++ compiler errors. + (gxv_mort_subtable_type1_substTable_validate): Improve trace + message. + (gxv_mort_subtable_type1_validate): Declare with FT_LOCAL_DEF. + + * gxvalid/gxvmort2.c (gxv_mort_subtable_type2_opttable_load, + gxv_mort_subtable_type2_subtable_setup, + gxv_mort_subtable_type2_ligActionOffset_validate, + gxv_mort_subtable_type2_ligatureTable_validate): Fix C++ compiler + errors. + (gxv_mort_subtable_type2_validate): Declare with FT_LOCAL_DEF. + + * gxvalid/gxvmort4.c (gxv_mort_subtable_type4_validate): Declare + with FT_LOCAL_DEF. + + * gxvalid/gxvmort5.c (gxv_mort_subtable_type5_subtable_setup, + gxv_mort_subtable_type5_InsertList_validate): Fix C++ compiler + errors. + (gxv_mort_subtable_type5_validate): Declare with FT_LOCAL_DEF. + + * gxvalid/gxvmort.c: Include gxvfeat.h. + (gxv_mort_featurearray_validate, gxv_mort_coverage_validate): + Declare with FT_LOCAL_DEF. + (gxv_mort_subtables_validate, gxv_mort_validate): Improve trace + messages. + + * gxvalid/gxvmort.h (gxv_mort_feature_validate): Remove. + + * gxvalid/gxvmorx0.c (gxv_morx_subtable_type0_validate): Declare + with FT_LOCAL_DEF. + + * gxvalid/gxvmorx1.c + (gxv_morx_subtable_type1_substitutionTable_load, + gxv_morx_subtable_type1_subtable_setup, + gxv_morx_subtable_type1_entry_validate, + gxv_morx_subtable_type1_substitutionTable_validate): Fix C++ + compiler errors. + (gxv_morx_subtable_type1_validate): Declare with FT_LOCAL_DEF. + + * gxvalid/gxvmorx2.c (gxv_morx_subtable_type2_opttable_load, + gxv_morx_subtable_type2_subtable_setup, + gxv_morx_subtable_type2_ligActionIndex_validate, + gxv_morx_subtable_type2_ligatureTable_validate): Fix C++ compiler + errors. + (gxv_morx_subtable_type2_validate): Declare with FT_LOCAL_DEF. + Fix typo. + + * gxvalid/gxvmorx4.c (gxv_morx_subtable_type4_validate): Declare + with FT_LOCAL_DEF. + + * gxvalid/gxvmorx5.c (gxv_morx_subtable_type5_insertionGlyph_load, + gxv_morx_subtable_type5_subtable_setup): Fix C++ compiler error. + (gxv_morx_subtable_type5_validate): Declare with FT_LOCAL_DEF. + + * gxvalid/gxvmorx.c (gxv_morx_subtables_validate, + gxv_morx_validate): Improve trace message. + + * gxvalid/gxvopbd.c (gxv_opbd_LookupFmt4_transit): Fix compiler + warnings. + (gxv_opbd_validate): Improve trace message. + + * gxvalid/gxvprop.c: Decorate constants with `U' and `L' where + appropriate. + (gxv_prop_zero_advance_validate, gxv_prop_validate): Improve trace + message. + + * gxvalid/gxvtrak.c (gxv_trak_trackTable_validate): Remove unused + parameter. Update all callers. + (gxv_trak_validate): Improve trace message. + + * rules.mk (GXV_DRV_H): Add gxvfeat.h. + +2005-09-01 Werner Lemberg + + * src/gxvalid/gxvbsln.c (GXV_BSLN_VALUE_EMPTY): Add `U'. + + * src/gxvalid/gxmort1.c (GXV_MORT_SUBTABLE_TYPE1_HEADER_SIZE), + src/gxvalid/gxmort2.c (GXV_MORT_SUBTABLE_TYPE2_HEADER_SIZE): Fix + typo. + + * src/gxvalid/gxvmorx0.c, src/gxvalid/gxvmorx1.c, + src/gxvalid/gxvmorx2.c, src/gxvalid/gxvmorx4.c, + src/gxvalid/gxvmorx5.c, src/gxvalid/gxvmort.c: Improve trace + messages. + Decorate constants with `U' and `L' where appropriate. + Fix compiler warnings. + +2005-08-31 Werner Lemberg + + * src/truetype/ttgload.c (load_truetype_glyph): Fix typo. + + * src/gxvalid/gxvbsln.c (gxv_bsln_validate): Fix trace message. + + * src/gxvalid/gxvcommn.c (gxv_odtect_add_range): Use `const'. + + * src/gxvalid/gxvfeat.c, src/gxvalid/gxvjust.c, + src/gxvalid/gxvkern.c, src/gxvalid/gxvlcar.c, src/gxvalid/gxvmod.c, + src/gxvalid/gxvmort0.c, src/gxvalid/gxvmort1.c, + src/gxvalid/gxvmort2.c, src/gxvalid/gxvmort4.c, + src/gxvalid/gxvmort5.c, src/gxvalid/gxvmort.c: Improve trace + messages. + Decorate constants with `U' and `L' where appropriate. + Fix compiler warnings. + +2005-08-30 Werner Lemberg + + * src/gxvalid/README: Revised. + * src/gxvalid/gxvbsln.c: Fix compiler warnings. + * src/gxvalid/gxvcommn.c: Fix compiler warnings. + (gxv_XEntryTable_validate, gxv_compare_ranges): Remove unused + parameter. Update all callers. + Improve trace messages. + Some formatting. + +2005-08-29 Werner Lemberg + + * include/freetype/freetype.h, include/freetype/ftchapters.h: Add + a preliminary section with some explanations about user allocation. + + * src/tools/docmaker/tohtml.py (HtmlFormatter.section_enter): + Don't abort if there are no data types, functions, etc., in a + section. + Print synopsis only if we have a data type, function, etc. + + * docs/INSTALL.ANY, docs/INSTALL, docs/INSTALL.UNX, docs/CUSTOMIZE, + docs/INSTALL.GNU, docs/TRUETYPE, docs/DEBUG, docs/UPGRADE.UNX, + docs/VERSION.DLL, docs/formats.txt: Revised, formatted. + +2005-08-28 George Williams + + * src/truetype/ttgload.c [TT_MAX_COMPOSITE_RECURSE]: Removed. + (load_truetype_glyph): Limit recursion depth by `maxComponentDepth'. + +2005-08-25 J. Ali Harlow + + * builds/unix/freetype2.in (CFlags): Add missing directory. + +2005-08-24 Werner Lemberg + + * docs/CHANGES: Mention gxvalid module. + +2005-08-23 Werner Lemberg + + * src/autofit/aflatin.c (af_latin_metrics_scale): Initialize + render mode properly. Reported by chris@dokein.co.uk. + +2005-08-23 suzuki toshiya + + Add gxvalid module to validate TrueType GX/AAT tables. + + Modifications on existing files: + + * Jamfile: Register gxvalid module. + * src/base/Jamfile: Register ftgxval.c. + * src/base/rule.mk: Register ftgxval.c. + * docs/INSTALL.ANY: Register gxvalid/gxvalid.c. + + * include/freetype/config/ftheader.h (FT_GX_VALIDATE_H): New macro + to include gxvalid header file. + * include/freetype/config/ftmodule.h: Register gxv_module_class. + + * include/freetype/ftchapters.h: Add comment about gx_validation. + * include/freetype/ftotval.h: Change keyword FT_VALIDATE_XXX + to FT_VALIDATE_OTXXX to co-exist with gxvalid. + * include/freetype/tttags.h: Add tags for TrueType GX/AAT tables. + + * include/freetype/internal/ftserv.h (FT_SERVICE_GX_VALIDATE_H): New + macro for gxvalid service. + * include/freetype/internal/fttrace.h: Add trace facilities for + gxvalid. + + New files on existing directories: + + * include/freetype/internal/services/svgxval.h: Registration of + validation service for TrueType GX/AAT and classic kern table. + * include/freetype/ftgxval.h: Public API definition to use gxvalid. + * src/base/ftgxval.c: Public API of gxvalid. + + New files under src/gxvalid/: + + * src/gxvalid/Jamfile src/gxvalid/README src/gxvalid/module.mk + src/gxvalid/rules.mk src/gxvalid/gxvalid.c src/gxvalid/gxvalid.h + src/gxvalid/gxvbsln.c src/gxvalid/gxvcommn.c src/gxvalid/gxvcommn.h + src/gxvalid/gxverror.h src/gxvalid/gxvfeat.c src/gxvalid/gxvfgen.c + src/gxvalid/gxvjust.c src/gxvalid/gxvkern.c src/gxvalid/gxvlcar.c + src/gxvalid/gxvmod.c src/gxvalid/gxvmod.h src/gxvalid/gxvmort.c + src/gxvalid/gxvmort.h src/gxvalid/gxvmort0.c src/gxvalid/gxvmort1.c + src/gxvalid/gxvmort2.c src/gxvalid/gxvmort4.c src/gxvalid/gxvmort5.c + src/gxvalid/gxvmorx.c src/gxvalid/gxvmorx.h src/gxvalid/gxvmorx0.c + src/gxvalid/gxvmorx1.c src/gxvalid/gxvmorx2.c src/gxvalid/gxvmorx4.c + src/gxvalid/gxvmorx5.c src/gxvalid/gxvopbd.c src/gxvalid/gxvprop.c + src/gxvalid/gxvtrak.c: New files, gxvalid body. + +2005-08-21 Werner Lemberg + + * src/truetype/ttgload.c (TT_Load_Glyph): Only translate outline + to (0,0) if bit 1 of the `head' table isn't set. This improves + rendering of buggy fonts. + +2005-08-20 Chia I Wu + + * src/truetype/ttdriver.c (Load_Glyph): Don't check the validity of + ttmetrics here. TrueType fonts with only sbits always have + ttmetrics.valid set to false. + + * src/truetype/ttgload.c (TT_Load_Glyph): Check that ttmetrics is + valid before loading outline glyph. + + * src/cache/ftcimage.c (FTC_INode_New): Fix a memory leak. + +2005-08-20 Werner Lemberg + + * src/sfnt/ttload.c (tt_face_load_metrics_header): Ignore missing + `hhea' table for SFNT Mac fonts. Change based on a patch by + mpsuzuki@hiroshima-u.ac.jp. + +2005-08-20 Masatake YAMATO + + * src/otvalid/otvmod.c (otv_validate): Use ft_validator_run instead + of ft_setjmp. + +2005-08-19 Werner Lemberg + + * src/truetype/ttgload.c (load_truetype_glyph): Fix compiler + warnings. + +2005-08-16 Chia I Wu + + * src/truetype/ttinterp.c, src/truetype/ttinterp.h: Update copyright + messages. + +2005-08-16 Chia I Wu + + * src/truetype/ttinterp.c, src/truetype/ttinterp.h: Remove original + TT_Done_Context and rename TT_Destroy_Context to TT_Done_Context + with slight changes. + Update all callers. + (TT_New_Context): Now takes TT_Driver argument directly. + Update all callers. + + * src/truetype/ttobjs.h (tt_slot_init): New function. + * src/truetype/ttobjs.c (tt_driver_init): Initialize execution + context here. + (tt_slot_init): New function to create extra points for the internal + glyph loader. We then use it directly, instead of face's glyph + loader, when loading glyph. + + * src/truetype/ttdriver.c (tt_driver_class): Use tt_slot_init for + glyph slot initialization. + (Load_Glyph): Load flag dependencies are handled here. Return error + if size is NULL. + + * src/truetype/ttgload.c: Heavy cleanup and refactoring. + (org_to_cur): Removed. + (TT_Load_Simple_Glyph): Call FT_GlyphLoader_CheckPoints. + (TT_Hint_Glyph): New funcion to hint a zone, prepared by caller. + (TT_Process_Simple_Glyph): s/load/loader/. + Use loader->pp values instead of recalculation. + Use TT_Hint_Glyph. + No need to save/restore loader->stream before and after + TT_Vary_Get_Glyph_Deltas now. + (TT_LOADER_SET_PP): New macro to calculate and set the four phantom + points. + (load_truetype_glyph): Never set exec->glyphSize to 0. This closes + Savannah bug #13107. + Forget glyph frame before calling TT_Process_Simple_Glyph. + Use TT_LOADER_SET_PP. + Scale all four phantom points. + Split off some functionality to ... + (TT_Process_Composite_Component, TT_Process_Composite_Glyph): These + new functions. + (TT_Load_Glyph): Set various fields of `glyph' here, not in + load_truetype_glyph and compute_glyph_metrics. + Split off some functionality to ... + (load_sbit_image, tt_loader_init): These new functions. + (compute_glyph_metrics): Call FT_Outline_Get_CBox. + +2005-08-08 Werner Lemberg + + * docs/INSTALL.ANY: Updated. + +2005-08-05 Werner Lemberg + + * src/cff/cffgload.c (cff_builder_close_contour), + src/psaux/psobjs.c (t1_builder_close_contour): Protect against + zero `outline' pointer. + + * src/base/ftgloadr.c (FT_GlyphLoader_Add): Protect against zero + `loader' address. + +2005-08-03 Werner Lemberg + + * src/sfnt/sfdriver.c (sfnt_interface) [FT_OPTIMIZE_MEMORY]: + Reactivate pointers to tt_find_sbit_image and tt_load_sbit_metrics + to make X work again. + +2005-08-02 Werner Lemberg + + * src/otvalid/otvcommn.h: Remove dead code. + +2005-07-31 Chia I Wu + + * src/truetype/ttobjs.h (tt_size_run_fpgm, tt_size_run_prep): New + functions. + + * src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep): New + functions. + (tt_size_init): Add 4, instead of 2, (phantom) points to twilight + zone. + Move code that runs fpgm to tt_size_run_fpgm. + (Reset_Outline_Size): Move code that runs prep to tt_size_run_prep. + (tt_glyphzone_new): Allocate right size of arrays. + Set max_points and max_contours properly. + +2005-07-26 Chia I Wu + + * src/truetype/ttdriver.c (Set_Char_Sizes): Avoid unnecessary + computations and clean up. + + * src/truetype/ttobjs.h (struct TT_SizeRec_): Comment on the + internal copy of metrics. + +2005-07-12 Werner Lemberg + + * include/freetype/ftoutln.h (FT_Outline_Embolden): Fix prototype. + Reported by Xerxes. + +2005-07-04 Werner Lemberg + + * include/freetype/internal/ftmemory.h (FT_REALLOC_ARRAY): Fix typo. + Reported by Brett Hutley. + +2005-06-30 David Turner + + * src/sfnt/ftbitmap.c, src/truetype/ttgload.c, src/sfnt/ttcmap.c: + Removing compiler warnings (Visual C++ /W4). + + + Implement a work-around for broken C preprocessor in Visual C++ (it + has been confirmed by the MS developers that it is indeed a bug + which won't be fixed in the very near future). + + * Jamfile (FT2_COMPONENTS): Include otvalid (again). + + * src/otvalid/otvcommn.h (OTV_NAME, OTV_FUNC): New macros. + (OTV_NEST1, OTV_NEST2, OTV_NEST3): Use OTV_NAME and OTV_FUNC to + avoid argument expansion by argument prescan. + Append `Func' to all affected macros and change them to take just a + single argument. Example: `AttachList' is renamed to + `AttachListFunc'. + + * src/otvalid/otvgdef.c, src/otvalid/otvgpos.c, + src/otvalid/otvgsub.c, src/otvjstf.c: Append `Func' to macros + affected by the changes to OTV_NESTx and modify them to take just a + single argument. + +2005-06-20 Chia I Wu + + * include/freetype/internal/ftobjs.h, src/base/ftobjs.c: New function + ft_glyphslot_grid_fit_metrics. + + * src/truetype/ttgload.c (compute_glyph_metrics): Use + ft_glyphslot_grid_fit_metrics. + + * src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c + (cid_slot_load_glyph), src/type1/t1gload.c (T1_Load_Glyph): Use + ft_glyphslot_grid_fit_metrics. + FT_Outline_Get_CBox is called twice. + + * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Modify metrics to more + reasonable values when emboldening outline glyphs. The theoretic + ones are unrealistic. + +2005-06-16 Chia I Wu + + * src/base/ftoutln.c (FT_Outline_Embolden): Strength should be + halved. + + * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Change the default + strength. + Don't increase slot->advance.y. + +2005-06-16 Werner Lemberg + + * include/freetype/freetype.h (FREETYPE_MINOR): Set to 2. + (FREETYPE_PATCH): Set to 0. + + * builds/unix/configure.ac (version_info): Set to 9:9:3. + Currently, we are still binary compatible. + + * builds/win32/visualc/index.html, + builds/win32/visualc/freetype.dsp, + builds/win32/visualc/freetype.vcproj: s/219/2110/, s/2.1.9/2.1.10/. + + * builds/freetype.mk (refdoc), README, Jamfile (RefDoc): + s/2.1.9/2.1.10/. + + * docs/CHANGES, docs/VERSION.DLL: Updated. + + * ChangeLog: Split off older entries into... + * ChangeLog.20, ChangeLog.21: These new files. + +2005-06-15 Kirill Smelkov + + The next release will be 2.2.0, so don't worry about source code + backwards compatibility. + + * include/freetype/ftimage.h (FT_Outline_MoveToFunc, + FT_Outline_LineToFunc, FT_Outline_ConicToFunc, + FT_Outline_CubicToFunc, FT_SpanFunc, FT_Raster_RenderFunc), + include/freetype/ftrender.h (FT_Glyph_TransformFunc, + FT_Renderer_RenderFunc, FT_Renderer_TransformFunc): Decorate + parameters with `const' where appropriate. + +2005-06-15 Chia I Wu + + * src/sfnt/ttsbit.c (tt_face_load_sbit_image): Compute vertBearingY + to make glyphs centered vertically. + + * src/truetype/ttgload.c (compute_glyph_metrics): Compute + vertBearingY to make glyphs centered vertically. + Fix some bugs in vertical metrics: + + . loader->pp3.y and loader->pp4.y are in 26.6 format, not in font + units. + . As we use the glyph's cbox to calculate the top bearing now + there iss no need to adjust `top'. + +2005-06-15 Werner Lemberg + + * src/otvalid/otvcommn.h (OTV_OPTIONAL_TABLE): Use FT_UShort to be + in sync with OTV_OPTIONAL_OFFSET. Reported by YAMATO Masatake. + +2005-06-13 Werner Lemberg + + * docs/release: Update. + +---------------------------------------------------------------------------- + +Copyright 2005 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. + + +Local Variables: +version-control: never +coding: latin-1 +End: diff --git a/Jamfile b/Jamfile index d0e67f2cd..5dcf528f6 100644 --- a/Jamfile +++ b/Jamfile @@ -60,14 +60,14 @@ FT2_LIB ?= $(LIBPREFIX)freetype ; # Define FT2_BUILD_INCLUDE to point to your build-specific directory. # This is prepended to FT2_INCLUDE_DIR. It can be used to specify # the location of a custom which will point to custom -# versions of "ftmodule.h" and "ftoption.h", for example. +# versions of `ftmodule.h' and `ftoption.h', for example. # FT2_BUILD_INCLUDE ?= ; # The list of modules to compile on any given build of the library. # By default, this will contain _all_ modules defined in FT2_SRC_DIR. # -# IMPORTANT: You'll need to change the content of "ftmodule.h" as well +# IMPORTANT: You'll need to change the content of `ftmodule.h' as well # if you modify this list or provide your own. # FT2_COMPONENTS ?= autofit # auto-fitter @@ -122,7 +122,7 @@ if $(DEBUG_HINTER) } -# We need "freetype2/include" in the current include path in order to +# We need `freetype2/include' in the current include path in order to # compile any part of FreeType 2. # HDRS += $(FT2_INCLUDE) ; @@ -143,13 +143,13 @@ HDRMACRO [ FT2_SubDir include freetype config ftheader.h ] ; HDRMACRO [ FT2_SubDir include freetype internal internal.h ] ; -# Now include the Jamfile in "freetype2/src", used to drive the compilation +# Now include the Jamfile in `freetype2/src', used to drive the compilation # of each FreeType 2 component and/or module. # SubInclude FT2_TOP $(FT2_SRC_DIR) ; -# handle the generation of the "ftexport.sym" file which contain the list -# of exported symbols. This can be used on Unix by libtool +# Handle the generation of the `ftexport.sym' file which contain the list +# of exported symbols. This can be used on Unix by libtool. # SubInclude FT2_TOP $(FT2_SRC_DIR) tools ; diff --git a/src/tools/apinames.c b/src/tools/apinames.c index e26b6c612..4f151ebae 100644 --- a/src/tools/apinames.c +++ b/src/tools/apinames.c @@ -1,17 +1,21 @@ -/* this little program is used to parse the FreeType headers and - * find the declaration of all public API. This is easy, because +/* + * This little program is used to parse the FreeType headers and + * find the declaration of all public API. This is easy, because * they all look like the following: * * FT_EXPORT( return_type ) * function_name( function arguments ); * - * you must pass it the list of header files as arguments, wildcards - * accepted if you're using GCC on Windows + * You must pass the list of header files as arguments. Wildcards are + * accepted if you are using GCC for compilation (and probably by + * other compilers too). * - * Author: David Turner + * Author: David Turner, 2005 + * + * This code is explicitly placed into the public domain. * - * This code is explicitely placed in the public domain */ + #include #include