On Sun, 19 Jun 2016 16:34:23 -0400
Kelvin Ma <kelvinsthirt...@gmail.com> wrote:

> When using the python harfbuzz bindings, how do I access the harfbuzz enums
> for direction, script, & language? Also can someone explain the difference
> between direction and script because I thought script implies direction.

Look in hb-common.h which is pulled in by hb.h.

There are enums for hb_direction_t and hb_script_t. There is no enum for 
hb_language_t, but you can get one by using hb_language_from_string().

A run needs to have a separate direction from its script because, in the case 
of bidi scripts like Arabic, a particular sequence of letters may be in the 
opposite order to the default direction of the script (arab). Harfbuzz expects 
each run to be in a single direction. So a sequence of arabic digits in an 
arabic text: ARABIC1234ARABIC, would get passed to harfbuzz as 3 runs "ARABIC" 
(rtl), "1234" (ltr), "ARABIC" (rtl). A bidi processor, say from icu, will do 
the maths for you here and work out the runs and their directions.

HTH,
Yours,
Martin
_______________________________________________
HarfBuzz mailing list
HarfBuzz@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/harfbuzz

Reply via email to