none
WPF中对 西双版纳新傣文 不能正确显示的问题 RRS feed

  • 问题

  • Win7中增加了对西双版纳新傣文(New Tai Lue)的支持,我估计主要是在两个方面提供了支持,一是增加了两个字体(ntailu.ttf和ntailub.ttf ,字体名为:Microsoft New Tai Lue),二是在Usp10.dll(Uniscribe)中添加了对这种字体的一些控制。只要把这两个字体从win7中复制到 Win XP 中,XP也可以显示西双版纳新傣文,而且对于WPF程序会自动支持西双版纳新傣文,我估计是WPF里面自动支持最新的Uniscribe版本,但不知有没有人试验过,好像这个最新的Uniscribe版本,对西双版纳新傣文的支持有错误,

    如下图:

    可以看到,有些字符(4个字符)后面有虚的圆圈(U+25CC),原则上这个虚圈不应该显示,

    西双版纳新傣文有4个前置元音字符,分别是U+19B5、U+19B6、U+19B7和U+19BA,在这四个字符后会出现虚圈。

    更加恐怖的是,最新版的Uniscribe(usp10.dll)可能是增加了对smart Graphite code的支持,造成显示时,字符的颠倒,如下图:

    总结一下Uniscribe的问题:

    1、西双版纳新傣文的4个前置元音字符后多显示了虚圈(U+25CC)。

    2、当西双版纳新傣文的4个前置元音字符前面没有空格时,造成字符排序错误。

     

    如果这是Uniscribe的bug请帮忙让ms的人看一下,如果有解决问题的方法,请不惜赐教,谢谢。

    2011年12月24日 3:14

答案

全部回复