Behdad Esfahbod

Results 1498 comments of Behdad Esfahbod

I'm still unsure how to address the linking issue here. Perhaps we can add API to libharfbuzz that would return the compose/decompose functions *per* script? @garretrieger would you be able...

> I'm still unsure how to address the linking issue here. Perhaps we can add API to libharfbuzz that would return the compose/decompose functions _per_ script? Easiest: `hb_unicode_funcs_create_for_script(hb_unicode_funcs_t *parent, hb_script_t...

> > I'm still unsure how to address the linking issue here. Perhaps we can add API to libharfbuzz that would return the compose/decompose functions _per_ script? > > Easiest:...

> * The chosen `compose`/`decompose` are per-shaper, not per-script. So we also need the font to decide which shaper to use since the same script may be routed to different...

> ```c++ > hb_unicode_funcs_t * > hb_face_unicode_funcs_create( > hb_face_t *face, > hb_script_t script, > hb_unicode_funcs_t *parent); > ``` Annoyingly, `hb_ot_shaper_categorize()` takes both script, and direction. Because: ``` /* For Arabic...

> ```c++ > hb_face_unicode_funcs_create > ``` Oh, or better: ```cpp hb_unicode_funcs_t * hb_ot_shape_plan_unicode_funcs_create( hb_shaple_plan_t *shape_plan, hb_unicode_funcs_t *parent ); ```

Okay. I implemented what I came up with, which addresses the linkage issue. However, unlike the previous prototype that only did this extra compose/decompose when the shaper had a non-default...

I thought I implemented this. Will take a look.

Oh nevermind. I implemented full instancing, not partial instancing IIRC. It's really complicated but doable... @qxliu76 can you add a warning or error?

I suggest a naming closer to "sparse" if this is to happen. We use "support" at least in varLib to mean a different thing: the influence region of each master,...