[HarfBuzz] Shaping different scripts in the same text run

Lóránt Pintér lorant.pinter at prezi.com
Sun Apr 7 05:07:15 PDT 2013


Thanks. I could manage to do this by using ucdn_get_script() for now. BiDi is going to be the next big challenge.  

--  
Lóránt Pintér
Developer at Prezi (http://prezi.com)



On Sunday, April 7, 2013 at 1:55 PM, Khaled Hosny wrote:

> On Sun, Apr 07, 2013 at 02:59:32AM +0200, Lóránt Pintér wrote:
> > Hi,  
> >  
> > I'm struggling with the problem of shaping mixed text. Say I have Thai
> > and English text that I would like to shape. If I put all of it in a
> > buffer, HarfBuzz chooses a shaper based on the first identifiable
> > character, and then uses that shaper for the whole text. So
> > "<thai><english>" gets shaped fine with the Thai shaper, but
> > "<english><thai>" gets messed up because it is shaped with the default
> > shaper.
> >  
> > I was trying to figure out how Pango does this, but found nothing yet.
> >  
> > Is it possible to ask HarfBuzz to identify text runs inside a buffer
> > (or some other way) that can be shaped with different shapers? If
> > there was a call that would identify the script (and maybe writing
> > direction) of each character in the input, then I could split the
> > buffer at positions where these a different script is used.
> >  
>  
>  
> You have to split the text runs before passing them to HarfBuzz, etch
> run should have the same script/language and text direction.
>  
> Ideally text should be first itemized into runs with the same script,
> and further split them into directional run according to BiDi algorithm.
>  
> There are of course more subtleties involved, like when using multiple
> fonts etc.
>  
> Regards,
> Khaled
>  
>  


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/harfbuzz/attachments/20130407/a207ae95/attachment.html>


More information about the HarfBuzz mailing list