微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > mt2503 多国语言基础知识 3—印度语

mt2503 多国语言基础知识 3—印度语

时间:10-02 整理:3721RD 点击:
印度有很多的地方语言,比如
Bengali(0x901—0x970),Punjabi(0x981—0x9FA),Gujrati(0xA81—0xAEF),Oriya(0xB01—0xB70),Tamil(0xB82—0xBF2),Telugu(0x0C01—0x0C6F),K
annada(0xC82—0xCEF),Malayalam(0x0D01—0x0D6F),Sinhala(0x0DB2—0x0DF4).与阿拉伯语不同,这些不同的方言有不同的range,所以他们可以相
互独立,互不影响。由于印度语系也属于变形字,也存在A+B=C的规则,不同的地方是印度语系的这些字符的range不同,所以不存在相互干扰的现象
。不过印度语系的组合方式比较复杂,为了简化这些组合规则,mtk平台是用自定义字符来表示这些复杂的复合字符。所以如果要在MTK平台正确显示
印度语字符需要遵循MTK的相关fontspec,在dcc.mediatek.com的MMI/InputMethod/MTKFontSpec下有相关spec。如果需要自己制做印度语字库需要注
意要严格遵循fontspec中的字形定义,并且要注意其中Dwidth项。Dwith是印度语所特有的属性,在现实印度语字符时会根据前一个字符的Dwidth的
值来调节下一个字符的显示位置。每个字符的Dwidth值都有可能同,所以需要对每个字符的Dwidth值来进行定义,对此MTKfontspec中存在每种字体
大小下每个字符的Dwidth值。需要注意的是,Dwidth属于BDF的一个属性,它的默认值是和字符的宽度是相同的,只有印度语的时候才会不同,但是
这个值不会根据字形自动生成,所以需要将每个字符的Dwidth根据fontspec中的定义手动加入到生成的BDF中。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top