[prev in list] [next in list] [prev in thread] [next in thread] 

List:       koffice
Subject:    Re: Cursor Movements (for Indian Language)
From:       Lars Knoll <lars () trolltech ! com>
Date:       2003-03-26 11:04:55
[Download RAW message or body]


> On Tue, 25 Mar 2003, Lars Knoll wrote:
> > > On Monday 24 March 2003 16:06, Bharathi S wrote:
> > > > On Mon, 24 Mar 2003, Lars Knoll wrote:
> > > >
> > > > May be for Unicode only. But We are having lot of internal
> > > > encodings. So We like to provide a encoding independent
> > > > solution. Anyway it need some rule files for each encoding stds.
> >
> > No, it doesn't. Unicode encodes everything you need to render indic
> > languages,
>
> I am NOT an expert in Encoding stds, So kindly read the following
> links, here the problems with Unicode and normal 8 bit encodings are
> discussed :
>
> http://acharya.iitm.ac.in/ind_fonts.html
> http://www.tenet.res.in/Donlab/Indlinux/index.html
>
> Comments are Welcome.

I've looked through the texts. They make one fundamental mistake, and that is 
the fact that they don't clearly differentiate between a "character" and a 
"glyph". 

A character is a letter of the alphabet and you will hopefully agree with me 
that this set is limited to about 50-60 characters in for example devanagari. 
In indic languages a set of characters form a syllable. Also the TSCII 
encoding scheme used less than 128 characters to encode indic texts.

So you can easily encode every indic text in Unicode. You can even mix 
devanagari and bengali in one document, something that is impossible to do 
with TSCII.

The you have the concept of a glyph, which is a visual representation of one 
character or a group of characters on the screen.

For an advanced typographic font, you could need thousands of glyphs to render 
the different indic syllables. Now this is where open type comes into the 
game, as the font format is designed to support exactly this type of mapping 
from a syllable to a visual representation on the screen. This is the way 
Microsoft went, and for once I agree with them that it is the right way to 
go. Please read
http://www.microsoft.com/typography/specs/default.htm
especially the section talking about indic open type fonts. There are also a 
lot of other references you can find on the web.

> > Please: Wait for Qt-3.2 beta, test it with the free RagHindi font
> > and then come back with what you think is missing.
>
> OK :)
>
> > You are talking about some proprietary encoding that encodes glyphs
> > again and not characters. We won't support this, as it will lead us
> > back into the hell from which Unicode is starting to free us.
>
> I am NOT talking about any "Proprietary Encoding". Here some people
> are having this type Indic 16 bit encoding idea.

If they want to create an font that does not rely on open type, they will need 
a 16bit encoding. If they think about a way of encoding indic text outside of 
unicode I can only disagree. The move everywhere in Linux is towards Unicode, 
just to get rid of all the hell of different encodings we had to go through 
the last 10 years. This is one of the fields where MS is far ahead of us.

> Apart from this,
>
> 1. I want have clear idea about "How the TEXT CURSOR is handled by the
>    base text widget ( like qtextedit ) OR in KOffice ?

You can try wordpad on Windows 2000 and how indic text input works there. 
We'll be very close to that. 

Basically cursor movement in indic languages is restricted to syllable 
boundaries, delete deletes the syllable after the cursor and backspace 
deletes the last character in the syllable before the cursor.

> 2. How to use 16 Bit/Unicode encoding in NORMAL C program (wchar_t) ?

Either use wchar_t, or char * arrays encoded in Utf8.

> Is it correct place to discuss this above things ? If NOT, Plz direct
> me to the right list.

When it comes to normal C apps, this is not really the correct list, but I 
don't know of one that fits.

Cheers,
Lars

____________________________________
koffice mailing list
koffice@mail.kde.org
To unsubscribe please visit:
http://mail.kde.org/mailman/listinfo/koffice
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic