字符生成设备、字符生成方法、字符生成程序和存储介质的制作方法

文档序号:2601384阅读:153来源:国知局
专利名称:字符生成设备、字符生成方法、字符生成程序和存储介质的制作方法
技术领域
本发明涉及一种字符生成设备和一种由代表字符形状的数据生成字符的方法,以及一种使计算机执行所述方法的流程的字符生成程序。本发明还涉及一种存储所述程序的计算机可读记录介质。本发明优选地应用于低分辨率显示设备,比如液晶显示器、EL显示器、等离子显示器、CRT以及其它类似显示设备。
背景技术
下文中,将会对传统的字符生成设备进行介绍。
表述词句所需的完整字符集称为“字体”,它包括诸如,例如“胃”(附图13(a))或“工”(附图13(b))这样的字符信息。字符集(字体)的每一个字符都分配有一个字符码(例如,JIS码、移位(shift)JIS码、EUC码、JIS图形字符码、UNICODE等等)。字体可以包含与上述编码系统之一的所有编码相对应的字符。另外,字体可以仅包含KANA(日文假名字符)或数字等。
字体的一项,比如“胃”(附图13(a))、“工”(附图13(b))等,称为一个“字符”。包含在一种字体中的每个字符都有一个主体框,由附图13中的W3表示。主体框被定义为这样一种框该框包含相邻字符间的间隔或相邻线之间的间隔,主体框在将字符横排或竖排为一个字符序列时是必需的,以使相邻字符的主体框彼此相接。同种字体中的所有字符具有相同大小的主体框。
包含在一种字体中的每个字符都有一个文字框,由附图13中的W2表示。文字框被定义为这样一种框具有字符形状的最大尺寸的框。同一字体中的所有字符具有相同大小的文字框。
包含在一种字体中的每一个字符都有一个字符框,由附图13中的W1表示。字符框代表一个范围,实际上字符的形状是在该范围内设计的。因此,不同字符的字符框具有不同的大小。如附图13(a)和(b)所示,每个字符具有大小不同的矩形形状的字符框。例如,“胃”(附图13(a))的字符框是比“工”(附图13(b))的字符框更大的矩形。
虽然在附图13(a)和(b)中为了简明,字符的形状是由代表字符的间架结构的笔画数据表示的,但是字符的形状也可以由代表字符轮廓的框线数据表示。
字符是通过使用,例如,日本已公布专利公开第4-177295号和日本已公布专利公开第5-257450号中介绍的现有技术,由代表字符形状的数据生成的。这些文献公开了一种字符生成设备,该设备在由诸如照相排版机、打印机或其它类似设备的高分辨率打印设备来打印字符序列时,依据字符的大小、通过改变文字框与主体框的比例,来输出平衡的字符的序列。
附图14(a)和(b)表示上述技术的一个实例。附图14(a)中的“胃”或“工”的文字框与主体框的比例要大于附图14(b)中的“胃”或“工”的文字框与主体框的比例。
附图15(a)和(b)表示实际打印的字符的例子。在附图15(a)中,三个字符序列具有相同的文字框与主体框比例。在附图15(b)中,三个字符序列各自具有不同的文字框与主体框比例。随着字符大小增大(上面的字符序列),文字框增大。在这种情况下,当字符以相邻字符的主体框相接在一起的方式被横排或竖排时,通过调节字符之间的间隔,可以使这些字符从视觉上看起来比较大,以使该间隔不至于过大。
不过,例如,在附图15(a)中,在对这些字符进行放大同时保持文字框与主体框之间的比例不变的时候,字符之间的间隔也增大了,导致这些字符过于稀疏,并且因此难于将这些字符辨读为一个字符序列。
日本已公布专利公开第4-177295号和日本已公布专利公开第5-257450号对这个问题进行了如下的处理。例如,在附图15(b)中,在放大或缩小字符的同时,改变文字框与主体框的比例。以下述方式对字符间的间隔进行了调节当放大字符时,文字框与主体框之间的比例要比字符较小时更大。结果,可以抑制字符序列中产生的字符稀疏。
按照日本已公布专利公开第4-177295号和日本已公布专利公开第5-257450号中公开的现有技术,例如,通过调节文字框W2与主体框W3(附图13(a)和(b))之间的比例,可以使字符表面上看起来大或小。
不过,当将字符以具有小尺寸的位图的形式显示在诸如液晶显示器、EL显示器、等离子显示器、CRT或其它类似设备的低分辨率显示设备上时,各个的字符的大小会不同,除非有意调整字符框来匹配文字框。在这种情况下,难于辩读这些字符。
按照上述的日本已公布专利公开第4-177295号和日本已公布专利公开第5-257450号中公开的现有技术,没有定义字符框W1相对于文字框W2的坐标位置和字符框的原点(中心)(附图13(a)和(b))。因此,无法仅根据文字框W2与主体框W3的比例来有意地调整字符框使之与文字框相匹配。在下文中,将会更加详细地对这个问题进行介绍。
附图2A表示“胃”的示范性笔画数据。参照附图2A,将对通过利用代表字符框的坐标位置或原点(中心)的信息来调整一个字符使之与文字框相匹配的方法进行介绍。
字符“胃”的水平笔画#1-2与文字框的上边之间的距离是14,该距离是用文字框上边的y坐标值255减去笔画#1-2的y坐标值241得到的。最后一笔#1-10与文字框下边之间的距离是9,这个距离是用笔画#1-10的y坐标值9减去文字框下边的y坐标值0得到的。
字符“胃”的原点的y坐标值是125(=(255-(14+9))/2+9)。放大/缩小率为大约1.1(=255/(255-(14+9)))。
使用原点的y坐标(=125)和放大/缩小率(=1.1)将笔画#1-2的y坐标(=241)放大,以匹配文字框。通过(241-125)×1.1+127.5计算结果求得的y坐标,得到了y坐标值255。这个值等于文字框上边的y坐标值(=255)。回样,使用原点的y坐标(=125)和放大/缩小率(=1.1)对笔画#1-10的y坐标(=9)进行放大,以匹配文字框。通过y=(9-125)×1.1+127.5计算结果求得的y坐标,得到了y坐标值0。这个值等于文字框下边的y坐标值(=0)。
与此不同,日本已公布专利公开第4-177295号和日本已公布专利公开第5-257450号没有利用字符框的原点。参照附图15(b),按照这些现有技术,是通过改变文字框W2与主体框W3的比例对字符进行放大或缩小的,如下所述。例如,对附图2A中的字符“胃”进行放大,其中将用于放大/缩小处理的原点的y坐标设置为文字框中心的y坐标(=127.5),并且放大/缩小率为1.1,这与上面的叙述相同。通过y=(241-127.5)×1.1+127.5计算笔画#1-2的y坐标的结果(=241),得到了y坐标值252,这个值与文字框上边的y坐标值(=255)不等。由y=(9-127.5)×1.1+127.5来计算笔画#1-10的y坐标的结果(=9),得到了y坐标值3,这个值与文字框下边的y坐标值(=0)不等。
因此,需要代表字符框的坐标位置或原点(中心)的信息来调整字符以匹配文字框。如果没有代表字符框的坐标位置或原点(中心)的信息可以利用,而是将文字框的中心用作y坐标的放大/缩小的原点的话,那么就无法调整字符框的上下边来匹配文字框的上下边。

发明内容
按照本发明的一个方面,提供了一种字符生成设备,包括一个存储部分,用于存储至少一个字符的每一个的形状;一个字符码输入部分,用于输入与所要生成的所述至少一个字符相应的字符码;一个大小指定输入部分,用于指定与所述至少一个字符的文字框相应的位图大小;一个放大/缩小类型切换部分,用于根据所输入的字符码的类型和所指定的位图大小单独地改变字符框在垂直和水平方向上的放大/缩小率,同时防止字符框超出文字框;一个放大/缩小部分,用于依据由所述放大/缩小类型切换部分指定的放大/缩小率,将代表所述至少一个字符的形状的数据放大/缩小为所指定的位图大小;和一个输出部分,用于输出经所述放大/缩小部分放大/缩小的数据。
在本发明的另一个实施例中,放大/缩小类型切换部分针对所述位图大小定义了一个第一大小。当所指定的位图大小小于所述第一大小时,所述放大/缩小类型切换部分单独地改变所述字符框在垂直和水平方向上的放大/缩小率,以使所述字符框的上下左右边分别与所述文字框的上下左右边相接。
在本发明的一个实施例中,放大/缩小类型切换部分针对所述位图大小定义了一个第二大小。当所指定的位图大小等于或大于所述第二大小时,所述放大/缩小类型切换部分保持所述字符框与所述文字框的比例不变。
在本发明的一个实施例中,放大/缩小切换部分针对所述位图大小定义了一个第一大小和一个第二大小。当所指定的位图大小大于或等于所述第一大小且小于所述第二大小时,所述放大/缩小类型切换部分改变垂直和水平方向上的放大/缩小率,以使所述字符框的上下边或者左右边分别与所述文字框的上下边或者左右边相接。
在本发明的一个实施例中,当通过所述字符码输入部分输入的所述字符码不同于汉字字符码时,所速放大/缩小类型切换部分保持所述字符框与所述文字框的比例不变。
在本发明的一个实施例中,所述字符生成设备还包括一个放大/缩小类型存储部分,用于存储至少一个与通过所述字符码输入部分输入的所述字符码和通过所述大小指定输入部分输入的所述位图大小相应的放大/缩小类型,其中内容是可以改变的。所述放大/缩小类型切换部分从所述放大/缩小类型存储部分的内容中选择一个与所述字符码同所述位图大小之间的相互关系相对应的放大/缩小类型。
在本发明的一个实施例中,放大/缩小部分依照由所述放大/缩小类型切换部分确定的放大/缩小率,使用所述字符框的x和y坐标位置和所述文字框的x和y方向上的点数,对代表所述至少一个字符的形状的数据的坐标位置,进行坐标变换。
按照本发明的另一个方面,提供了一种字符生成方法,包括步骤存储至少一个字符的每一个的形状;输入与所要生成的所述至少一个字符相应的字符码;指定与所述至少一个字符的文字框相应的位图大小;根据所输入的字符码的类型和所指定的位图大小单独地改变字符框在垂直和水平方向上的放大/缩小率,同时防止字符框超出文字框;依据由所述改变步骤指定的垂直和水平的放大/缩小率,将代表所述至少一个字符的形状的数据放大/缩小为所指定的位图大小;和输出经所述放大/缩小步骤放大/缩小的数据。
按照本发明的另一个方面,提供了一种字符生成程序,用于使计算机执行下述步骤存储至少一个字符的每一个的形状;输入与所要生成的所述至少一个字符相应的字符码;指定与所述至少一个字符的文字框相应的位图大小;根据由所述字符码输入步骤输入的字符码的类型和由所述位图大小指定步骤指定的位图大小单独地改变字符框垂直和水平的放大/缩小率,同时防止字符框超出文字框;依据由所述改变步骤指定的垂直和水平的放大/缩小率,将代表所述至少一个字符的形状的数据放大/缩小为所指定的位图大小;和输出经所述放大/缩小步骤放大/缩小的数据。
按照本发明的另一个方面,提供了一种计算机可读记录介质,该记录介质存储着一种字符生成程序,用于使计算机执行下述步骤存储至少一个字符的每一个的形状;输入与所要生成的所述至少一个字符相应的字符码;指定与所述至少一个字符的文字框相应的位图大小;根据由所述字符码输入步骤输入的字符码的类型和由所述位图大小指定步骤指定的位图大小单独地改变字符框在垂直和水平方向上的放大/缩小率,同时防止字符框超出文字框;依据由所述放大/缩小类型切换步骤指定的放大/缩小率,将代表所述至少一个字符的形状的数据放大/缩小为所指定的位图大小;和输出经所述放大/缩小步骤放大/缩小的数据。
下文中,将对本发明的功能进行介绍。
按照本发明,所述放大/缩小类型切换部分根据通过所述字符码输入部分输入的字符码的类型和由所述大小指定输入部分指定的位图大小,选择一种放大/缩小类型,以改变字符框在垂直和水平方向上的放大/缩小率,同时防止所述字符框超出文字框。根据由所述放大/缩小类型切换部分选取的放大/缩小类型,所述放大/缩小部分把从存储部分读出的、代表字符的形状的数据放大/缩小为指定的位图大小,并通过所述输出部分输出所得到的数据。
例如,当指定的位图大小小于一个第一大小时,对于人类的视觉辨识而言,具有该第一大小的字符将受到1个点的量化误差的严重影响,此时所述放大/缩小类型切换部分将选择下述的放大/缩小类型。单独地在垂直方向上和水平方向上对字符框进行放大/缩小,以使该字符框的上下左右边分别与文字框的上下左右边相接。由此,能够输出具有相同大小的一连串字符。从而,这些字符是一致的且易于辨读。
当指定的位图大小等于或大于一个第二大小时,对于人类的视觉辨识而言,具有该第二大小的字符将基本不会受到1个点的量化误差的响,此时所述放大/缩小类型切换部分将选择下述的放大/缩小类型。将字符框与文字框的比例保持为预定的比例,由此能够输出一连串易于辨读的字符。
当所指定的位图大小等于或大于上述第一大小且小于上述的第二大小时,所述放大/缩小类型切换部分选择下述放大/缩小类型。在垂直和水平方向上以相同的放大/缩小率对字符进行放大/缩小,以使字符框的上下边或左右边分别与文字框的上下边或左右边相接。由此,能够输出一连串具有相同大小的字符。从而,这些字符是一致的且易于辨读。
当所指定的字符码不代表汉字字符时,所述放大/缩小类型切换部分选择下述放大/缩小类型。将字符框与文字框的比例保持为预定的比例,从而能够输出一连串的易于辨读的字符。
所述放大/缩小类型存储部分存储与指定的字符码和指定的位图大小的组合相对应的放大/缩小类型。其内容是可变的。所述放大/缩小类型切换部分选择存储在该放大/缩小类型存储部分中的一种放大/缩小类型,以单独地改变字符框在垂直和水平方向上的放大/缩小率,由此使得输出易于辨读的一连串字符成为可能。
这样,这里所介绍的本发明实现这样的优点提供一种在低分辨率显示设备上显示字符序列时能够放大/缩小字符以匹配文字框,从而使得抑制字符大小和位置的差异成为可能的字符生成设备和方法;一种用于使计算机执行所述方法的流程的字符生成程序;和一种存储着所述程序的计算机可读记录介质。
对本领域的技术人员而言,只要参照附图阅读并理解了下述的详细说明,本发明的这些和其它的优点都将变得显而易见。


附图1是表示按照本发明的一个实施例的字符生成设备的结构的框图。
附图2A是表示构成字符“胃”的字符框、文字框和每个笔画的坐标位置的示意图。
附图2B是表示构成字符“工”的字符框、文字框和每个笔画的坐标位置的示意图。
附图2C是表示构成字符“三”的字符框、文字框和每个笔画的坐标位置的示意图。
附图3A是表示存储在附图1的存储部分中的字符数据“胃”的数据的示意图。
附图3B是表示存储在附图1的存储部分中的字符数据“工”的数据的示意图。
附图3C是表示存储在附图1的存储部分中的字符数据“三”的数据的示意图。
附图4是表示存储在附图1的放大/缩小类型存储部分中的放大/缩小类型及其内容的示意图。
附图5是表示建立在附图1的放大/缩小类型存储部分中的示范性放大/缩小类型的示意图。
附图6是表示根据由附图1的大小指定输入部分输入的位图大小所选取的放大/缩小类型的示意图。
附图7是用于说明使用附图1的字符生成设备实现的字符生成方法的各个流程的流程图。
附图8A是表示通过对附图3A的字符数据“胃”进行放大/缩小类型A的放大/缩小变换而得到的字符数据的图表。
附图8B是表示通过对附图3A的字符数据“胃”进行放大/缩小类型C的放大/缩小变换而得到的字符数据的图表。
附图8C是表示通过对附图3A的字符数据“胃”进行放大/缩小类型B的放大/缩小变换而得到的字符数据的图表。
附图9(a)到(d)是表示按照各个放大/缩小类型而变换出来的字符的示意图。
附图10(a)到(c)是表示在进行了放大/缩小类型A或B的放大/缩小变换之后附图3B的字符“工”的字符数据的图表。
附图11是表示在进行了放大/缩小变换之后附图3C的字符“三”的字符数据的图表。
附图12(a-1)到(a-3)和12(b-1)到(b-3)是表示字符序列的示意图。具体讲,附图12(a-1)到(a-3)表示利用现有技术放大/缩小的字符序列。附图12(b-1)到(b-3)表示利用按照本发明实施例的字符生成方法而被放大/缩小的字符序列。
附图13(a)和(b)是用于解释传统的字符框、文字框和主体框的示意图。
附图14(a)和(b)是表示实例的示意图,其中按照现有技术改变了字符的文字框与主体框的比例。
附图15(a)和(b)是表示字符序列的示意图。具体讲,附图15(a)表示这样的字符序列按照现有的技术,不改变文字框与主体框的比例而对之进行放大/缩小。附图15(b)表示这样的字符序列在改变文字框与主体框的比例的同时进行放大/缩小。
具体实施例方式
在下文中,将参照附图、借助说明性的实例对本发明进行介绍。
附图1是表示按照本发明的一个实施例的字符生成设备的结构的框图。
参照附图1,字符生成设备10包括一个存储部分1、一个字符码输入部分2、一个大小指定输入部分3、一个放大/缩小类型切换部分4、一个放大/缩小类型存储部分6、一个放大/缩小部分5以及一个输出部分7。本发明的字符生成过程是按照本发明的字符生成程序进行的,该程序存储在一个存储部分(未示出)中。每一个流程都是由一个控制部分(中央处理单元(CPU))来控制的,这些流程包括从存储部分1中选取相应于输入字符码的字符数据的流程、由放大/缩小类型切换部分4和放大/缩小部分5执行的放大/缩小流程、由输出部分7执行的输出流程等等。
字符生成设备10可以通过,例如,一台个人计算机来实现。可以使用任何种类的个人计算机,比如台式计算机、膝上型计算机、笔记本计算机等等。另外,该字符生成设备10也可以是一个文字处理器。
另外,该字符生成设备10也可以由任何任意种类的信息显示设备来实现,比如包括作为输出部分7的显示装置的电子设备或信息设备(电子信息设备)。例如,该字符生成设备10可以是一个电子设备、一个移动信息工具(例如,个人数字助理等)、一个通信设备(例如,移动电话设备(包括PHS)或传统电话/传真设备等),这些设备各自都包括一个液晶显示装置。
另外,该字符生成设备10还可以由一个服务器设备来实现。该服务器设备并不一定包括一个显示装置。
下面将对存储部分1进行介绍。
存储部分1存储着包含在一种字体中的字符的形状。该存储部分1从字符码输入部分2接收与一个字符码相应的输入,并将与该字符码相对应的字符数据输出给与其相连的放大/缩小部分5。
代表一个字符的形状的字符数据可以是,例如,向量信息。该向量信息可以是笔画型的、框线型的、位图型的或者其它类似类型的。
例如,按照如下所述的方式,将如附图2A所示的字符“胃”的笔画数据存储在存储部分1中。参照附图3A,在区域01中描了一个字符码,并且具体而言,在其中定义了“胃”的JIS图形字符码“1663”。在区域02中描述了构成一个字符的笔画数量,并且具体而言,其中定义了构成字符“胃”的笔画数量(=12)。
在区域03中记述了笔画编号。例如,如附图3A所示,将“1”分配给了附图2A中所示的垂直笔画#1-1。在区域04中记述了由笔画所占有的坐标数目。如附图3A所示,例如,为附图2A中的笔画#1-1赋予了“2”。
在区域05中记述了笔画的类型。如附图3A所示,例如,为附图2A中所示的垂直笔画#1-1赋予了“直线”。在区域06中描述了笔画两端的坐标值。如附图3A所示,例如,为附图2A中的笔画#1-1赋予了(25,241)和(25,162)。
按照如下所述的方式,将如附图2B所示的字符“工”的笔画数据存储在存储部分1中。参照附图3B,将“工”的JIS图形字符码“0508”定义为区域01中的字符码。将构成字符“工”的笔画数量“3”定义在区域02中。在区域03中记述了笔画编号。例如,如附图3B所示,将“1”分配给了附图2B中的笔画#2-1。在区域04中描述了由笔画所占有的坐标数量。如附图3B所示,例如,为附图2B中的笔画#2-1赋予了“2”。在区域05中描述了笔画的类型。如附图3B所示,例如,为附图2B中所示的笔画#2-1赋予了“直线”。在区域06中记述了笔画两端的坐标值。如附图3B所示,例如,为附图2B中的笔画#2-1赋予了(40,200)和(216,200)。
按照如下所述的方式,将如附图2C所示的字符“三”的笔画数据存储在存储部分1中。参照附图3C,将“三”的JIS图形字符码“2716”定义为区域01中的字符码。将构成字符“三”的笔画数量“3”定义在区域02中。在区域03中记述了笔画编号。例如,如附图3C所示,将“1”分配给了附图2C中的笔画#3-1。在区域04中描述了由笔画所占有的坐标数量。如附图3C所示,例如,为附图2C中的笔画#3-1赋予了“2”。在区域05中描述了笔画的类型。如附图3C所示,例如,为附图2C中所示的笔画#3-1赋予了“直线”。在区域06中记述了笔画两端的坐标值。如附图3C所示,例如,为附图2C中的笔画#3-1赋予了(18,231)和(236,231)。
可以将字符数据存储在任何任意的存储介质中,比如最好是硬盘、CD-ROM、MO(磁光盘)、MD、DVD、IC卡、光卡或其它类似介质。
字符码输入部分2用于将字符码输入到字符生成设备10中。输入字符码被提供给所述存储部分1和与该字符码输入部分2相连的放大/缩小类型切换部分4。
字符码可用于识别字符。字符码的例子包括JIS码、移位JIS码、EUC码、JIS图形字符码、UNICODE等等。
所述字符码输入部分2可由通信部分来实现,比如LAN、WAN、移动电话网、有线通信网、无线通信网、连接计算机和外围设备的接口、包含在计算机中的数据总线等等。
所述大小指定输入部分3用于输入与字符的文字框相对应的位图大小。输入的位图大小被提供给与该大小指定输入部分3相连的放大/缩小类型切换部分4。该位图大小可为一个整数,例如,至少为1。
所述大小指定输入部分3可以是一个通信部分,比如LAN、WAN、移动电话网、有线通信网、无线通信网、连接计算机和外围设备的接口、包含在计算机中的数据总线等等。
所述放大/缩小类型切换部分4根据由字符码输入部分2提供的字符码和由大小指定输入部分3提供的位图大小来确定如附图4所示的放大/缩小类型。所确定的放大/缩小类型被提供给与该放大/缩小类型切换部分4相连的放大/缩小部分5。
附图4的例子包括放大/缩小类型A--“全框放大”,其中在垂直方向上和水平方向上改变字符框的放大/缩小率,以使字符框与文字框相匹配;放大/缩小类型B--“简单放大”,其中字符框与文字框的预定比例保持不变;和放大/缩小类型C--“比例不变放大”,其中以相同的放大/缩小率在垂直方向上和水平方向上改变字符框,同时保持文字框和字符框的长宽比不变,以使字符框在垂直或水平方向上与文字框相匹配。
所述放大/缩小类型C包括放大/缩小类型C-1--“垂直全框放大”,其中以相同的放大/缩小率在垂直方向上和水平方向上改变字符框,同时保持文字框和字符框的长宽比不变,以使字符框在垂直方向上与文字框相匹配;和放大/缩小类型C-2--“水平全框放大”,其中以相同的放大/缩小率在垂直方向上和水平方向上改变字符框,同时保持文字框和字符框的长宽比不变,以使字符框在水平方向上与文字框相匹配。
具体而言,当在与该放大/缩小类型切换部分4相连的放大/缩小类型存储部分6中设定了一种放大/缩小类型(该类型是根据由字符码输入部分2提供的字符码和由大小指定输入部分3提供的位图大小的组合而确定的)时,所述放大/缩小类型切换部分4从所述放大/缩小类型存储部分6中选择一种与所述字符码和位图大小相对应的放大/缩小类型。所选定的放大/缩小类型通过与放大/缩小类型存储部分6相连的放大/缩小类型切换部分4被提供给与该放大/缩小类型切换部分4相连的放大/缩小部分5。
附图5是表示存储在附图1的放大/缩小类型存储部分6中的示范性放大/缩小类型。
参照附图5,在该放大/缩小类型存储部分6中,为具有小于等于15的位图大小的问号“?”(字符码0109(JIS图形字符码))赋予了放大/缩小类型A,并且为具有大于等于16的位图大小的问号“?”赋予了放大/缩小类型C。为具有14到19(包括14和19)的位图大小的叹号“!”(字符码0110)赋予了放大/缩小类型C。为具有14到19(包括14和19)的位图大小的符号“””和“。”(字符码0111和0112)赋予了放大/缩小类型B。没有为汉字字符“胃”(字符码1663)赋予放大/缩小类型。
对于其放大/缩小类型没有存储在放大/缩小类型存储部分6中的字符而言,例如汉字字符“胃”等,放大/缩小类型是根据位图大小确定的,如附图6所示。
在附图6中,当位图大小n小于16时,所述放大/缩小类型切换部分4选择放大/缩小类型A。当位图大小n大于等于24时,选择放大/缩小类型B。当位图大小n介于16和23之间(包括16和23)时,确定为放大/缩小类型C。
所述放大/缩小部分5根据从所述大小指定输入部分3输入的位图大小和从放大/缩小类型切换部分4提供的放大/缩小类型,针对由所述存储部分1提供的字符数据进行放大/缩小变换(放大或缩小处理)。随后,该放大/缩小部分5将结果得到的字符数据提供给与其相连的输出部分7。
所述输出部分7可以是,例如,一个显示设备。显示设备的例子包括液晶显示器、EL显示器、等离子显示器、CRT以及其它类似设备。该输出部分7可以是,例如,一个通信设备。与因特网相连的设备可用作为通信设备。
下文中,将对使用本实施例的如此构成的字符生成设备的一种字符生成方法进行介绍。
附图7是用于解释使用附图1的字符生成设备的字符生成方法的各个步骤的流程图。
如附图7所示,在步骤S1中,从所述字符码输入部分2输入了一个字符码。例如,输入了一个汉字字符“胃”(字符码1663(JIS图形字符码))。这一输入是由用户利用键盘进行假名-汉字字符转换而完成的。
在步骤S2中,从大小指定输入部分3输入一个位图大小。例如,输入了“19”作为相应于文字框的位图大小。这一输入是由用户敲击键盘的“1”和“9”键而完成的。
在步骤S3中,从存储部分1中读出对应于在步骤S1中输入的字符码的字符的字符数据。
例如,附图3A的字符数据作为汉字“胃”(附图2A,字符码1663(JIS图形字符码))的字符数据。可替换地,读出附图3B的字符数据作为片假名字符“工”(附图2B,字符码0508(JIS图形字符码))的字符数据。可替换地,读出附图3C的字符数据作为汉字“三”(附图2C,字符码2716(JIS图形字符码))的字符数据。
在步骤S4中,放大/缩小类型切换部分4查询放大/缩小类型存储部分6,并判断在步骤S1中输入的字符码和在步骤S2中输入的位图大小是否对应于放大/缩小类型存储部分6中指定的字符码和位图大小,以及是否为它们赋予了放大/缩小类型。当在放大/缩小类型存储部分6中指定了放大/缩小类型时,处理过程进入步骤S5。当在放大/缩小类型存储部分6中没有指定放大/缩小类型时,处理过程进入步骤S6。
例如,在附图5中,符号“?”的字符码是0109(JIS图形字符码)。当符号“?”的位图大小为“19”时,为其赋予了放大/缩小类型C,如附图6所示。在这种情况下,处理过程进入步骤S5。汉字字符“胃”的字符码是1663(JIS图形字符码)。当汉字字符“胃”的位图大小是“19”时,没有为其赋予放大/缩小类型。在这种情况下,处理过程进入步骤S6。
当在步骤S4中确定放大/缩小类型存储部分6中赋予了放大/缩小类型(是)时,执行步骤S5。在步骤S5中,放大/缩小类型切换部分4从放大/缩小类型存储部分6中选取与字符码和位图大小相对应的放大/缩小类型。随后,处理过程进入到步骤S9。
例如,在附图5中,符号“?”的字符码是0109(JIS图形字符码)。当其位图大小为“19”时,选取放大/缩小类型C。
当在步骤S4中确定放大/缩小类型存储部分6中没有赋予放大/缩小类型(否)时,执行步骤S6。在步骤S6中,判断步骤S1中输入的字符码是否为汉字字符。当是汉字字符时,处理过程进入步骤S7。当不是汉字字符时,处理过程进入步骤S8。
在步骤S7中,由放大/缩小类型切换部分4根据步骤S2中输入的位图大小来确定放大/缩小类型。随后,处理过程进入步骤S9。
例如,在附图6中,汉字字符“胃”的字符码是1663(JIS图形字符码)。当该汉字字符“胃”的位图大小为“11”时,选择放大/缩小类型A。当该日本汉字字符“胃”的位图大小为“19”时,选择放大/缩小类型C。
在步骤S8中,选择放大/缩小类型B。
例如,为字符码是0608(JIS图形字符码)的片假名“工”选择放大/缩小类型B。
在步骤S9中,如果在步骤S5或S7中确定的放大/缩小类型不是“C”(否),则处理过程进入步骤S11。如果在步骤S5或S7中确定的放大/缩小类型为“C”(是),则处理过程进入步骤S10。
在步骤S10中,当放大/缩小类型为“C”时,计算在步骤S3中读取的字符数据的字符框是否高大于宽(纵长型),或者宽大于高(横长型),以确定放大/缩小类型,即,“C-1”或“C-2”。
例如,如附图2A所示,原始的字符数据被包含在256×256点的文字框中,即,从(0,0)到(255,255)(包括(0,0)和(255,255))的坐标数据范围内。在变换之前,坐标数据是由(x,y)表示的,而在变换到(n+1)×(n+1)(附图2A中n=255)的文字框之后,坐标数据是由(nx,ny)表示的。字符框的最小x坐标由min_x表示,而字符框的最大x坐标由max_x表示。字符框的最小y坐标由min_y表示,而字符框的最大y坐标由max_y表示。在这种情况下,字符框的实际宽度为mx=max_x-min_x。
字符框的实际高度为my=max_y-min_y。
当mx=<my时,确定该字符框为纵长型。选择放大/缩小类型“C-1”。处理过程进入步骤S11。
当mx>my时,确定字符框为横长型。选择放大/缩小类型“C-2”。处理过程进入步骤S11。
例如,在附图3A的字符数据“胃”的情况下,字符框的实际宽度mx为205(=230-25),而字符框的实际高度为232(=241-9)。因此,该字符框是纵长型的并且选择放大/缩小类型“C-1”。
在附图3C的字符数据“三”的情况下,字符框的实际宽度mx为239(=247-8),而字符框的实际高度为206(=231-25)。因此,该字符框是横长型的并且选择放大/缩小类型“C-2”。
在步骤S11中,根据步骤S2中输入的位图大小、步骤S3中读取的字符数据以及在步骤S5、S7或S8中选择的放大/缩小类型进行放大/缩小变换。将在放大/缩小变换中求得的数值四舍五入为整数。
例如,如附图2A所示,原始的字符数据被包含在256×256点的文字框中,即,从(0,0)到(255,255)(包括(0,0)和(255,255))的坐标数据范围内。在变换之前,坐标数据是由(x,y)表示的,而在变换到(n+1)×(n+1)(附图2A中n=255)的文字框之后,坐标数据是由(nx,ny)表示的。字符框的最小x坐标由min_x表示,而字符框的最大x坐标由max_x表示。字符框的最小y坐标由min_y表示,而字符框的最大y坐标由max_y表示。在这种情况下,字符框的实际宽度为mx=max_x-min_x。
字符框的实际高度为my=max_y-min_y。
例如,当放大/缩小类型为“A”时,放大/缩小变换之后的坐标(nx,ny)是依照下述表达式求出的(nx,ny)=((x-min_x)×n/mx,(y-min_y)×n/my)......(1)。
例如,当在步骤S2中输入的位图大小为11点时,使用上述表达式(1)将附图2A的字符数据“胃”变换为附图8A中所示的字符数据值。这样,就生成了一个如附图9(a)所示的与文字框的上、下、左、右边相接的字符。
当选取了放大/缩小类型“B”时,放大/缩小变换之后的坐标(nx,ny)是通过下述表达式计算出来的(nx,ny)=(x×n/255,y×n/255)......(2)。
例如,当在步骤S2中输入的位图大小为23点时,使用上述的表达式(2)将附图2A的字符数据“胃”变换为附图8C中所示的字符数据值。这样,生成了如附图9(c)所示的保持文字框与字符框的比例不变的字符。
例如,当在步骤S2中输入的位图大小为23点时,使用上述的表达式(2)将附图2B的字符数据“工”变换为附图10(c)中所示的字符数据值。这样,生成了保持文字框与字符框的比例不变的字符。
例如,当选取了放大/缩小类型“C-1”时,放大/缩小变换之后的坐标(nx,ny)是由下述表达式计算出来的(nx,ny)=((((x-min_x)×255/my)+z)×n/255,(y-min_y)×n/my),......(3)其中z=(255-(255×mx/my))×min_x/(min_x+255-max_x)。
例如,当步骤S2中输入的位图大小为19点时,使用上述表达式(3)将附图2A中的字符数据“胃”变换为附图8B中所示的字符数据值。这样,产生了一个如附图9(b)中所示的与文字框的上下边相接的字符。
例如,当选取了放大/缩小类型“C-2”时,放大/缩小变换之后的坐标(nx,ny)是由下述表达式计算出来的(nx,ny)=((x-min_x)×n/mx),(((y-min_y)×255/mx)+z)×n/255)......(4)其中z=(255-(255×my/mx))×min_y/(min_y+255-max_y)。
例如,当步骤S2中输入的位图大小为19点时,使用上述表达式(4)将附图2C中的字符数据“三”变换为附图11中所示的字符数据值。这样,生成了一个如附图9(d)所示的与文字框的左右边相接的字符。
在附图7的步骤S12中,将步骤S11中变换的字符数据提供给输出部分7。
附图12(a-1)表示一串字符,这些字符是依照现有技术进行放大/缩小的,同时对文字框与主体框的比例进行了调整,其中与文字框相对应的位图大小为19。
为了进行比较,附图12(b-1)示出了一串字符,这些字符是使用本实施例的字符生成方法进行放大/缩小的,以使字符框的上下左右边分别与文字框的上下左右边相匹配,其中与文字框相对应的位图大小为19(对应于附图12(a-1)中的字符大小)(本实施例中的放大/缩小类型A,其中位图大小小于16)。
附图12(a-2)表示附图12(a-1)中的字符框,这些字符框被填充为黑色。附图12(b-2)表示附图12(b-1)中的字符框,这些字符框被填充为黑色。附图12(a-3)表示附图12(a-1)的具有实际大小的字符。附图12(b-3)表示具有附图12(b-1)的实际大小的字符。
比较附图12(a-2)与附图12(b-2),可以看出,附图12(a-2)中的字符框的位置和大小都有变化,而附图12(b-2)中的字符框在位置或大小上都没有变化。比较表示一串具有实际大小的字符的附图12(a-3)和附图12(b-3),附图12(a-3)中的字符的位置和大小的差异都是很明显的。
按照本发明的上述实施例,放大/缩小类型切换部分4根据由字符码输入部分2输入的字符码和由大小指定输入部分3输入的位图大小,针对字符框的垂直和水平方向上的放大/缩小率(比例)选择一种放大/缩小类型。依照该放大/缩小类型,放大/缩小部分5对存储在存储部分1中的字符数据的形状进行放大/缩小,并通过输出部分7输出结果得到的字符数据。由此,能够产生这样的字符,这些字符易于辨读,且当一串这样的字符显示在低分辨率显示设备或类似设备上时,这些字符基本上没有差异。
在上述的实施例中,当指定的位图大小小于一个第一大小时,分别在垂直方向上和水平方向上对字符框进行放大/缩小,以使字符框的上下左右边分别与文字框的上下左右边相接。另外,可以单独改变垂直和水平方向上的放大/缩小率,以使字符框的上下左右边与文字框的上下左右边间隔1个点或更多个点(视觉上仍视为相接的)。换句话说,按照本发明,可以单独改变垂直和水平方向上的放大/缩小率,以使字符框的上下左右边与文字框的上下左右边基本上相接(包括没有实现接触的情况)。改变放大/缩小率以便得到一连串的一致且整齐的字符。
同样,当指定的位图大小等于或大于一个第一大小且小于一个第二大小时,以相同的放大/缩小率在垂直和水平方向上对字符进行放大/缩小,以使字符框的上下边或左右边分别与文字框的上下边或左右边相接。另外,可以改变放大/缩小率,以使字符框与文字框间隔1个点或更多个点(视觉上视为相接)。
如上所述,按照本发明,能够根据字符码和位图大小生成易于辨读且基本上无差异的一连串字符。尤其是,能够生成较好地适用于低分辨率显示设备的字符序列。
对于本领域的技术人员来说,对本发明进行的各种其它的修改都将是显而易见的,并且易于实现的,而不会超出本发明的范围和思想。因此,不希望本申请所附的权利要求的范围被局限于这里所阐述的说明书,而是希望权利要求书得到宽泛的解释。
权利要求
1.一种字符生成设备,包括一个存储部分,用于存储至少一个字符的每一个的形状;一个字符码输入部分,用于输入与所要生成的所述至少一个字符相应的字符码;一个大小指定输入部分,用于指定与所述至少一个字符的文字框相应的位图大小;一个放大/缩小类型切换部分,用于根据所输入的字符码的类型和所指定的位图大小单独地改变字符框的垂直和水平的放大/缩小率,同时防止字符框超出文字框;一个放大/缩小部分,用于依据由所述放大/缩小类型切换部分指定的放大/缩小率,将代表所述至少一个字符的形状的数据放大/缩小为所述指定的位图大小;和一个输出部分,用于输出经所述放大/缩小部分放大/缩小的数据。
2.按照权利要求1所述的字符生成设备,其中所述放大/缩小类型切换部分针对所述位图大小定义一个第一大小,当所指定的位图大小小于所述第一大小时,所述放大/缩小类型切换部分单独地改变所述字符框的垂直和水平的放大/缩小率,以使所述字符框的上下左右边分别与所述文字框的上下左右边相接。
3.按照权利要求1所述的字符生成设备,其中所述放大/缩小类型切换部分针对所述位图大小定义了一个第二大小,当所指定的位图大小大于或等于所述第二大小时,所述放大/缩小类型切换部分保持所述字符框与所述文字框的比例。
4.按照权利要求1所述的字符生成设备,其中所述放大/缩小类型切换部分针对所述位图大小定义了一个第一大小和一个第二大小,当所指定的位图大小大于或等于所述第一大小且小于所述第二大小时,所述放大/缩小类型切换部分改变垂直和水平的放大/缩小率,以使所述字符框的上下边或左右边分别与所述文字框的上下边或左右边相接。
5.按照权利要求1所述的字符生成设备,其中当通过所述字符码输入部分输入的所述字符码不同于汉字字符码时,所速放大/缩小类型切换部分保持所述字符框与所述文字框的比例。
6.按照权利要求1所述的字符生成设备,还包括一个放大/缩小类型存储部分,用于存储至少一个与通过所述字符码输入部分输入的所述字符码以及通过所述大小指定输入部分输入的所述位图大小相应的放大/缩小类型,其中内容是可改变的,其中所述放大/缩小类型切换部分从所述放大/缩小类型存储部分的内容中选择一个与所述字符码和所述位图大小之间的相互关系相对应的放大/缩小类型。
7.按照权利要求6所述的字符生成设备,其中所述放大/缩小部分依照由所述放大/缩小类型切换部分确定的放大/缩小率,使用所述字符框的x和y坐标位置以及所述文字框在x和y方向上的点数,对代表所述至少一个字符的形状的数据的坐标位置进行坐标变换。
8.一种字符生成方法,包括步骤存储至少一个字符的每一个的形状;输入与所要生成的所述至少一个字符相应的字符码;指定与所述至少一个字符的文字框相应的位图大小;根据所输入的字符码的类型和所指定的位图大小单独地改变字符框的垂直和水平的放大/缩小率,同时防止字符框超出文字框;依据由所述改变步骤指定的垂直和水平的放大/缩小率,将代表所述至少一个字符的形状的数据放大/缩小为所指定的位图大小;和输出经所述放大/缩小步骤放大/缩小的数据。
9.一种字符生成程序,用于使计算机执行下述步骤存储至少一个字符的每一个的形状;输入与所要生成的所述至少一个字符相应的字符码;指定与所述至少一个字符的文字框相应的位图大小;根据由所述字符码输入步骤输入的字符码的类型和由所述位图大小指定步骤指定的位图大小单独地改变字符框的垂直和水平的放大/缩小率,同时防止字符框超出文字框;依据由所述改变步骤指定的垂直和水平的放大/缩小率,将代表所述至少一个字符的形状的数据放大/缩小为所指定的位图大小;和输出经所述放大/缩小步骤放大/缩小的数据。
10.一种计算机可读记录介质,该记录介质存储一种字符生成程序,用于使计算机执行下述步骤存储至少一个字符的每一个的形状;输入与所要生成的所述至少一个字符相应的字符码;指定与所述至少一个字符的文字框相应的位图大小;根据由所述字符码输入步骤输入的字符码的类型和由所述位图大小指定步骤指定的位图大小单独地改变字符框的垂直和水平放大/缩小率,同时防止字符框超出文字框;依据由所述放大/缩小类型切换步骤指定的放大/缩小率,将代表所述至少一个字符的形状的数据放大/缩小为所指定的位图大小;和输出经所述放大/缩小步骤放大/缩小的数据。
全文摘要
提供了一种字符生成设备,该设备包括一个存储部分,用于存储至少一个字符的每一个的形状;一个字符码输入部分,用于输入与所要生成的至少一个字符相应的字符码;一个大小指定输入部分,用于指定与至少一个字符的文字框相应的位图大小;一个放大/缩小类型切换部分,用于根据输入的字符码的类型和指定的位图大小单独改变字符框垂直和水平的放大/缩小率,同时防止字符框超出文字框;一个放大/缩小部分,用于依据放大/缩小类型切换部分指定的放大/缩小率,将代表至少一个字符的形状的数据放大/缩小为指定的位图大小;和一个输出部分,用于输出经放大/缩小部分放大/缩小的数据。
文档编号G09G5/22GK1573911SQ200410049
公开日2005年2月2日 申请日期2004年6月10日 优先权日2003年6月10日
发明者小谷章夫, 小山至幸 申请人:夏普株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1