Opened 6 years ago

Closed 5 years ago

#11262 closed enhancement (fixed)

harfbuzz-2..1.1

Reported by: Bruce Dubbs Owned by: Bruce Dubbs
Priority: normal Milestone: 8.4
Component: BOOK Version: SVN
Severity: normal Keywords:
Cc:

Description

New major version.

Change History (3)

comment:1 by Bruce Dubbs, 5 years ago

Owner: changed from blfs-book to Bruce Dubbs
Status: newassigned

comment:2 by Bruce Dubbs, 5 years ago

Summary: harfbuzz-2.0.0harfbuzz-2..1.1

Now at version 2.1.1.

Overview of changes leading to 2.1.1

  • AAT improvements:
    • Implement 'mort' table.
    • Implement 'kern' subtables Format 1 and Format 3

Overview of changes leading to 2.1.0

  • AAT shaping improvements:
    • Allow user controlling AAT features, for whole buffer only currently.
    • Several 'morx' fixes.
    • Implement tuple-kerns in 'kerx'; Fixes kerning with Apple default San Francisco fonts.
  • Support for color fonts:
    • COLR/CPAL API to fetch color layers.
    • SVG table to fetch SVG documents.
    • CBDT/sbix API to fetch PNG images.
  • New 'name' table API.
  • hb-ot-font now uses 'VORG' table to correctly position CFF glyphs in vertical layout.
  • Various fuzzer-found bug fixes.

Changed API:

A type and a macro added in 2.0.0 were renamed:

hb_name_id_t -> hb_ot_name_id_t HB_NAME_ID_INVALID -> HB_OT_NAME_ID_INVALID

New API: several

Overview of changes leading to 2.0.2

  • Fix two minor memory access issues in AAT tables.

Overview of changes leading to 2.0.1

  • Fix hb-version.h reported release version that went wrong (1.8.0) with previous release.
  • Fix extrapolation in 'trak' table.
  • Fix hb-font infinite-recursion issue with some font funcs and subclassed fonts.
  • Implement variation-kerning format in kerx table, although without variation.
  • Fix return value of hb_map_is_empty().

Overview of changes leading to 2.0.0

  • Added AAT shaping support (morx/kerx/trak). Automatically used if GSUB/GPOS are not available respectively. Set HB_OPTIONS=aat env var to have morx/kerx preferred over GSUB/GPOS.
  • Apply TrueType kern table internally, instead of relying on hb_font_t callbacks.
  • Khmer shaper significantly rewritten to better match Uniscribe.
  • Indic3 tags ('dev3', etc) are passed to USE shaper.
  • .dfont Mac font containers implemented.
  • Script- and language-mapping revamped to better use BCP 47.
  • Misc USE and Indic fixes.
  • Misc everything fixes.
  • Too many things to list. Biggest release since 0.9.1, with over 500 commits in just over 5 weeks! Didn't intend it to be a big release. Just happened to become.
  • hb-ft now locks underlying FT_Face during use.

API changes:

  • Newly-created hb_font_t's now have our internal "hb-ot-font" callbacks set on them, so they should work out of the box without any callbacks set. If callbacks are set, everything is back to what it was before, the fallback callbacks are null. If you to get the internal implementation modified, sub_font it.
  • New hb_font_funcs_set_nominal_glyphs_func() allows speeding up character to glyph mapping.

New API: +HB_FEATURE_GLOBAL_START +HB_FEATURE_GLOBAL_END +hb_buffer_set_invisible_glyph() +hb_buffer_get_invisible_glyph() +hb_font_funcs_set_nominal_glyphs_func() +hb_ot_layout_table_select_script() +hb_ot_layout_script_select_language() +hb_ot_layout_feature_get_name_ids() +hb_ot_layout_feature_get_characters() +hb_name_id_t +HB_NAME_ID_INVALID +HB_OT_MAX_TAGS_PER_SCRIPT +hb_ot_tags_from_script_and_language() +hb_ot_tags_to_script_and_language()

Deprecated API: -hb_font_funcs_set_glyph_func() -hb_unicode_eastasian_width_func_t -hb_unicode_funcs_set_eastasian_width_func() -hb_unicode_eastasian_width() -hb_unicode_decompose_compatibility_func_t -HB_UNICODE_MAX_DECOMPOSITION_LEN -hb_unicode_funcs_set_decompose_compatibility_func() -hb_unicode_decompose_compatibility() -hb_font_funcs_set_glyph_h_kerning_func() -hb_font_funcs_set_glyph_v_kerning_func() -hb_font_get_glyph_h_kerning() -hb_font_get_glyph_v_kerning() -hb_font_get_glyph_kerning_for_direction() -hb_ot_layout_table_choose_script() -hb_ot_layout_script_find_language() -hb_ot_tags_from_script() -hb_ot_tag_from_language()

comment:3 by Bruce Dubbs, 5 years ago

Resolution: fixed
Status: assignedclosed

Fixed at revision 20687.

Note: See TracTickets for help on using tickets.