1. 06 Oct, 2005 2 commits
  2. 27 Sep, 2005 2 commits
  3. 26 Sep, 2005 1 commit
  4. 23 Sep, 2005 4 commits
    • David Turner's avatar
      * src/autofit/afangles.c (af_angle_atan): replaced CORDIC-based · 960a5475
      David Turner authored
              implementation with one using lookup tables. This simple thing
              speeds glyph loading by 18% according to ftbench !
      960a5475
    • David Turner's avatar
      * src/base/Jamfile: adding src/base/ftgxval.c · 998b168b
      David Turner authored
              * 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/sfnt/sfdriver.c, src/truetype/ttgload.c:
                removing _many_ compiler warnings when compiling with Visual C++
                at maximum level (/W4)
      998b168b
    • David Turner's avatar
      * src/autofit/aflatin.c (af_latin_hints_init): fixed a bug that · a879e8e2
      David Turner authored
              prevented internal hint mode bitflags from being computed correctly
      a879e8e2
    • Werner Lemberg's avatar
      · f0721f98
      Werner Lemberg authored
      * docs/CHANGES: Mention SING Glyphlet support.
      
      Other minor doc fixes and CRLF issues.
      f0721f98
  5. 22 Sep, 2005 1 commit
  6. 19 Sep, 2005 1 commit
    • Werner Lemberg's avatar
      · 02317d3b
      Werner Lemberg authored
      * 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.
      02317d3b
  7. 09 Sep, 2005 1 commit
    • Werner Lemberg's avatar
      · 97d59723
      Werner Lemberg authored
      * 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.
      97d59723
  8. 05 Sep, 2005 1 commit
    • Werner Lemberg's avatar
      · cce53014
      Werner Lemberg authored
      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.
      cce53014
  9. 01 Sep, 2005 1 commit
    • Werner Lemberg's avatar
      · d2c0e93d
      Werner Lemberg authored
      * 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 tracing
      messages.
      Decorate constants with `U' and `L' where appropriate.
      Fix compiler warnings.
      
      Formatting.
      d2c0e93d
  10. 31 Aug, 2005 4 commits
    • Werner Lemberg's avatar
      · f40140e1
      Werner Lemberg authored
      * src/gxvalid/gxvbsln.c (gxv_bsln_validate): Fix tracing 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 tracing
      messages.
      Decorate constants with `U' and `L' where appropriate.
      Fix compiler warnings.
      f40140e1
    • Werner Lemberg's avatar
      · 353675ae
      Werner Lemberg authored
      * src/truetype/ttgload.c (load_truetype_glyph): Fix typo.
      353675ae
    • Werner Lemberg's avatar
      · def11c3a
      Werner Lemberg authored
      * 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 tracing messages.
      
      Some formatting.
      def11c3a
    • Werner Lemberg's avatar
      · 2ee07998
      Werner Lemberg authored
      * src/gxvalid/README: Revised.
      2ee07998
  11. 30 Aug, 2005 1 commit
    • Werner Lemberg's avatar
      · 7696ac08
      Werner Lemberg authored
      * 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.
      7696ac08
  12. 29 Aug, 2005 1 commit
    • Werner Lemberg's avatar
      · 9d361ea0
      Werner Lemberg authored
      * src/truetype/ttgload.c [TT_MAX_COMPOSITE_RECURSE]: Removed.
      (load_truetype_glyph): Limit recursion depth by `maxComponentDepth'.
      9d361ea0
  13. 26 Aug, 2005 1 commit
    • Werner Lemberg's avatar
      · 7a3ba737
      Werner Lemberg authored
      * builds/unix/freetype2.in (CFlags): Add missing directory.
      7a3ba737
  14. 25 Aug, 2005 1 commit
    • Werner Lemberg's avatar
      · 52950741
      Werner Lemberg authored
      * docs/CHANGES: Mention gxvalid module.
      
      Formatting and other minor changes.
      52950741
  15. 24 Aug, 2005 2 commits
    • Werner Lemberg's avatar
      · 75840c7b
      Werner Lemberg authored
      * src/autofit/aflatin.c (af_latin_metrics_scale): Initialize
      render mode properly.  Reported by chris@dokein.co.uk.
      75840c7b
    • suzuki toshiya's avatar
      · efda0541
      suzuki toshiya authored
      	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: Add macro to include gxvalid
      	header file, FT_GX_VALIDATE_H.
      	* 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 gxvalid.
      	* include/freetype/tttags.h: Add tag for TrueType GX/AAT tables.
      
      	* include/freetype/internal/ftserv.h: Add macro to use gxvalid
      	service, FT_SERVICE_GX_VALIDATE_H
      	* 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.
      efda0541
  16. 22 Aug, 2005 1 commit
    • Werner Lemberg's avatar
      · d9710afa
      Werner Lemberg authored
      * 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.
      d9710afa
  17. 20 Aug, 2005 3 commits
    • Chia-I Wu's avatar
      * src/truetype/ttdriver.c (Load_Glyph): Don't check the validity of · 832f19b2
      Chia-I Wu authored
      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.
      832f19b2
    • Werner Lemberg's avatar
      · 9c27494f
      Werner Lemberg authored
      * 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.
      9c27494f
    • Werner Lemberg's avatar
      · 1a800db9
      Werner Lemberg authored
      * src/otvalid/otvmod.c (otv_validate): Use ft_validator_run instead
      of ft_setjmp.
      1a800db9
  18. 19 Aug, 2005 1 commit
    • Werner Lemberg's avatar
      · ff5dc5fd
      Werner Lemberg authored
      * src/truetype/ttgload.c (load_truetype_glyph): Fix compiler
      warnings.
      
      Formatting.
      ff5dc5fd
  19. 18 Aug, 2005 1 commit
    • Werner Lemberg's avatar
      · 6ec747f1
      Werner Lemberg authored
      Forgot to check in last change.
      6ec747f1
  20. 16 Aug, 2005 2 commits
    • Chia-I Wu's avatar
      73c6ebda
    • Chia-I Wu's avatar
      * src/truetype/ttinterp.c, src/truetype/ttinterp.h: Remove original · 0358d176
      Chia-I Wu authored
      TT_Done_Context and rename TT_Destroy_Context to TT_Done_Context with
      slight changes.
      
      * 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: Use tt_slot_init for glyph slot
      initialization.
      (TT_Load_Glyph): Load flag dependencies are handled here.
      Return error if size is NULL.
      
      * src/truetype/ttgload.c: Heavy cleanup and refactor.
      (TT_Hint_Glyph): New funcion to hint a zone, prepared by caller.
      (TT_Process_Simple_Glyph): Use loader->pp's instead of recalculating.
      Use TT_Hint_Glyph.
      No need to save/restore loader->stream before/after
      TT_Vary_Get_Glyph_Deltas now.
      (TT_LOADER_SET_PP): New macro to calculate and set the four phantom points.
      (TT_Process_Composite_Component, TT_Process_Composite_Glyph,
      load_truetype_glyph): Refactor load_truetype_glyph into these three functions.
      Never set exec->glyphSize to 0. (close #13107)
      Forget glyph frame before calling TT_Process_Simple_Glyph.
      (TT_Load_Glyph, load_sbit_image, tt_loader_init): Refactor TT_Load_Glyph into
      these three functions.
      Set various fields of `glyph' here, instead of in load_truetype_glyph
      and compute_glyph_metrics.
      0358d176
  21. 10 Aug, 2005 1 commit
    • Werner Lemberg's avatar
      · db423ab4
      Werner Lemberg authored
      * docs/INSTALL.ANY: Updated.
      db423ab4
  22. 03 Aug, 2005 2 commits
    • Werner Lemberg's avatar
      · 87c8e581
      Werner Lemberg authored
      * 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.
      87c8e581
    • Werner Lemberg's avatar
      · 9ee99bc9
      Werner Lemberg authored
      * src/otvalid/otvcommn.h: Remove dead code.
      
      Formatting.
      9ee99bc9
  23. 31 Jul, 2005 1 commit
    • Chia-I Wu's avatar
      * src/truetype/ttobjs.h (tt_size_run_fpgm, tt_size_run_prep): New functions. · b3ff2859
      Chia-I Wu authored
      * 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.
      b3ff2859
  24. 26 Jul, 2005 1 commit
  25. 13 Jul, 2005 2 commits
    • Werner Lemberg's avatar
      · e79bc9c1
      Werner Lemberg authored
      Oops!  Undo private change.
      e79bc9c1
    • Werner Lemberg's avatar
      · e1f7d79f
      Werner Lemberg authored
      * include/freetype/ftoutln.h (FT_Outline_Embolden): Fix prototype.
      Reported by Xerxes.
      e1f7d79f
  26. 05 Jul, 2005 1 commit
    • Werner Lemberg's avatar
      · 6e322e78
      Werner Lemberg authored
      * include/freetype/internal/ftmemory.h (FT_REALLOC_ARRAY): Fix typo.
      Reported by Brett Hutley.
      6e322e78