Re: A little polish of Thai shaper
- From: Theppitak Karoonboonyanan <thep links nectec or th>
- To: Chookij Vanatham <chookij vanatham eng sun com>
- Cc: gtk-i18n-list gnome org
- Subject: Re: A little polish of Thai shaper
- Date: Wed, 13 Jun 2001 15:26:03 +0700
Sorry. I forgot the attachment.
-Theppitak.
On Wed, Jun 13, 2001 at 03:20:03PM +0700, Theppitak Karoonboonyanan wrote:
> Hello,
>
> I've just tested pango-0.16 with an iso10646 font, and the upper& lower
> vowels for Thai appear to be shifted to the left, as shown in :-
>
> http://linux.thai.net/~thep/2001_06_12_223941_shot.jpg
>
> (Note that in the screenshot, I use an adjusted version of clearyu
> font to correct Thai glyphs. And I have already sent the patch to
> the author.)
>
> I found that the case of iso10646 fonts are distinguished from other
> kinds of Thai fonts, which is not necessary here. I've tried fixing it,
> as in the attached patch, and the result is :-
>
> http://linux.thai.net/~thep/2001_06_12_235512_shot.jpg
>
> Moreover, I found that the Thai shaper doesn't work with Windows
> TrueType fonts, which are Unicode-based, due to the ucs2tis()
> conversion we did in the past. Therefore, I think what we have
> to do next is revise it to be 16-bit, and the codepage classification
> might need auto detection, just like what ttmkfdir does, rather than
> the XLFD determining as I once proposed. Because the convention is
> 8-bit based.
>
> But first, please check if the patch is OK.
>
> Regards,
> -Theppitak.
> --
> Theppitak Karoonboonyanan
> Information Research and Development Division, NECTEC, Thailand
> (Was: Software and Language Engineering Laboratory)
> http://www.links.nectec.or.th/~thep/ mailto:theppitak nectec or th
>
> _______________________________________________
> gtk-i18n-list mailing list
> gtk-i18n-list gnome org
> http://mail.gnome.org/mailman/listinfo/gtk-i18n-list
--- thai-x.c Tue Jun 12 23:25:00 2001
+++ thai-x.c.new Wed Jun 13 14:53:55 2001
@@ -412,25 +412,11 @@
if (combining)
{
- if (font_info->type == THAI_FONT_TIS ||
- font_info->type == THAI_FONT_TIS_MAC ||
- font_info->type == THAI_FONT_TIS_WIN)
- {
- glyphs->glyphs[index].geometry.width =
- logical_rect.width + glyphs->glyphs[index - 1].geometry.width;
- if (logical_rect.width > 0)
- glyphs->glyphs[index].geometry.x_offset = glyphs->glyphs[index - 1].geometry.width;
- else
- glyphs->glyphs[index].geometry.x_offset = glyphs->glyphs[index].geometry.width;
- glyphs->glyphs[index - 1].geometry.width = 0;
- }
- else
- {
- glyphs->glyphs[index].geometry.width =
- MAX (logical_rect.width, glyphs->glyphs[index - 1].geometry.width);
- glyphs->glyphs[index - 1].geometry.width = 0;
- glyphs->glyphs[index].geometry.x_offset = 0;
- }
+ glyphs->glyphs[index].geometry.x_offset =
+ glyphs->glyphs[index - 1].geometry.width;
+ glyphs->glyphs[index].geometry.width =
+ logical_rect.width + glyphs->glyphs[index - 1].geometry.width;
+ glyphs->glyphs[index - 1].geometry.width = 0;
}
else
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]