From: Peter_Constable@sil.org
Date: Wed Apr 30 2003 - 10:12:45 EDT
Eric:
> >I believe these have just been
> >codepoints used for internal purposes by GDI
> >
> And Netscape
>
<http://lxr.mozilla.org/seamonkey/source/intl/ctl/src/thaiShaper/thai-x.c>
> and ICU
> <http://oss.software.ibm.com/cvs/icu/icu/source/layout/ThaiShaping.cpp>,
> and probably FreeType/Gnome...
I looked at the Mozilla code. To the extent that I understand C (which,
admittedly is only to a limited degree), I see 8-bit values used for
presentation forms. For instance, in
502 else if (is_char_type (cluster[0], SpltTailCons) &&
503 is_char_type (cluster[1], BelowVowel|BelowDiac)) {
504 glyph_lists[0] = PANGO_MOZ_MAKE_GLYPH (tailcutcons (ucs2tis
(cluster[0]), shaping_table));
505 glyph_lists[1] = PANGO_MOZ_MAKE_GLYPH (ucs2tis (cluster[1]));
the Unicode codepoints are converted to TIS before being passed to the
tailcutcons and PANGO_MOZ_MAKE_GLYPH macros, and there's a lookup into
ThaiShapeTable, which is working in an 8-bit codespace (even if 16- or
32-bit datatypes are being passed around, the values are all 0xA0..0xFF).
So, I don't see reference to PUA codepoints. But then, I also don't know
how Pango is getting from these character codes to glyph IDs, and perhaps
somewhere along the way it's assuming U+F7xx code points in a Unicode cmap
table.
- Peter
---------------------------------------------------------------------------
Peter Constable
Non-Roman Script Initiative, SIL International
7500 W. Camp Wisdom Rd., Dallas, TX 75236, USA
Tel: +1 972 708 7485
This archive was generated by hypermail 2.1.5 : Wed Apr 30 2003 - 11:10:41 EDT