[webkit-dev] Safari and complex script rendering

Paul Pedriana ppedriana at gmail.com
Sun Sep 28 01:15:43 PDT 2008


    >> ... this is not a WebCore issue, so there is nothing you can do 
in WebCore to fix it.

When I look at WebCore's WidthIterator::advance function, it doesn't 
seem to me to be savvy to complex script. It looks to me like it walks 
through a Unicode string and replaces character clusters with individual 
glyphs. This approach works for most scripts but not complex scripts 
such as Arabic and Devanagari. The problem, as you may well be aware, is 
that there are many OpenType-directed substitutions, ligations, and 
"un-ligations." This is unrelated to Arabic's RTL nature unrelated to 
simply contextual alternates resulting from cursiveness. It seems to me 
that complex script would have to be supported by something other than 
WidthIterator::advance (is it?).

If WebCore (or WebKit in general) supports complex script correctly then 
I wonder what I am missing regarding the above statements.

Paul




More information about the webkit-dev mailing list