- mask propagation (when ligation, "or" the masks).
-- fail_shaper that always fails.
-
-- Make map in setup_masks() const, etc.
-
- Warn at compile time (and runtime with HB_DEBUG?) if no Unicode / font
funcs found / set.
-- In hb_shape(), assert if direction is INVALID.
-
- Fix TT 'kern' on/off and GPOS interaction (move kerning before GPOS).
- Do proper rounding when scaling from font space? May be a non-issue.
* init/medi/fina/isol for non-cursive scripts
* vkna,hkna etc for kana, etc
-- Move non-native direction and normalization handling to the generic non-OT
- layer, such that other backends can use (Uniscribe doesn't need this).
-
-- Convert NBSP into space glyph.
-
- Add Pango backend?
- Add ICUlayout backend?
- Add ICUlayout API?
-- Add Old HarfBuzz backend?
-
-- Add Old HarfBuzz API?
-
-- Add namespace to avoid type clashes with Windows
-
API issues to fix before 1.0:
============================
- hb_set_t
- hb_cache_t and relatives
-
-
-Optimizations:
-=============
-
-- Avoid allocating blob objects internally for for_data() faces?
-
-- Add caching layer to hb-ft?
-
-- Cache feature-less shape plans internally on the face.
buffer->guess_properties ();
+ assert (buffer->props.direction != HB_DIRECTION_INVALID);
+
hb_shape_plan_t *shape_plan = hb_shape_plan_create_cached (font->face, &buffer->props, features, num_features, shaper_list);
hb_bool_t res = hb_shape_plan_execute (shape_plan, font, buffer, features, num_features);
hb_shape_plan_destroy (shape_plan);