1. 19 May, 2022 2 commits
    • Dominik Röttsches's avatar
      [truetype, snft] Add service methods for `DeltaSetIdxMap` and `VarStore`. · a4c4566b
      Dominik Röttsches authored and Werner Lemberg's avatar Werner Lemberg committed
      This will be needed for 'COLR' v1 variation support.
      
      * src/truetype/ttgxvar.h (GX_ItemVarData, GX_AxisCoords, GX_VarRegion,
      GX_VarItemStore, GX_DeltaSetIdxMap): Move structures to...
      * include/freetype/internal/ftmmtypes.h: ... this new file.
      
      * include/freetype/internal/service/svmm.h (MultiMasters): Include
      `ftmmtypes.h`.
      (FT_Var_Load_Delta_Set_Idx_Map_Func, FT_Var_Load_Item_Var_Store_Func,
      FT_Var_Get_Item_Delta_Func, FT_Var_Done_Item_Var_Store_Func,
      FT_Var_Done_Delta_Set_Idx_Map_Func): New function typedefs.
      (MultiMasters): Add them.
      (FT_DEFINE_SERVICE_MULTIMASTERSREC): Updated.
      
      * src/cff/cffdrivr.c (cff_load_item_variation_store,
      cff_load_delta_set_index_mapping, cff_get_item_delta,
      cff_done_item_variation_store, cff_done_delta_set_index_map): New wrapper
      methods calling into mm service.
      (cff_service_multi_masters): Updated.
      
      * src/truetype/ttgxvar.c (ft_var_load_item_variation_store,
      ft_var_load_delta_set_index_mapping, ft_var_get_item_delta,
      ft_var_done_item_variation_store, ft_var_done_delta_set_index_map): Renamed
      to ...
      (tt_var_load_item_variation_store, tt_var_load_delta_set_index_mapping,
      tt_var_get_item_delta, tt_var_done_item_variation_store,
      tt_var_done_delta_set_index_map): ... this for consistency.
      Mark them as non-static.
      * src/truetype/ttgxvar.h: Add corresponding prototypes.
      
      * src/truetype/ttdriver.c (tt_service_gx_multi_masters): Updated.
      
      * src/type1/t1driver.c (t1_service_multi_masters): Updated.
      a4c4566b
    • Dominik Röttsches's avatar
      [truetype] Move deallocation of `DeltaSetIdxMap` into own function. · 5f19f49c
      Dominik Röttsches authored and Werner Lemberg's avatar Werner Lemberg committed
      This is a preparation for handling `DeltaSetIdxMap` and `VarStore` as a
      FreeType service.
      
      * src/truetype/ttgxvar.c (ft_var_done_delta_set_index_map): New function.
      (tt_done_blend): Use it.
      5f19f49c
  2. 18 May, 2022 3 commits
  3. 11 May, 2022 1 commit
  4. 01 May, 2022 1 commit
    • Werner Lemberg's avatar
      * Version 2.12.1 released. · e8ebfe98
      Werner Lemberg authored
      ==========================
      
      Tag sources with `VER-2-12-1'.
      
      * docs/VERSION.TXT: Add entry for version 2.12.1.
      * docs/CHANGES, docs/release: Updated.
      
      * README, src/base/ftver.rc, builds/windows/vc2010/index.html,
      builds/windows/visualc/index.html, builds/windows/visualce/index.html,
      builds/wince/vc2005-ce/index.html, builds/wince/vc2008-ce/index.html,
      docs/freetype-config.1: s/2.12.0/2.12.1/, s/2120/2121/.
      
      * include/freetype/freetype.h (FREETYPE_PATCH): Set to 1.
      
      * builds/unix/configure.raw (version_info): Set to 24:3:18.
      * CMakeLists.txt (VERSION_PATCH): Set to 1.
      e8ebfe98
  5. 30 Apr, 2022 2 commits
  6. 26 Apr, 2022 1 commit
  7. 25 Apr, 2022 2 commits
  8. 24 Apr, 2022 1 commit
    • Xavier Claessens's avatar
      [meson] Remove `default_library=both` from `default_options`. · d59c7ce1
      Xavier Claessens authored and Werner Lemberg's avatar Werner Lemberg committed
      It is inconsistent with what all other Meson projects do.
      
      It also prevents static linking to FreeType when it is a subproject because
      `default_options` in a subproject takes precedence on values set on the main
      project.  For example, building 'GStreamer' with `-Ddefault_library=static`
      would still dynamically link on FreeType unless the user also sets
      `-Dfreetype2:default_library=static`.
      
      * meson.build: Updated.
      
      * .gitlab-ci.yml: Retain `both` option for testing.
      d59c7ce1
  9. 19 Apr, 2022 1 commit
  10. 16 Apr, 2022 1 commit
  11. 14 Apr, 2022 1 commit
  12. 04 Apr, 2022 1 commit
    • Ben Wagner's avatar
      [sfnt] Correct FT_ColorStopIterator documentation. · a1ca7010
      Ben Wagner authored
      * include/freetype/ftcolor.h (FT_ColorStopIterator): the user should not
       set `p` to NULL before calling `FT_Get_Colorline_Stops`. `p` and
      `num_color_stops` are set by `FT_Get_Paint`. `p` and
      `current_color_stop` are updated by `FT_Get_Colorline_Stops`.
      a1ca7010
  13. 01 Apr, 2022 6 commits
  14. 31 Mar, 2022 4 commits
    • Werner Lemberg's avatar
      38534503
    • Werner Lemberg's avatar
    • Werner Lemberg's avatar
      * Version 2.12.0 released. · e50798b7
      Werner Lemberg authored
      ==========================
      
      Tag sources with `VER-2-12-0'.
      
      * docs/VERSION.TXT: Add entry for version 2.12.0.
      * docs/CHANGES, docs/release: Updated.
      
      * README, src/base/ftver.rc, builds/windows/vc2010/index.html,
      builds/windows/visualc/index.html, builds/windows/visualce/index.html,
      builds/wince/vc2005-ce/index.html, builds/wince/vc2008-ce/index.html,
      docs/freetype-config.1: s/2.11.1/2.12.0/, s/2111/2120/.
      
      * include/freetype/freetype.h (FREETYPE_MINOR): Set to 12.
      (FREETYPE_PATCH): Set to 0.
      
      * builds/unix/configure.raw (version_info): Set to 24:2:18.
      * CMakeLists.txt (VERSION_MINOR): Set to 12.
      (VERSION_PATCH): Set to 0.
      
      * builds/toplevel.mk (do-dist): Generate `ChangeLog` entries for all commits
      since version 2.11.0 (when we stopped creating this file manually).
      e50798b7
    • Werner Lemberg's avatar
      Fix clang++ warnings. · 87989a14
      Werner Lemberg authored
      * src/base/ftglyph.c (ft_svg_glyph_prepare), src/base/ftobj.c
      (ft_glyphslot_init), src/cache/ftccmap.c (ftc_cmap_node_new),
      src/cache/ftcimage.c (FTC_INode_New), src/lzw/ftlzw.c (FT_Stream_OpenLZW),
      src/psaux/psobjs.c (ps_parser_load_field), src/pshinter/pshglob.c
      (psh_globals_new), src/sfnt/ttsvg.c (tt_face_load_svg_doc): Initialize
      variables used for allocation.
      
      * src/sdf/ftsdf.c (split_sdf_conic, split_sdf_cubic): Change type of
      `max_splits` to FT_UInt.
      (sdf_generate_bounding_box): Add cast.
      87989a14
  15. 30 Mar, 2022 2 commits
    • Werner Lemberg's avatar
      Whitespace. · 97cdbb24
      Werner Lemberg authored
      97cdbb24
    • Werner Lemberg's avatar
      [builds] Fix creation of `freetype2.pc` for static-only builds. · 119e404b
      Werner Lemberg authored
      We have to help `pkg-config` since it can't recognize that there is no
      shared library installed.
      
      Note that meson already does exactly the same.
      
      * builds/unix/configure.raw (REQUIRES_PRIVATE, LIBS_PRIVATE): Rename to...
      (PKGCONFIG_REQUIRES_PRIVATE, PKGCONFIG_LIBS_PRIVATE): This.  Adjust them
      depending on `$enable_shared`.
      (PKGCONFIG_REQUIRES, PKGCONFIG_LIBS): New variables.
      
      * builds/unix/freetype2.in, builds/unix/unix-def.in: Use new and updated
      variables.
      119e404b
  16. 25 Mar, 2022 5 commits
    • Werner Lemberg's avatar
      Add `FT_FACE_FLAG_SBIX_OVERLAY` and `FT_HAS_SBIX_OVERLAY`. · a8e4563c
      Werner Lemberg authored
      * include/freetype/freetype.h (FT_FACE_FLAG_SBIX_OVERLAY,
      FT_HAS_SBIX_OVERLAY): New macro.
      
      * src/sfnt/ttsbit.c (tt_face_load_sbit): Handle `FT_FACE_FLAG_SBIX_OVERLAY`.
      Remove obsolete tracing message.
      a8e4563c
    • Werner Lemberg's avatar
      Add `FT_PARAM_TAG_IGNORE_SBIX`. · 1949a7ec
      Werner Lemberg authored
      This is another bit to handle 'sbix' tables as described in the OpenType
      specification.
      
      * include/freetype/ftparams.h (FT_PARAM_TAG_IGNORE_SBIX): New macro.
      
      * src/sfnt/sfobjc.c (is_apple_sbix): Rename to...
      (has_sbix): ... this.
      Check for more sbit tables.
      Handle `FT_PARAM_TAG_IGNORE_SBIX` to eventually control `has_sbix`.
      Only call sbit table loader if an sbit table is present.
      1949a7ec
    • Werner Lemberg's avatar
      [truetype] Fix 'sbix' table handling. · ac4c1ebf
      Werner Lemberg authored
      * src/sfnt/ttsbit.c (tt_face_load_sbix_image): Correct calculation of
      'metrics->horiBearingY'.
      Set vertical metrics.
      
      * src/sfnt/sfobjs.c (sfnt_load_face): Adjust setting of `FT_FACE_FLAG_SBIX`.
      Handle metrics of fonts with 'sbix' table.
      
      * src/truetype/ttgload.c (TT_Load_Glyph): For 'sbix' embedded bitmaps, apply
      bbox offset and bearing values of the corresponding glyph in the 'glyf'
      table if it exists and has a contour.
      
      * src/truetype/ttobjs.c (tt_face_init): Handle font with 'sbix' table.
      
      Fixes issue #998.
      ac4c1ebf
    • Werner Lemberg's avatar
      Add `FT_FACE_FLAG_SBIX` and `FT_HAS_SBIX`. · 907715a6
      Werner Lemberg authored
      Fonts with 'sbix' tables need special handling by the application.
      
      * include/freetype/freetype.h (FT_FACE_FLAG_SBIX, FT_HAS_SBIX): New macros.
      
      * src/sfnt/sfobjs.c (sfnt_load_face): Set `FT_FACE_FLAG_SBIX` if 'sbix'
      table is present.
      907715a6
    • Werner Lemberg's avatar
  17. 24 Mar, 2022 2 commits
  18. 21 Mar, 2022 1 commit
  19. 20 Mar, 2022 1 commit
  20. 19 Mar, 2022 2 commits