Re: [Fwd: Worsening of Win32 layout]

From: Stephen Viles (sviles_abi@iinet.net.au)
Date: Thu Sep 18 2003 - 18:34:16 EDT

  • Next message: Dom Lachowicz: "Re: [PATCH} Bug 5385"

    19/09/03 3:51:57 AM, Robert Wilhelm <robert.wilhelm@gmx.net> wrote:
    >
    >> 1. placementResult is always 0 after the call to GetCharacterPlacementW,
    >> indicating that GetCharacterPlacementW function has failed:
    >> http://msdn.microsoft.com/library/en-us/gdi/fontext_4l84.asp
    >> "Return Values
    >> If the function succeeds, the return value is the same as the return value
    >> from GetTextExtentPoint32, the width and height of the string in logical units.
    >> If the function fails, the return value is zero."
    >>
    >
    >FWIW: you have to have "Microsoft Unicode Layer for Windows"
    >installed for these functions on Win95-WinME.
    >
    >Do you have it installed on your system?
    >
    >Robert

    Thanks Robert. A bit more reading in MSDN turned up the following:

    Windows 95/98/Me: GetCharacterPlacementW is supported by the Microsoft Layer for
    Unicode. To use this, you must add certain files to your application, as
    outlined in Microsoft Layer for Unicode on Windows 95/98/Me Systems.
    -- from http://msdn.microsoft.com/library/en-us/gdi/fontext_4l84.asp

    Platform SDK: Microsoft Layer for Unicode on Windows 95/98/Me Systems

    Compiling Your Application with the Microsoft Layer for Unicode

    The Microsoft Layer for Unicode is available as a redistributable from
    http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdkredist.htm.
    This download contains the UnicoWS.dll. The UnicoWS.lib is contained in the
    Platform SDK.
    -- from http://msdn.microsoft.com/library/en-us/mslu/winprog/compiling_your_application_with_the_microsoft_layer_for_unicode.asp

    So it seems that GR_Win32Graphics::drawChars (as currently coded) requires
    UnicoWS.dll on Win 95/98/ME due to its usage of GetCharacterPlacementW.
    This library requirement was discussed back in May this year in relation
    to the Win32 keyboard, and summarised by Dom in July this year as follows:

    We hope to have AbiWord 2.2 using unicows.dll so that
    we can use true unicode support for all of our input
    and output on Win32. Right now, it's too close to 2.0
    to even consider such a thing.
    -- from http://www.abisource.com/mailinglists/abiword-dev/2003/Jul/0298.html

    Some rework of GR_Win32Graphics::drawChars and/or XAP_Win32App::_setBidiOS
    may be necesssary to call GetCharacterPlacement (without the W) on Win9x.

    Your ever-willing Win98SE crash test dummy
    Stephen Viles.



    This archive was generated by hypermail 2.1.4 : Thu Sep 18 2003 - 18:45:56 EDT