support. Changes, apart from minor fixes, include:
[ft] hb_ft_get_glyph_from_name fails for the name of glyph id 0
[uniscribe] Fix buffer allocation
[Indic] Add Javanese config
[OT] Collect requiredFeature only if features are not provided
Fix contextual lookup recursion indexing
Destroy lookups before blobs.
If variation selector is not consumed by cmap, pass it on to GSUB
Skip over multiple variation selectors in a row
util/ansi-print.cc: Use fallback implementation for lround on MSVC
hb-uniscribe.cc: Re-enable build under Visual Studio
Overview of changes leading to 0.9.18
Tuesday, May 28, 2013
=====================================
New build system:
- All unneeded code is all disabled by default,
- Uniscribe and CoreText shapers can be enabled with their --with options,
- icu_le and old shapers cannot be enabled for now,
- glib, freetype, and cairo will be detected automatically.
They can be force on/off'ed with their --with options,
- icu and graphite2 are default off, can be enabled with their --with
options,
Moreover, ICU support is now build into a separate library:
libharfbuzz-icu.so, and a new harfbuzz-icu.pc is shipped for it.
Distros can enable ICU now without every application on earth
getting linked to via libharfbuzz.so.
For distros I recommend that they make sure they are building --with-glib
--with-freetype --with-cairo, --with-icu, and optionally --with-graphite2;
And package harfbuzz and harfbuzz-icu separately.
to address issues with NetBSD-6(and earlier)'s fontconfig not being
new enough for pango.
While doing that, also bump freetype2 dependency to current pkgsrc
version.
Suggested by tron in PR 47882
Overview of changes leading to 0.9.17
Monday, May 20, 2013
=====================================
- Build fixes.
- Fix bug in hb_set_get_min().
- Fix regression with Arabic mark positioning / width-zeroing.
Overview of changes leading to 0.9.16
Friday, April 19, 2013
=====================================
- Major speedup in OpenType lookup processing. With the Amiri
Arabic font, this release is over 3x faster than previous
release. All scripts / languages should see this speedup.
- New --num-iterations option for hb-shape / hb-view; useful for
profiling.
Overview of changes leading to 0.9.15
Thursday, April 05, 2013
=====================================
- Build fixes.
- Fix crasher in graphite2 shaper.
- Fix Arabic mark width zeroing regression.
- Don't compose Hangul jamo into Unicode syllables.
Overview of changes leading to 0.9.14
Thursday, March 21, 2013
=====================================
- Build fixes.
- Fix time-consuming sanitize with malicious fonts.
- Implement hb_buffer_deserialize_glyphs() for both json and text.
- Do not ignore Hangul filler characters.
- Indic fixes:
* Fix Malayalam pre-base reordering interaction with post-forms.
* Further adjust ZWJ handling. Should fix known regressions from
0.9.13.
Overview of changes leading to 0.9.13
Thursday, February 25, 2013
=====================================
- Build fixes.
- Ngapi HarfBuzz Hackfest in London (February 2013):
* Fixed all known Indic bugs,
* New Win8-style Myanmar shaper,
* New South-East Asian shaper for Tai Tham, Cham, and New Tai Lue,
* Smartly ignore Default_Ignorable characters (joiners, etc) wheb
matching GSUB/GPOS lookups,
* Fix 'Phags-Pa U+A872 shaping,
* Fix partial disabling of default-on features,
* Allow disabling of TrueType kerning.
- Fix possible crasher with broken fonts with overlapping tables.
- Removed generated files from git again. So, one needs ragel to
bootstrap from the git tree.
API changes:
- hb_shape() and related APIs now abort if buffer direction is
HB_DIRECTION_INVALID. Previously, hb_shape() was calling
hb_buffer_guess_segment_properties() on the buffer before
shaping. The heuristics in that function are fragile. If the
user really wants the old behvaior, they can call that function
right before calling hb_shape() to get the old behavior.
- hb_blob_create_sub_blob() always creates sub-blob with
HB_MEMORY_MODE_READONLY. See comments for the reason.
Overview of changes leading to 0.9.12
Thursday, January 18, 2013
=====================================
- Build fixes for Sun compiler.
- Minor bug fix.
Overview of changes leading to 0.9.11
Thursday, January 10, 2013
=====================================
- Build fixes.
- Fix GPOS mark attachment with null Anchor offsets.
- [Indic] Fix old-spec reordering of viramas if sequence ends in one.
- Fix multi-threaded shaper data creation crash.
- Add atomic ops for Solaris.
API changes:
- Rename hb_buffer_clear() to hb_buffer_clear_contents().
Overview of changes leading to 0.9.10
Thursday, January 3, 2013
=====================================
- [Indic] Fixed rendering of Malayalam dot-reph
- Updated OT language tags.
- Updated graphite2 backend.
- Improved hb_ot_layout_get_size_params() logic.
- Improve hb-shape/hb-view help output.
- Fixed hb-set.h implementation to not crash.
- Fixed various issues with hb_ot_layout_collect_lookups().
- Various build fixes.
New API:
hb_graphite2_face_get_gr_face()
hb_graphite2_font_get_gr_font()
hb_coretext_face_get_cg_font()
Modified API:
hb_ot_layout_get_size_params()
Overview of changes leading to 0.9.5
Sunday, October 14, 2012
====================================
- Synthetic-GSUB Arabic fallback shaping.
- Misc Indic improvements.
- Add build system support for pthread.
- Imported UCDN for in-tree Unicode callbacks implementation.
- Context-aware Arabic joining.
- Misc other fixes.
- New API:
hb_feature_to/from-string()
hb_buffer_[sg]et_content_type()