Re: Russian language support
- From: "Paul G. Tobey [eMVP]" <p space tobey no spam AT no instrument no spam DOT com>
- Date: Tue, 11 Jul 2006 12:12:20 -0700
The characters in Unicode are just values. Whether a given font that you
are using to display text contains the glyph for a given character or not is
up to the font. The message that you are sending me is just a string of
bytes, or if in Unicode, just a string of 2-byte values, each of which is
*interpreted* as a character by the e-mail program I'm using as the right
thing. It's up to the e-mail program on my end to display this data in
meaningful terms to me, the user looking at it on the screen. So, what it
does is take the data and put it in a TCHAR string that it will *soon* draw
to the display. Before it does this, it selects a font to use to display
the string. What's in the font? A list of 'glyphs'. A glyph is a drawing
that represents a corresponding character value. It might look like an 'A'
to a user of the Latin alphabet or it might look like a capital alpha to a
user of the Greek alphabet, or it might be a shape that doesn't even look
like a letter in any alphabet (an arrow, a heart, whatever). As it turns
out, TTF fonts in Windows CE map Unicode characters into suitable glyphs.
However, a font *does not* have to include the entire Unicode character set.
In fact, most fonts include a *very* small fraction of every defined Unicode
character (or every font would be huge; not a good idea for a little device
with 'just' 64MB or RAM, say). On my desktop PC, I have a 23MB version of
the Arial font and it might not even have *all* of the Unicode characters in
it. For Unicode characters that are *not* in a given font, the font might
draw squares (or any other shape).
I think that's what's going on in your device. You're drawing a character
for which there is no glyph in the font you've told Windows CE to use to do
the drawing, so you're getting squares. That's why I suggested that you
copy a font that you're sure has the glyphs for the Cyrillic characters you
want, to the device and use CreateFont(), SelectFont() or whatever to make
sure you're using *that* font, then draw the string with your desired
characters in it with that font.
Paul T.
"shiva" <shiva@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:02CE5C4D-8378-4290-AB37-1AC345FF0ABC@xxxxxxxxxxxxxxxx
I didnt get how this could be the problem. My device supports cour.ttf,
times.ttf and tahoma.ttf. Could you explain me more what is the problem.
--
Software Engineer
"Paul G. Tobey [eMVP]" wrote:
I think that, if it's a display problem, the most likely problem is that
the
target characters are not in the font that you're using. As a test, you
might copy a TTF font that you are sure contains the Unicode characters
you
are targeting from your desktop to the Windows folder of the device and
write a simple program to *use that font*, not the system font, to
display
the characters to a window.
The NLS stuff might be required for converting from a multi-byte
character
to the right Unicode character, but I don't see that as the cause, if
you've
hard-coded the right Unicode character in the string you are drawing...
Paul T.
"shiva" <shiva@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:1BA19BFB-0765-4E62-B6BE-BCBFF3ACE96C@xxxxxxxxxxxxxxxx
I'm a application devoper for a Windows CE 5.0 device. The applications
we
are writing contains UI with several dialogs and which also supports
localization of several languages like english, french, germany,
polish,
turkish and etc.,
The problem we are facing is with the russian language. In the UI some
of
the characters are displaying as squares and missing the actual
letters. I
didnt get due to what reason it is missing.
I have gone through the Platform Builder 5.0 help docs and it is
suggesting
to add some NLS settings for russian language in the NLS table or
enable
additional code pages but I didnt get the procedure how to do this.
The links I have followed is:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wceosdev5/html/wce50tskSettingLocaleInformationInCommonstr.asp
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wceosdev5/html/wce50conPlatformLocalization.asp
Please could anyone help me what is the actual problem I'm facing and
how
to
resolve this. I'm not bothering about platform localization, I want to
support localization for my application so that it should support
multiple
languages.
--
shiva
Software Engineer
.
- References:
- Re: Russian language support
- From: Paul G. Tobey [eMVP]
- Re: Russian language support
- Prev by Date: Re: Windows xp home
- Next by Date: Re: Code Space Full
- Previous by thread: Re: Russian language support
- Next by thread: Eboot doesn't boot PXA270
- Index(es):
Relevant Pages
|