发明内容
本发明所要解决的技术问题包括,针对现有技术中复杂文本布局引擎不识别的蒙文名义字符不能正确显示的问题,提供一种可使复杂文本布局引擎不识别的蒙文名义字符也被正确显示的构造蒙文字库的方法。
解决本发明技术问题所采用的技术方案是一种构造蒙文字库的方法,其包括:
1)制作显示字型:制作与要加入蒙文字库中的蒙文名义字符对应的显示字型;
2)信息整理:整理所述名义字符与其他蒙文字符的位置关系显示规则,所述名义字符与其他蒙文字符的位置关系显示规则规定了该名义字符与其他蒙文字符处于不同位置关系时分别对应的显示字型;
3)构造蒙文字库:将所述步骤1)中制作的显示字型以及所述步骤2)中整理的信息加入蒙文字库中以构造蒙文字库。
在本发明的构造蒙文字库的方法中,包括将“名义字符与其他蒙文字符的位置关系显示规则”加入蒙文字库的步骤,而名义字符与其他蒙文字符的位置关系显示规则规定了该名义字符与其他蒙文字符处于不同位置关系时,各字符(包括该名义字符和其他蒙文字符)分别应以什么显示字型显示;因此,只要使用根据本发明的方法构造的字库,那么即使对于未加入复杂文本布局引擎中的蒙文名义字符(或者说复杂文本布局引擎不识别的蒙文名义字符),计算机系统也可根据名义字符与其他蒙文字符的位置关系显示规则得出该字符及与其相邻的字符应当分别以什么形式显示,以将该名义字符及与其相邻的蒙文字符正确显示出来;从而保证全部蒙文字符的正确显示,并方便用户。
优选的是,所述制作与要加入蒙文字库中的蒙文名义字符对应的显示字型具体为:制作与要加入蒙文字库中的蒙文名义字符对应的显示字型的TrueType字库。
优选的是,所述显示字型包括:独立字型、词首字型、词中字型、词尾字型中的至少一种。
优选的是,在所述步骤2)中,在整理所述名义字符与其他蒙文字符的位置关系显示规则之前,还包括:整理能被复杂文本布局引擎识别的所述名义字符的蒙文显示规则;
整理所述名义字符与其他蒙文字符的位置关系显示规则具体为:根据所述名义字符的蒙文显示规则,整理所述名义字符与其他蒙文字符的位置关系显示规则。
进一步优选的是,所述复杂文本布局引擎为Uniscribe。
优选的是,整理与所述名义字符的相关的、蒙文字库所需的高级布局信息。
优选的是,所述蒙文字库为OpenType字库。
优选的是,所述蒙文名义字符为未加入复杂文本布局引擎中的蒙文名义字符。
本发明所要解决的技术问题还包括,针对现有技术中复杂文本布局引擎不识别的蒙文名义字符不能正确显示的问题,提供一种能正确显示复杂文本布局引擎不识别的蒙文名义字符的蒙文显示方法。
解决本发明技术问题所采用的技术方案是一种蒙文显示方法,其包括:
判断要显示的名义字符与其他蒙文字符间的位置关系;
根据蒙文字库中存储的名义字符与其他蒙文字符的位置关系显示规则选择所述名义字符及与其相邻的蒙文字符的显示字型,其中,所述蒙文字库是按照上述方法预先构造的。
由于本发明的蒙文显示方法中使用按上述方法构造的蒙文字库,因此其能正确显示复杂文本布局引擎不识别的蒙文名义字符及与其相邻的蒙文字符。
本发明所要解决的技术问题还包括,针对现有技术中复杂文本布局引擎不识别的蒙文名义字符不能正确显示的问题,提供一种能正确显示复杂文本布局引擎不识别的蒙文名义字符的蒙文显示装置。
解决本发明技术问题所采用的技术方案是一种蒙文显示装置,包括:
蒙文字库存储单元,用于存储按照上述方法预先构造的蒙文字库;
判断单元,用于判断要显示的名义字符与其他蒙文字符间的位置关系;
显示字型选择单元,用于根据蒙文字库中存储的名义字符与其他蒙文字符的位置关系显示规则选择所述名义字符及与其相邻的蒙文字符的显示字型。
由于本发明的蒙文显示装置中存储有按上述方法构造的蒙文字库,因此其能正确显示复杂文本布局引擎不识别的蒙文名义字符及与其相邻的蒙文字符。
本发明用于显示蒙文字符,尤其是复杂文本布局引擎不识别
的蒙文名义字符。
具体实施方式
为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明作进一步详细描述。
实施例1:
本实施例提供一种构造蒙文字库的方法,其包括:
1)制作显示字型:制作与要加入蒙文字库中的蒙文名义字符对应的显示字型。
2)信息整理:整理所述名义字符与其他蒙文字符的位置关系显示规则,所述名义字符与其他蒙文字符的位置关系显示规则规定了该名义字符与其他蒙文字符处于不同位置关系时分别对应的显示字型。
3)构造蒙文字库:将所述步骤1)中制作的显示字型以及所述步骤2)中整理的信息加入蒙文字库中以构造蒙文字库。
在本实施例的构造蒙文字库的方法中,包括将“名义字符与其他蒙文字符的位置关系显示规则”加入蒙文字库的步骤,而名义字符与其他蒙文字符的位置关系显示规则规定了该名义字符与其他蒙文字符处于不同位置关系时,各字符(包括该名义字符和其他蒙文字符)分别应以什么显示字型显示;因此,只要使用根据本实施例的方法构造的字库,那么即使对于未加入复杂文本布局引擎中的蒙文名义字符(或者说复杂文本布局引擎不识别的蒙文名义字符),计算机系统也可根据名义字符与其他蒙文字符的位置关系显示规则得出该字符及与其相邻的字符应当分别以什么形式显示,以将该名义字符及与其相邻的蒙文字符正确显示出来;从而保证全部蒙文字符的正确显示,并方便用户
实施例2:
本实施例提供一种构造蒙文字库的方法,如图3所示,其包括以下步骤:
S01、制作显示字型:制作与要加入蒙文字库中的蒙文名义字符对应的显示字型。
也就是说,先选定要将什么名义字符加入蒙文字库,再制作与该名义字符对应的各种显示字型。
优选的,本步骤为制作与要加入蒙文字库中的蒙文名义字符对应的显示字型的TrueType字库。也就是说,利用TrueType的造字功能做出要加入蒙文字库的名义字符的各显示字型,并将它们制成TrueType字库。其中,TrueType是由Apple Computer公司和Microsoft公司联合推出的字型描述技术,它用数学函数描述字体轮廓外形,含有字型构造、颜色填充、数字描述函数、流程条件控制、栅格处理控制、附加提示控制等指令。由于TrueType的操作简单,应用广泛,因此非专业人员即可用其方便快捷的制作所需的显示字型,从而使一般用户也可方便的构造蒙文字库;另外,TrueType字库还可作制作OpenType字库的基础。
优选的,显示字型包括独立字型、词首字型、词中字型、词尾字型中的至少一种。上述的四种字型是指名义字符在单独存在、位于词首、位于词中、位于词尾时的不同形式,例如,图1和图4分别为uni18AA名义字符的独立字型和词中字型。
当然,此处制作的显示字型还可包括从格附加成分首字型、双词根第二词根字型、阴性词字型、阳性词字型等。
优选的,上述的蒙文名义字符为未加入复杂文本布局引擎中的蒙文名义字符;而该复杂文本布局引擎优选为Uniscribe。也就是说,本实施例优选用于将复杂文本布局引擎不能识别的蒙文名义字符(如uni18AA名义字符)加入蒙文字库中,因为复杂文本布局引擎能够识别的蒙文名义字符目前已可正确显示,因此不必使用本实施例的方法;当然,如果希望用本实施例的方法将复杂文本布局引擎能够识别的蒙文名义字符加入字库中,也是可行的。
S02、信息整理,其包括以下步骤:
S021、优选的,整理能被复杂文本布局引擎识别的上述名义字符的蒙文显示规则。
其中,复杂文本布局引擎可为Uniscribe等,而蒙文显示规则是复杂文本布局引擎可识别的常规格式,其根据蒙文的语法规则整理而成,规定了名义字符在不同情况下(如位置不同、词性不同等)分别应当以什么显示字型进行显示。由于该蒙文显示规则可采用蒙文字库中的已有的格式,故在此不再详细描述。
设置上述名义字符的蒙文显示规则的优点在于:可使本实施例的蒙文数据库对于复杂文本布局引擎中存在和不存在的蒙文字符兼容;当复杂文本布局引擎中不存在某一蒙文名义字符,可用名义字符与其他蒙文字符的位置关系显示规则显示该字符,而当复杂文本布局引擎中存在该蒙文名义字符时(例如假设此后uni18AA名义字符被加入了Uniscribe),则可用复杂文本布局引擎根据蒙文显示规则按照常规的方法直接处理该字符。
S022、根据该名义字符的蒙文显示规则,整理名义字符与其他蒙文字符的位置关系显示规则;其中,名义字符与其他蒙文字符的位置关系显示规则规定了名义字符与其他蒙文字符处于不同位置关系时分别对应的显示字型。
也就是说,名义字符与其他蒙文字符的位置关系显示规则规定了当名义字符与其他蒙文字符处于不同位置关系时,该名义字符和其他蒙文字符分别应以什么显示字型进行显示;其中,名义字符的显示字型是在S01步骤中制作的,而其他蒙文字符的显示字型是蒙文字库中已有的。可见,对于含有名义字符的蒙文文本,只要运用上述的位置关系显示规则,即可确定该名义字符及与其相邻的蒙文字符分别应当以什么形式显示,而不论复杂文本布局引擎能否识别该蒙文名义字符;从而本实施例的蒙文字库可实现全部蒙文字符的正确显示。
S023、优选的,整理与所述名义字符的相关的、蒙文字库所需的高级布局信息。
高级布局信息是字库(如OpenType)中所需的常规信息,其用于指示字符的语言类型、词性等,可包括文本信息、语言信息、特征信息等。由于高级布局信息可采用蒙文字库中的已有格式,故在此不再详细描述。
本实施例中,整理高级布局信息的步骤位于S021和S022步骤之后;但应当理解,该步骤也可在S021和S022步骤之间或之前进行,只要其能在构造字库步骤之前完成即可。
S03、构造字库:将上述显示字型和信息整理步骤中整理的信息加入蒙文字库中构造蒙文字库。
也就是说,将上述的名义字符、名义字符的各显示字型、名义字符的蒙文显示规则、名义字符与其他蒙文字符的位置关系显示规则、与名义字符相关的高级布局信息等加入字库中,从而构造蒙文字库。
优选的,蒙文字库为OpenType字库(又称Type 2字库)的形式。OpenType字库是Microsoft公司和Adobe公司联合开发的基于Unicode编码的字体格式,其是TrueType字库的扩展,融合了PostScript字体技术,在功能上还容纳了基线调整,竖排替换,变体替换等排版软件才可具备的操作;因此,使用OpenType字库具有使用方便、适应性好、可跨平台、功能多样、支持国际化处理等优点。
实施例3:
本实施例提供一种蒙文显示方法,其包括:
S11、判断要显示的名义字符与其他蒙文字符间的位置关系。
S12、根据蒙文字库中存储的名义字符与其他蒙文字符的位置关系显示规则选择所述名义字符及与其相邻的蒙文字符的显示字型,其中,所述蒙文字库是按照上述方法预先构造的。
也就是说,在进行蒙文显示时,利用由上述方法构造的蒙文字库,对于复杂文本布局引擎不识别的蒙文名义字符(如uni18AA名义字符)及与其相邻的蒙文字符,根据名义字符与其他蒙文字符的位置关系显示规则选择它们的显示字型,从而如图5所示,使该名义字符和与其相邻的字符均正确显示;当然,对于复杂文本布局引擎能识别的蒙文名义字符,可以根据蒙文字库中已有的、常规的蒙文显示规则显示,或者也可统一根据名义字符与其他蒙文字符的位置关系显示规则进行显示。
由于本实施例的蒙文显示方法中使用按上述方法构造的蒙文字库,因此其能正确显示复杂文本布局引擎不识别的蒙文名义字符及与其相邻的蒙文字符。
实施例4:
本实施例提供一种蒙文显示装置,其包括:
蒙文字库存储单元,用于存储按照上述方法预先构造的蒙文字库。
判断单元,用于判断要显示的名义字符与其他蒙文字符间的位置关系。
显示字型选择单元,用于根据蒙文字库中存储的名义字符与其他蒙文字符的位置关系显示规则选择所述名义字符及与其相邻的蒙文字符的显示字型。
也就是说,将上述方法构造的蒙文字库存储在蒙文显示装置中,并根据其中的名义字符与其他蒙文字符的位置关系显示规则选择显示字型,从而使复杂文本布局引擎不识别的蒙文名义字符及与其相邻的蒙文字符均能被正确的显示。
当然,本实施例中的各种单元可以是独立的部件,也可以集成为一体(如集成为一个存储器和一个控制器);另外,本实施例的蒙文显示装置还可包括其他常规单元,例如用于供用户输入字符的输入单元(如键盘、鼠标)、用于给出显示结果的输出单元(如显示器、打印机)等;例如,该蒙文显示装置可为计算机的形式。
由于本实施例的蒙文显示装置中存储有按上述方法构造的蒙文字库,因此其能正确显示复杂文本布局引擎不识别的蒙文名义字符及与其相邻的蒙文字符。
而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。