Re: Win98 i18n Unicode fonts trouble possibly solved.


Subject: Re: Win98 i18n Unicode fonts trouble possibly solved.
From: Saint-Denis (stdenisg@cedep.net)
Date: Wed Dec 27 2000 - 10:49:32 CST


> I think I've nailed this one. For some reason GR_Win32Graphics::drawChar
> checks if it's running on NT and if it is it uses the wide char
ExtTextOutW
> function, otherwise it uses ExtTextOutA. I can't figure out why this is
done
> since (according to M$ own docs, which are known to be quite wrong from
time
> to time) states that the wide-char version *is* available in win95+.
>
> The code didn't contain any comments at all why I can't comment on the
> validity of the patch of just removing the UT_IsWinNT() call and just call
> the wide-char version no matter what. Could it have been an early attempt
to
> support Win32s?
>
> If anyone have access to win9x with a unicode font installed...
>
> /Mike - please don't cc
>

I am running Win95.

The problem at the origin of checking for NT or Win9x is that symbol
characters where not displaying correctly on Win9x. I corrected it with
"Patch for bug #1024", titled "All symbols show as boxes for symbol fonts"
sent on november 6.

Wide-char version is available on Win9x for a few functions. The code for
the NT portion was used also for Win9x prior to the patch. At the time, I
consulted MS knowledge base and found that Unicode support for Win9x is only
*partial by design*. MS offer a work around with the WideCharToMultiByte
function.

I just downloaded the Code2000 Unicode font and tried it by assigning that
font to a &#x2655 Unicode character. It shows like a question mark in
AbiWord. Using the debugger, the Unicode character is converted to question
mark by the WideCharToMultiByte function.

Commenting out to leave only the NT portion, and editing the Unicode1.abw to
assign the Code2000 font, I was able to see the unicode characters. However,
symbol characters revert to boxes.

Any ideas to win on both sides?

Gilles



This archive was generated by hypermail 2b25 : Wed Dec 27 2000 - 10:50:12 CST