RE: Newbie questions: 1) Surrogates in WinXP? 2) Unicode in PostScript?

From: Peter Constable (petercon@microsoft.com)
Date: Wed Apr 07 2004 - 03:52:00 EDT

  • Next message: Richard S Cook: "Re: Doulos SIL (was: French typographic thin space)"

    There's some discussion of support for supplementary-plane characters in
    WinXP at
    http://www.microsoft.com/globaldev/DrIntl/columns/018/default.mspx.
    There are also slide decks from some relevant presentations at
    http://www.microsoft.com/globaldev/reference/presentations/23rd_Unicode_
    Conf.mspx

    > Worse, most 3rd party win32 apps that process strings either treat
    them
    > as arrays of wchars or use CharNext/CharPrev, which don't allow for
    > surrogates. But the good news is that the .net libs do seem to allow
    for
    > surrogates and combining chars right in the string class -- which
    brings
    > us dangerously close to relatively hassle-free use of multi language
    > text!

    Yes, Win32 APIs were designed many years ago and generally assume a
    UCS-2 (i.e. plane 0 only) view of things. The WM_UNICHAR message was a
    later addition to Win32, and it passed a UTF-32 codepoint, though not
    many input methods generate that message.

    In the the .Net Framework, the string class (System namespace) and the
    System.Globalization and System.Text namespaces *are* designed to be
    aware of supplementary plane characters.

    For details, see the relevant portion of MSDN Library:

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/h
    tml/frlrfSystemStringClassTopic.asp

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/h
    tml/frlrfSystemGlobalization.asp

    http://msdn.microsoft.com/library/en-us/cpref/html/frlrfSystemText.asp

    There's also relevant sample code at
    http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=3
    68e8396-b14e-4768-89fd-8cef5b6256e7

    Peter Constable



    This archive was generated by hypermail 2.1.5 : Wed Apr 07 2004 - 04:32:54 EDT