Re: Industry Thai Cell-Clustering Rules



Hello,

It's unfortunate that my mail server has been out of order along the weekend.
Worse than that is that I have lost a lot of mails during the period.

However, following up the mail archive, I can see the topic discussed so far.
And we seem to arrive at some conclusion.

Yes, please count me one for voting in favour of Wtt2.0 renderer
implementation, plus supports for Mac/Windows tis620 extensions.

However, let me participate some points I've missed:

---- 8< ----

On Fri, 3 Nov 2000, Robert Brady wrote:

> Robert Brady <robert suse co uk> writes:
> 
> > Pango shapers can "probe" fonts to see if they have certain glyphs.

This is interesting. The trick can help constructing fonts.scale file
with an automatic program like ttmkfdir.

> > They can also do y adjustments on glyphs.  It would be quite easy I guess
> > to make a Thai renderer that could do nicely positioned vowels without
> > needed extra glyphs for vowel-at-different-heights.
> 
> It's actually very difficult to do this (with X fonts) because you
> don't know how much to adjust the y positions.
> 
> With a real font technology, this would be possible, but I think the
> extra glyphs are probably a better way to handle things when
> using X fonts.

One more point is that the lowered tone marks are often larger than the
regular ones, to blend in with the upper vowels' size.

---- 8< ----

On Fri, 3 Nov 2000, Plabo Saratxaga wrote:

> I think the cell clusters must really be considered as a block, and don't
> allow to insert or delete inside of it. That is, in the byte sequence:
> 
>  x x x x x A B C y y y y y
> 
> insertion should be possible only before A or after C.
> selection should include A B C or none of them, but never only one of them.
> deleting with backspace or del should start by deleting first C then B
> then A.
> 
> Is that a logical approach for a Thai person ?

Yes, except that deleting with "Del" key will delete the whole cell (i.e.
all of A,B,C in the above case).

Deleting with backspace is as you described.

> Note that this problem is not limited to Thai, but is also the same for
> all indic scripts, Lao, Khmer, etc. and also Arabic and Hebrew.
> (maybe also Korean hangeul ? I think the way it works in Korean is that once
> the conjunct is done, it has its own value and is selected/deleted simply
> as a singel char (same thing with latin/cyrillic/greek scripts; 
> eg: ê (e circumflex) is a single char; you cannot select/delete only the 'e'
> or 'only the '^')).
> 
> So the same approach is needed.

Excellent view point. You're one step ahead. :-)

---- 8< ----

Regarding K.Chookij's questions about my message, let me summarize for sure
that we understand it the same way :-

- WTT 2.0 contains two parts:
  1. Input Method : regarding keyboard input sequence checking
     - The place for it is in XIM
  2. Output Method : regarding cell clustering
     - The place for it is here (Pango)

- WTT 2.0 XIM will prevent illegal input sequences from keyboard. But chance
  is that the data prepared by other systems or by program generation can
  be in illegal sequence. So, WTT 2.0 cell clustering rule is defined to
  cope with this.

- However, WTT 2.0 does not describe the typographical adjustment as done by
  Mac and Windows. Therefore, to provide quality Thai rendering, the
  adjustment should be incorporated.

- The WTT 2.0 cell clustering rule is font independent, while shaping is.
  Fortunately, the two extensions are essentially the same. It's only their
  code tables that differ. So, it's feasible to have WTT 2.0 renderer with
  the shaping capability.

---- 8< ----


On Fri, 3 Nov 2000, Chookij Vanatham wrote:

> K.Theppitak,
> 
> ] 
> ] > To Owen,
> ] > 
> ] > Addtionally, here is my answere to Owen's questions.
> ] > 
> ] >  - How many different rules are in use
> ] >   
> ] >    I would say, 2 cell-clustering rules. One is called Wtt2.0. The other,
> ] >    as explained above.
> ] 
> ] I would say: there should have been ONE cell-clustering rule, but WTT 2.0 
> ] might be too complicated for them.
> 
> Not quite sure why you are saying that there should be only ONE because
> at least, what we are talking so far, there are TWO. One is Wtt and
> the other is Incomplete-Wtt like you name it.

Here, I said there *should have been* one, not *should be* one.

The fact that Microsoft and Apple were in TAPIC could explain why I said
there *should have been* one.

---- 8< ----

On Fri, 3 Nov 2000, Chookij Vanatham wrote:

> I will change the cell-clustering to be Wtt2.0 cell-clustering
> standard and of course, will work with K.Theppitak to make sure
> that all these ideas are not coming from only one person.

I'm willing to contribute.
Caveat: I don't have experience in Pango code yet.

First, what do you have in hand, K.Chookij? I'm sure you have WTT 2.0 spec.
Do you have spec or some implementation of Mac/Windows adjustment?

> ]  - I'm not sure if we need to support multiple cell clustering
> ]    rules in Pango is even necessary. Can't we just say that 
> ]    we always use wtt-2.0?
> 
> That is the whole point and I would say "yes" but we need
> to hear from K.Theppitak as well.

I'm here, and I'd say "yes". :-)

Regards,
-Theppitak.






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]