[HarfBuzz] Where is the code currently handling Indic scripts?

Jonathan Kew jonathan at jfkew.plus.com
Fri Aug 21 09:32:56 PDT 2009


On 21 Aug 2009, at 17:01, Behdad Esfahbod wrote:

> On 08/21/2009 11:51 AM, mpsuzuki at hiroshima-u.ac.jp wrote:
>> On Fri, 21 Aug 2009 21:17:02 +0530
>> Shriramana Sharma<samjnaa at gmail.com>  wrote:
>>
>>> Hello.
>>>
>>> I tried looking through all the files at
>>> http://git.gnome.org/cgit/pango/tree/pango/opentype but they all  
>>> seem to
>>> contain generic code and I wonder where is all the code which  
>>> handles
>>> Indic scripts? It will give me an idea of the current status of  
>>> Indic
>>> script support in Harfbuzz and an indication of how to proceed.
>
> Now, that's the confusing part!
>
> Currently there are three OT Indic codebases, all derived from one  
> originally.
>
> Pango's:
> http://git.gnome.org/cgit/pango/tree/modules/indic
>
> Qt / old HarfBuzz:
> http://cgit.freedesktop.org/harfbuzz/tree/src
>
> And there's ICU's.
>
> Jonathan Kew is working on integrating that with new HarfBuzz and I  
> think he
> started with the ICU one.  We need to merge the ICU and Pango one  
> since both
> have been getting bug fixes over the years.

Actually, for Indic I have (at least as an experiment) begun writing a  
new shaper for Vista-style fonts, working directly from the new spec  
and not trying to adapt any of the existing codebases as AFAIK none of  
them currently support that standard (and understanding and modifying  
them is far from trivial). It's currently doing a pretty decent (but  
not-quite-perfect) job of Devanagari; I haven't tackled the variations  
for the other scripts yet. It's been written to work with Behdad's  
HarfBuzz code as of a couple of months ago, so I'm sure it'll need  
ongoing adjustments as the core API evolves.

For the pre-Vista fonts, we have the ICU/Pango/Qt code, though none of  
it is currently ported to the new HarfBuzz. I'm not yet sure whether  
it will be feasible to fold support for both the old and new Indic  
standards into the same shaper, or if they'll need to remain separate  
implementations.

If anyone cares to work on merging/updating the old-style (pre-Vista)  
Indic shapers, in parallel with my attempt to write a new-style  
shaper, that'd be fine with me; otherwise, that's on the list of  
things I'll need to get to....

JK




More information about the HarfBuzz mailing list