[Bug 476427] [te_IN] - Consonant+Virama+Consonant+Virama+space renders the second virama as a separate glyph in lohit-telugu font

bugzilla at redhat.com bugzilla at redhat.com
Sun Jan 25 18:59:05 UTC 2009


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.


https://bugzilla.redhat.com/show_bug.cgi?id=476427





--- Comment #4 from Padmanabhan V. K. <bugzillas+padREMOVETHISdu at gmail.com>  2009-01-25 13:59:04 EDT ---
I think I have a fix to this problem (but not compatible with the latest .sfd
format in use at http://fedorahosted.org/lohit/browser/trunk/Lohit-Telugu.sfd)
and some justification for it.
I hope someone can fix the font correspondingly.

I am put up with an old Mandriva distro with pango-1.10.0-3mdk and
fontforge-1.0-0.20050809.1mdk. I used the Lohit Telugu font extracted from
lohit-fonts-2.3.1-1.fc10.src.rpm and the Pothana2000 font from
http://www.kavya-nandanam.com/dload.htm. For comparing the fonts, I created
.sfd's using the above fontforge (which cannot create or open the latest .sfd
format).

I extracted the sources for pango-1.10.0-3mdk and added a few debug messages
and observed the difference between the messages produced while rendering
"U+0c2f U+0c4d U+0c30 U+0c4d" for the 2 fonts (pasting the combination into the
font selection dialog for gvim while Pothana2000 is selected and then selecting
Lohit Telugu).

The debug messages show a "haln" substitution that is performed only for
Pothana2000 and not Lohit Telugu. The entire sequence of substitutions for
Pothana2000 is:
ya + ra + halant + halant (Pango-reordered) --blwf-> ya + below-base-ra +
halant --blws-> ya + wide-below-base-ra + halant --haln-> ya-halant +
below-base-ra.

The way Pothana2000 differs from Lohit Telugu is two-fold. First, the
below-base forms are shown with "gproperties 0x8" in the messages as opposed to
"gproperties 0x2" which corresponds to the opentype glyph class "mark" as
opposed to "base glyph."

>From Pothana2000.sfd:
ChainSub: coverage 0 1 'blws' 0 0 0 1
 1 1 0
  Coverage: 25 RaOttuWide1 RaOttuMiddle1
  BCoverage: 114 Jha Ya ...
 1
  SeqLookup: 0 'L005'
EndFPST
...
StartChar: RaOttuWide1
...
GlyphClass: 4
...
EndChar
...
StartChar: RaOttuMiddle1
...
GlyphClass: 4
...
Substitution: 0 65534 'L005' RaOttuWide1
...
Ligature: 0 1 'blwf' Ra Halanth
EndChar

>From Lohit-Telugu.sfd:
ChainSub: coverage 0 0 'blws' 0 0 0 1
 1 1 0
  Coverage: 16 U0C30_U0C4D.blwf
  BCoverage: 5 U0C2F
 1
  SeqLookup: 0 'L321'
EndFPST
...
StartChar: U0C30_U0C4D.blwf
...
GlyphClass: 2
...
Substitution: 0 65534 'L321' glyph495
...
Ligature: 0 0 'blwf' U0C30 U0C4D
EndChar
...
StartChar: glyph495
...
GlyphClass: 2
...
EndChar

Second, the ligation rules for halanth say all marks of other types according
to the "MarkAttachClasses" should be ignored.

>From Pothana2000.sfd:
MarkAttachClasses: 11
...
"MarkClass-10" 7 Halanth
...
StartChar: YaHalanth
...
GlyphClass: 3
...
Ligature: 2560 1 'haln' Ya Halanth
...
EndChar

(Note 2560 = 0xa00, i.e. all marks of types other than type 10 -- which happens
to be called MarkClass-10 and includes just the halanth -- should be ignored)

>From Lohit Telugu.sfd:
StartChar: U0C2F_U0C4D.haln
...
GlyphClass: 2
...
Ligature: 0 0 'haln' U0C2F U0C4D
...
EndChar

-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.




More information about the Fedora-fonts-bugs-list mailing list