一种字符输入显示方法及系统的制作方法

文档序号:6555925阅读:120来源:国知局
专利名称:一种字符输入显示方法及系统的制作方法
技术领域
本发明属于文字处理领域,尤其涉及一种字库生成及字符输入显示的方法和系统。
背景技术
点阵字库是一个以二进制数字信息串存放文字形状信息的文件,通常情况下,点阵字库是与某一标准字符集(如GB2312字符集)对应的,对于一个给定字符集,为了在计算机内方便地进行表示,需要对字符集内的抽象字符元素进行排序,对每个元素赋予一个特定的标号用以区别于其他字符,这个标号就是字符编码。因此点阵字库中存放的文字信息与字符集中的字符编码是一一对应的。传统的点阵字库生成方法是首先将点阵字库所对应的字符集对应的每一个文字的形状信息用一组机器可以识别的二进制数字表示。如图1所示,将汉字“你”的文字形状信息采用二进制的数字来表示,图中的二进制数字1表示有信息,0表示无信息。然后把这些二进制数字信息串按照一定的规则顺序保存到文件中,如GB2312字符集是按照汉字区位码组织规则顺序保存的。最后在文件中加上文件头,文件头包括该点阵字库文件中包含的文字总数、文字宽度、文字高度、默认字符偏移量等文件控制信息形成了点阵字库。
传统的终端设备的文字显示通常是基于点阵字库,首先将点阵字库文件保存在终端设备的存储系统,例如快闪存储器(Flash)上,在有文字需要显示时,根据应用程序提供的字符编码,计算出该字符编码对应的文字在字库中的偏移位置;再根据该偏移位置从字库中取得该文字的二进制数字信息串,最后将该二进制数字信息串转换为可以在屏幕上显示的像素值,显示在屏幕上。在将二进制数字信息串转换为像素值的过程中,对于无信息的二进制位一般会转换为文字的背景色。由前述的终端设备的文字显示过程可以得知,在传统的终端设备的文字显示方法中,系统必须事先提供一个至少占用存储空间为几百K字节的点阵字库才能显示出文字;另外,由于点阵字库中只是保存了文字的轮廓信息,所以只能显示单色文字;同时,点阵字库格式通常为16×16点阵或24×24点阵等,所以显示文字的大小比较单一。
现有技术提供了一种在计算机视窗环境下显示文字的方法,该方法包括初使化至少一点阵字库和索引,产生与该字库对应的单色位图及应用程式界面;将该单色位图选入程式界面中;依文字内码产生其在该索引中的位址;依该位址,读出该文字序号,依该序号读出该文字在点阵字库内的点阵值并赋予该单色位图,由该位图将文字储存到目标视窗内并在显示装置上显示。
上述方案仅适用于计算机视窗环境,利用已有的文字及其字符编码产生新的单色字库和索引,在使用时再根据字符编码找到它的索引,最后根据索引在新字库中找到其单色位图送往屏幕显示,只能根据现有文字产生新的单色字库,不能产生彩色的文字,且文字的大小和样式只能是一般的点阵字库所提供的几种。由于在产生字库的同时还要产生一个索引,使得在显示文字的过程中有从编码到索引和从索引到点阵信息位置的转换过程,字库的生成效率低。同时,在文字显示时需要先将文字点阵信息显示在单色位图上,再将单色位图送往屏幕显示,相当于文字点阵信息传送了两次,显示效率比较低。

发明内容
本发明的目的在于提供一种字库生成方法,旨在解决现有技术中存在的点阵字库不能产生彩色文字,且文字的大小和样式单一,显示效率低,适用范围有限的问题。
本发明的另一目的在于提供一种字符输入显示方法。
本发明的另一目的在于提供一种字库生成系统。
本发明的另一目的在于提供一种字符输入显示系统。
本发明是这样实现的,一种字库生成方法,所述方法包括下述步骤A.加载字库图片、与所述字库图片对应的字符编码集以及所述字库图片的网格信息;B.将所述字库图片解码转换为线性连续存放的设备相关位图信息;C.将所述设备相关位图信息和字符编码集分别写入终端设备字库的像素信息项和字符信息项,生成字库以及与所述字库对应的字体。
所述字符编码集为通用字符编码集或者自定义字符编码集。
所述网格信息包括所述字库图片每行包含的网格数,或者所述字库图片中每个网格的高度和宽度信息。
所述字库图片、与所述字库图片对应的字符编码集以及所述字库图片的网格信息保存在服务器上。
一种字符输入显示方法,所述方法包括下述步骤A.接收用户输入的字符编码;B.查找终端设备字库中的字符信息项,获取所述字符编码在字符编码集中的位置;C.根据所述字符编码在字符编码集中的位置获取所述字符编码对应的位图信息;D.将所述位图信息提交终端设备显示装置显示。
所述方法进一步包括E.从内存中删除所述字库以及所述字库对应的字体信息,释放终端设备的内存空间。
一种字库生成系统,所述系统包括数据加载模块,用于加载字库图片、与所述字库图片对应的字符编码集以及所述字库图片的网格信息;字库图片解码模块,用于将所述字库图片解码转换为线性连续存放的设备相关位图信息;
字库生成模块,用于将所述设备相关位图信息和字符编码集分别写入终端设备字库的像素信息项和字符信息项。
所述字符编码集为通用字符编码集或者自定义字符编码集。
所述网格信息包括所述字库图片每行包含的网格数,或者所述字库图片中每个网格的高度和宽度信息。
所述字库图片、与所述字库图片对应的字符编码集以及所述字库图片的网格信息保存在服务器上。
一种字符输入显示系统,所述系统包括字符编码接收模块,用于接收用户输入的字符编码;字符编码定位模块,用于查找终端设备字库中的字符信息项,获取所述字符编码在字符编码集中的位置;位图信息查找模块,用于根据所述字符编码在字符编码集中的位置获取所述字符编码对应的位图信息;位图信息显示控制模块,用于将所述位图信息提交终端设备显示装置显示。
所述系统进一步包括信息存储管理模块,用于从内存中删除所述字库以及所述字库对应的字体信息,释放终端设备的内存空间。
通过本发明,可以生成任意大小、任意样式的单色或彩色字库,字库的大小可以灵活设置,显示效率高,可以应用于各种字符输入显示环境。


图1是二进制数字信息串表示的字符信息的示例图;图2是本发明的提供的字库生成方法的实现流程图;图3是本发明中的字库图片示例图;图4是利用本发明提供的字库实现字符显示的流程图;图5是本发明提供的字库生成系统的结构图;
图6是本发明提供的字符输入显示系统的结构图。
具体实施例方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明利用网格形式的字库图片生成字库,在使用时,根据字符编码集中的字符编码输出需要显示的字符的位图信息。
图2示出了本发明的提供的字库生成方法的实现流程,详述如下在步骤S201中,加载字库图片、与字库图片对应的字符编码集以及字库图片的网格信息。
字库图片可以采用Photoshop等常用的图像处理软件创建。字库图片为网格状,即图片上有多个按行列方式组织的网格,每个网格中有一个字符,字符的大小、样式和色彩可以任意指定。字库图片的格式不受限制,例如联合图像专家组(Joint Photographic Experts Group,JPEG)等格式。字库图片中一般情况下应该包含一个默认字符,一般为空格、“?”或“■”,用于处理输入字符编码找不到对应字符的情况。
每个字库图片都有对应的字符编码集,字库图片中的每个字符都在字符编码集中有一个唯一对应的字符编码,字符编码在字符编码集中的位置与对应字符在字库图片中的位置相对应,从而可以根据字符编码查找到字库图片中对应字符的位图信息。
在本发明中,一般采用通用字符编码集,例如ISO8859-1。以图3所示的字库图片为例,字符0、1、2、3、4、5、6对应通用字符编码集ISO8859-1中的0x30、0x31、0x32、0x33、0x34、0x35、0x36,0x29作为默认字符编码,与字库图片中最前面的一个空格对应。当然字符编码集也可以而由用户自定义,例如自定义文字0、1、2、3、4、5、6分别对应字符编码0x68、0x81、0x82、0x83、0x76、0x85、0x66,字符编码0x79作为默认字符编码。
字库图片的网格信息是指字库图片中每行的网格个数信息,当然也可以是每个网格的高度和宽度信息。根据字库图片的网格信息可以计算得到每个字符占用的存储空间大小,进而确定每个字符对应的位图信息的起始地址。
字库图片、字符编码集以及字库图片的网格信息可以直接保存到终端设备本地,也可以保存到服务器上供终端设备下载。
在步骤S202中,将字库图片解码转换为可以线性连续存放的设备相关位图(device-dependent bitmap,DDB)信息。
终端设备加载字库图片时,根据字库图片的格式采用对应的解码方式将字库图片解码,转换成可以线性连续存放的设备相关位图信息,即与终端设备的显示模式相匹配的像素信息。
在步骤S203中,将解码转换后的设备相关位图信息和字符编码集分别写入终端设备现有字库的像素信息项和字符信息项中,即完成了字库的创建。其中,像素信息项用于存放字符的位图信息,字符信息项用于检索字符编码。显然,创建的字库是终端设备现有字库的子集。字库创建完成后,生成与该字库对应的字体,供用户选择使用。
在使用本发明提供的字库实现字符的显示时,首先选择该字库对应的字体。字体的选择可以通过函数接口,例如Windows的选择对象(SelectObiect)接口实现,字体选择后,就可以利用本发明提供的字库实现字符显示。
图4示出了利用本发明提供的字库实现字符显示的流程,详述如下在步骤S401中,接收用户输入的字符编码,输入的字符编码可以是通用字符编码集的字符编码或者用户自定义的字符编码。当与字库图片对应的字符编码集是用户自定义时,输入的字符编码必须与用户自定义的字符编码集中的字符编码相同,否则输出的字符为字库图片中的默认字符。
在步骤S402中,查找终端设备字库中的字符信息项,确定该字符编码在字符编码集中的位置。
在步骤S403中,根据输入字符编码在字符编码集中的位置获取该字符编码对应的字符在字库中的偏移位置,从而获得该字符的位图信息,即像素信息。具体可以通过字符编码在字符编码集中的位置和每个字符占用的存储空间大小计算得到该字符编码对应的位图信息的起始地址。
在步骤S404中,将该字符编码对应的像素信息提交到终端设备的显示装置中显示。当字库图片设置了文字的透明显示模式,则在传送位图信息的过程中不传送背景色。背景色可以为图片的透明色或者采用由终端设备指定的背景色,如指定字库图片的第(0,0)点的颜色为透明色。
在上述过程中,当输入完成后,可以从内存中删除字体信息以及字库,释放其占用的内存空间,以节省终端设备的存储资源。
图5示出了本发明提供的字库生成系统的结构数据加载模块501加载字库图片、与字库图片对应的字符编码集以及字库图片的网格信息,字库图片解码模块502将字库图片解码转换为可以线性连续存放的设备相关位图信息。字库生成模块503将解码转换后的设备相关位图信息和字符编码集分别写入终端设备字库801的像素信息项和字符信息项中,生成字库,该字库是终端设备字库801的子集。
图6示出了本发明提供的字符输入显示系统的结构当用户使用系统输入显示字符时,字符编码接收模块601接收用户输入的字符编码,输入的字符编码可以是通用字符编码集的字符编码或者用户自定义的字符编码。字符编码定位模块602查找终端设备字库中的字符信息项,确定该字符编码在字符编码集中的位置。位图信息查找模块603根据输入字符编码在字符编码集中的位置,查找终端设备字库801,获取该字符编码对应的字符在字库中的偏移位置,从而获得该字符的位图信息,即像素信息。位图信息显示控制模块604将该字符编码对应的像素信息提交到终端设备显示装置802中显示输出。输入完成后,信息存储管理模块605从内存中删除字库以及字库对应的字体信息,释放终端设备的内存空间。
在具体实现上,上述字库生成系统和字符输入显示系统一般集成在一个系统中。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种字库生成方法,其特征在于,所述方法包括下述步骤A.加载字库图片、与所述字库图片对应的字符编码集以及所述字库图片的网格信息;B.将所述字库图片解码转换为线性连续存放的设备相关位图信息;C.将所述设备相关位图信息和字符编码集分别写入终端设备字库的像素信息项和字符信息项,生成字库以及与所述字库对应的字体。
2.如权利要求1所述的字库生成方法,其特征在于,所述字符编码集为通用字符编码集或者自定义字符编码集。
3.如权利要求1所述的字库生成方法,其特征在于,所述网格信息包括所述字库图片每行包含的网格数,或者所述字库图片中每个网格的高度和宽度信息。
4.如权利要求1所述的字库生成方法,其特征在于,所述字库图片、与所述字库图片对应的字符编码集以及所述字库图片的网格信息保存在服务器上。
5.一种字符输入显示方法,其特征在于,所述方法包括下述步骤A.接收用户输入的字符编码;B.查找终端设备字库中的字符信息项,获取所述字符编码在字符编码集中的位置;C.根据所述字符编码在字符编码集中的位置获取所述字符编码对应的位图信息;D.将所述位图信息提交终端设备显示装置显示。
6.如权利要求5所述的字符输入显示方法,其特征在于,所述方法进一步包括E.从内存中删除所述字库以及所述字库对应的字体信息,释放终端设备的内存空间。
7.一种字库生成系统,其特征在于,所述系统包括数据加载模块,用于加载字库图片、与所述字库图片对应的字符编码集以及所述字库图片的网格信息;字库图片解码模块,用于将所述字库图片解码转换为线性连续存放的设备相关位图信息;字库生成模块,用于将所述设备相关位图信息和字符编码集分别写入终端设备字库的像素信息项和字符信息项。
8.如权利要求7所述的字库生成系统,其特征在于,所述字符编码集为通用字符编码集或者自定义字符编码集。
9.如权利要求7所述的字库生成系统,其特征在于,所述网格信息包括所述字库图片每行包含的网格数,或者所述字库图片中每个网格的高度和宽度信息。
10.如权利要求7所述的字库生成系统,其特征在于,所述字库图片、与所述字库图片对应的字符编码集以及所述字库图片的网格信息保存在服务器上。
11.一种字符输入显示系统,其特征在于,所述系统包括字符编码接收模块,用于接收用户输入的字符编码;字符编码定位模块,用于查找终端设备字库中的字符信息项,获取所述字符编码在字符编码集中的位置;位图信息查找模块,用于根据所述字符编码在字符编码集中的位置获取所述字符编码对应的位图信息;位图信息显示控制模块,用于将所述位图信息提交终端设备显示装置显示。
12.如权利要求11所述的字符输入显示系统,其特征在于,所述系统进一步包括信息存储管理模块,用于从内存中删除所述字库以及所述字库对应的字体信息,释放终端设备的内存空间。
全文摘要
本发明适用于文字处理领域,提供了一种字符输入显示方法及系统,所述方法包括下述步骤A.加载字库图片、与所述字库图片对应的字符编码集以及所述字库图片的网格信息;B.将所述字库图片解码转换为线性连续存放的设备相关位图信息;C.将所述设备相关位图信息和字符编码集分别写入终端设备字库的像素信息项和字符信息项,生成字库以及与所述字库对应的字体。通过本发明,可以生成任意大小、任意样式的单色或彩色字库,字库的大小可以灵活设置,显示效率高,可以应用于各种字符输入显示环境。
文档编号G06F17/00GK1983239SQ20061003492
公开日2007年6月20日 申请日期2006年4月6日 优先权日2006年4月6日
发明者丁送星, 孙意, 赵伟明 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1