Re: bidi on Windows and Mac

From: Erik van der Poel (
Date: Fri Dec 17 1999 - 15:17:41 EST wrote:
> Erik wrote:
> >
> >Some people have graciously offered to help Mozilla implement
> >bidi. We are discussing the design now.
> >
> >It would be nice if we could implement the Unicode bidi
> >algorithm, including the embedding level resolution and the
> >actual reordering itself, in XP code. If it is in XP code, we
> >only have to implement it once, and we don't have to keep
> >multiple copies in sync.
> BiDi is only half (or less) of the issue, isn't it? What about
> all the other layout issues such as diacritic stacking and
> positioning, required and discretionary ligature formation,
> indic reording and glyph shaping, etc. Do you have a
> cross-platform solution to that to include in XP?

You raise good points. It was somebody else who proposed to do the
reordering and shaping required for Arabic and Hebrew in XP code. The
idea is to use Unicode's Arabic presentation forms in the U+FXXX area
for the shaping. The proposal does have its merits, I think. Then
somebody raised the issue of Thai and Indic, and somebody else said that
we should try to focus on bidi for now.

My concern is that we might be able to get away with using presentation
forms for Arabic for now, but then run into problems with other
languages later if we continue to try to use Unicode as a glyph
encoding. Actually, could you help me by giving specific examples of
glyphs that are *not* in Unicode? E.g. compulsory/discretionary
ligatures, shaped glyphs.

Then again, maybe we could use Unicode's presentation forms for Arabic
in XP code, and use font glyph codes in the platform-specific (PS) code
for those glyphs that are not in Unicode. This would be a "hybrid"
approach, I guess. I usually try to stay away from hybrid approaches,
but I guess it could be argued that the distinction between "character"
and "glyph" is not always so clean anyway (in some people's minds).



This archive was generated by hypermail 2.1.2 : Tue Jul 10 2001 - 17:20:56 EDT