CN1088319A - 产生字符的方法和装置 - Google Patents
产生字符的方法和装置 Download PDFInfo
- Publication number
- CN1088319A CN1088319A CN93114343.8A CN93114343A CN1088319A CN 1088319 A CN1088319 A CN 1088319A CN 93114343 A CN93114343 A CN 93114343A CN 1088319 A CN1088319 A CN 1088319A
- Authority
- CN
- China
- Prior art keywords
- type matrix
- data
- character
- stroke
- reference position
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
- Dot-Matrix Printers And Others (AREA)
- Digital Computer Display Output (AREA)
Abstract
一种字符发生方法,包括贮存部分字模的原点位
置数据,基本字模的起始位置数据和基本字模外形数
据。计算基本字模的绝对起始位置和安排基本字模
在相应绝对起始位置以产生所需字模。
一种字符发生装置包括贮存部分字模的原点位
置数据和基本字模起始位置数据的公共文件;贮存基
本字模外形数据的独立文件和字符发生电路,用于计
算基本字模的绝对起始位置并安排基本字模在其绝
对起始位置而产生所需字符的字模。
Description
本发明涉及用于产生字模(character pattern)的字形发生方法和装置,该字模配置多个构成一个字符的部分字模,每一起始点产生一个相应的字模。本发明与系列号009896,申请日为1993年3月8日,转让给富士通有限公司和OHTOMO试验室有限公司的字符发生方法和装置的相关申请互为参考。
字模广泛应用于显示和/或打印字符的装置中。这些装置有贮存在其内的字模,根据字符代码产生字模和显示或打印该字模。该字模在贮存时一般是位映象的。对于包含很多字符的汉字或相似的文字,单个字模的位映象增大了存储器容量,使得贮存字符外形(轮廓线)格式的方法变得很流行。
这种外形系统在数据压缩上比位映象系统更先进。即使是这种外形系统也不可避免地需要增大的存储器容易以满足当前大量字符和多种字体的需要。
如图1A所示,汉字“森”被分成三个部分字模或元素(element)1,2和3,每个元素包含一种字模的连续轮廓。在图1B左边所示的汉字“栗”被分为两个元素1和2。进一步,图1B右边所示汉字“禁”被分为三个元素1,2和3。
从这些示意图中可看出,图1A中汉字“森”的上部元素“木”(元素1)有与图1B中汉字“栗”的下部元素“木”(元素1)相同的轮廓。图1A中汉字“森”的下部两元素“木”(元素2和3)有与图1B中汉字“禁”的上部两元素“木”(元素1和2)相同的轮廓。因此,这些汉字可共享这些元素的轮廓,也就是说,一个元素的轮廓可用于多个汉字中以减小贮存这些汉字的所需数据量。
如图2A所示,汉字“森”的元素“木”(元素1)可分为笔划1,2,3和4,例如水平笔划“一”用一笔划画出。这种实现在一字符中公用这些笔划的笔划分割系统可允许多个字符共享笔划或部分字模。笔划1可进一步分为部分1,2和3(左端,中部和左端),如图2B所示。这各实现在一字符中公用这些部分的部分分割系统可允许多个字符使用这些部分。
这种将一字符分割成多个部分并允许多个字符共享这些部分的系统公开在(例如)日本未实审专利公报昭64-75260中,这种方法需要每个字符部分(笔划)的起点位置。在字体的绝对坐标原点P取在左下角时,每个部分字模的起点位置(以下简化称为“起点”)由该部分字模起点与原点的偏移(起始向量a)表示,如图3所示。该起始向量由相对于设定为(0,0)的原点的X和Y坐标表示。对于一个字体大小为1024×1024的字符,对于每个X和Y坐标需要两字节数据,总共是4字节。
这将参考将图2A中汉字“森”和图2B中汉字“森”分割成若干笔划进行描述。如图4所示,为允许一个元素“木”的单个笔划A,B,C和D的轮廓数据被两个汉字“森”和“栗”共享,汉字“森”的单个笔划A,B,C和D的起始位置Ax1至Dx1和Ay1至Dy1需要16个字节,而汉字“栗”的单个笔划A,B,C和D的起始位置Ax2至Dx2至Dy2需要16字节。因此,起始位置数据需要总共32字节以允许元素“木”的笔划被两个汉字“森”和“栗”共享。
近来,要求高分辨率(例如,300dpi),和要求更大的字体大小以更清晰显示字符并满足多种字体的需要。例如,设定字符的字符坐标系统等于或大于256×256点,并需要多种字体和更多的字符数。因此,先有技术产生下列问题。
根据表示相对于字符坐标系统的原点位置(以下称为“原点位置”)的每部分字模的起始位置的系统,每部分字模起始位置的坐标数据总需要4字节。因此,与笔划分割系统和部分分割系统相似,随着部分字模数增多起始位置数据量增加而数据减少受到限制。在笔划分割系统和部分分割系统中起点数增加而除非部分字模共享率很高,与不将字模分为部分的系统不同,数据量将不按所需减小。
因此,本发明的首要目的是提供一种设计用于减少产生字模所需数据量的字符发生方法和装置。
本发明的另一目的是提供一种压缩用于显示组成每个字模的部分字模的起点的数据产生字模的字符发生方法和装置。
本发明的又一目的是提供一种即使在部分字模被分为更细的部分时也能压缩用于显示组成每个字模的部分字模的起点的数据并产生字模的字符发生方法和装置。
为达到上述目的,根据本发明的一个方面,提供一种用于安排构成每个构成一个字模的多个部分字模的多个基本字模在相应绝对起始位置以形成多个部分字模而产生字模的字符发生方法,该方法包括以下步骤:将部分字模原点位置数据贮存在部分字模坐标系统,该部分字模坐标系统由字符坐标系统、所述部分字模坐标系统中基本字模的起始位置数据和基本字模轮廓数据设定:读出构成所需字模的那些单个部分字模的原点位置数据和构成部分字模的那些基本字模的起始位置数据;从读出的原点位置数据和起始位置数据计算基本字模的绝对起始位置;和将由轮廓数据定义的基本字模安排在相应绝对起始位置,产生所需字模。
根据本发明的另一方面,提供一种用于安排构成每个构成一个字模的多个部分字模的多个基本字模在相应绝对起始位置以形成多个部分字模从而产生字模的装置,该装置包括用于贮存部分字模原点位置数据到部分字模坐标系统中的公共文件,该部分字模坐标系统由字符坐标系统和该部分字模坐标系统中基本字模起始位置数据设定;用于贮存基本字模轮廓数据的独立文件;和用于从所需字符的原点位置数据和公共文件中相关起始位置数据计算基本字模绝对起始位置并安排由独立文件中轮廓数据定义的基本字模到相应绝对起始位置以产生所需字符的字模的字符发生电路。
根据上述两方面,对于如一个笔划或一个部分的每个基本字模,如一个元素或一个笔划的部分字模的原点位置在字符坐标系统中被设定而不是在字符坐标系统中设定绝对起点位置,并且该基本字模由部分字模的坐标系表示。
在这种方法中,虽然部分字模的原点位置需要4字节,这是由于它是字符坐标系中的绝对位置,指示基本字模的起位置大多只需2字节。在图3所示的汉字的情况下,例如,部分字模(元素1)“木”的原点位置需要4字节,而每个组成元素1的4个笔划的起始位置需要2字节,因此4个笔划共需4字节。因此,本系统总共只需12字节,是已有技术的16字节所需数据量的3/4。对于包含大约7000字符的汉字,本发明可大大减少数据量,相应地节省存储器容量。
根据本发明的又一方面,提供一种用于安排构成每个构成一个字模的多个部分字模的多个基本字模在相应绝对起始位置以形成多个部分字模从而产生字模的字符发生方法,该方法包括以下步骤:将部分字模原点位置数据贮存在部分字模坐标系,该部分字模坐标系由字符坐标系、部分字模坐标系中部分字模的轮廓字模的起始位置数据、每个相关基本字模的轮廓字模与相关起始点的偏移数据和基本字模的轮廓数据设定;读出构成所需字模的那些单个部分字模的原点位置,构成部分字模的那些轮廓字模的起始位置数据和基本字模的偏移数据;从读出的原点位置数据,起始位置数据和偏移数据计算基本字模的绝对起始位置;和安排由轮廓数据定定义的基本字模在相应绝对起始位置,以产生所需字模。
根据本发明的更进一步方面,提供一种用于安排构成每个构成一个字模的多个部分字模的多个基本字模在相应绝对起始位置以形成多个部分字模而产生字模的字符发生装置,该装置包括用于贮存部分字模原点位置数据的公共文件,该部分字模由字符坐标系和该字符坐标系中部分字模的轮廓字模的起始位置数据设定;用于贮存相关基本字模的每个轮廓字模与相关起始点的偏移数据和基本字模的轮廓数据的独立文件;和用于从构成所需字模的那些单独部分字模的原点位置数据、构成部分字模的那些轮廓字模的起始位置数据和基本字模偏移数据计算基本字模的绝对起始位置并安排由轮廓数据定义的基本字模在相应绝对起始位置以产生所需字模的字符发生电路。
根据后两个方面,该基本字模是不同字体共有的轮廓字模,使得共有基本字模可用于如宋体和黑体不同字体的汉字中。因此可很容易产生不同字体的字符。
本发明的其它特征和优点将从以下结合附图的描述中看得更清楚。
与说明书一起并作为说明书的一部分的附图表明本发明的最佳实施例。与上述概要说明和以下对最佳实施例的详细描述一起足以阐明本发明的原理。
图1A和1B是说明如何将一个汉字分成若干元素的示意图;
图2A是说明如何将一个汉字诸元素分成若干笔划的示意图;
图2B是说明如何将一个汉字笔划分成几部分的示意图;
图3是说明对每个起点取坐标的传统方法的示意图;
图4是说明已有技术的起始位置数据的示意图;
图5A是说明本发明原理的示意图;
图5B是说明图5A情况下起始位置数据的示意图;
图6是本发明的一个实施例的方框示意图;
图7A是示出图6中公共文件的结构的示意图;
图7B是示出图7A中元素指针的结构的示意图;
图8是说明图7A公共文件中数据的示意图;
图9是说明图7A公共文件中另一数据的示意图;
图10是示出图7A公共文件的一个具体例子的示意图;
图11A是示出图6中字体文件的结构的示意图;
图11B是示出图11A中轮廓信息块的结构的示意图;
图11C是图11A中一个字体文件的示例性示意图;
图12是说明宋体汉字的字体文件的示例性示意图;
图13是说明黑体汉字的字体文件的示例性示意图;
图14是说明使用图11A字体文件的操作的示意图;
图15是根据本发明的一个实施例的字符形成程序的流程图;
图16A和16B是说明根据本发明的另一实施例的起始位置的示意图;和
图17A和17B是说明根据本实施例的数据结构的示意图。
图5A和5B是解释笔划分割法中起始位置数据的示意图。如图5A所示,汉字“森”上部元素A包含4个笔划。该元素A的原点位置由从字符坐标系的原点(0,0)到该元素坐标系的原点P的一个矢量(Px,Py)表示如图5B所示。单个笔划的起始位置a,b,c和d由从取作元素坐标系的原点(0,0)的位置P到那些笔划a,b,c和d的起始位置的矢量(ax,ay),(bx,by),(cx,cy)和(dx,dy)表示。
在元素A的原点在字符坐标系中的同时,每个笔划的坐标由小于字符坐标系的元素坐标系统限定。因此,每个笔划的坐标只需大约两个字节。因此,可减少起始位置坐标数据量。
图6是根据本发明的一个实施例的打印机控制单元的方框示意图。
在图6中,包含一个个人计算机、字处理器或相似的主机1发送打印数据到打印机控制部件10。与主机1和打印机设备(未示出)相连的打印机控制单元10准备打印数据并根据主机1的指令将该数据发送到打印机设备。
打印机控制单元10包括主机接口电路2,命令处理电路3,图形处理电路4和字符处理电路5。该主机接口电路2控制与主机1的接口。该命令处理电路3判别从主机1来的打印数据是图形数据还是字符数据。
图形处理电路4根据从命令处理电路3来的图形数据准备图形的位数据。字符处理电路5根据字符数据(字符代码,字符大小和字体名)从公共文件6和字体文件7(这两个文件在以后描述)读出所需原点位置,起始点,和字符体特有的字体数据,并准备外形格式的字符数据。
公共文件6贮存每个字符(公共原点数据,起始点数据,等等)的各种字体公用的信息。字体文件7贮存个别字体特有的字体数据。由一个外形字体发生器(MB89412,富士通公司产品)组成的位数据形成电路8将外形格式的字符数据组成字符位数据。位图存储器9是一个向或从其中写入或读出图形位数据和字符位数据的存储器,并且读出的数据输出到打印机设备(未示出)而被打印。
命令处理电路3,图形处理电路4和字符处理电路5由单个微处理器(MPU)11组成,这几个部件3,4和5表示微处理器11作为模块运行的程序。
以下详述公共文件6。一个字符包括连续的部分字模并可被分为属于一根部(radical),一个右边根部(right-hand radical)等等的元素。元素进一步分为由画笔运动确定的笔划。笔划可分为如左端部分,直线部分和右端部分的多个部分,这些部分显示画笔产生的结构特点。
随着字符被分级分割,各字符公用的部分字模的数目逐步增加,因此保证相应地减少存储器的容量。
图8和9分别显示分为若干部分的汉字“森”和“栗”。对于图8中汉字“森”和图9中汉字“栗”的元素“木”(元素1)水平笔划1分为三部分:左端A,直笔B和右端C。相似地,垂直笔划2分为上端D,直笔E和下端F三部分。向左斜笔划3分为斜笔G1和端部H两部分,而向右斜笔划4分为斜笔G2和端部I两部分。
对于元素“木”,元素原点位置P位于字符坐标系中,而单个部分的轮廓起始位置位于元素坐标系的a,b,c,d,e,f,g,h和i。在该例中,元素原点位置和部分起始位置位于字符大小1024×1024点的1/4的256×256点坐标系中,使得每个原点位置坐标和每个起始位置坐标X和Y只需1字节。
由于元素的元素原点位置是任意可选的,元素原点位置不需由字符坐标系的分解表示。因此,元素原点位置由大小是字符坐标系的1/n(在本例中是1/4)的坐标系表示。将这种较小的坐标系中表示的元素原点位置乘以n便变换成字符坐标系中绝对位置坐标。
由于元素的单个部分的起始位置也是任意是可选的,该起始位置不需由字符坐标系的分解表示。因此,那些部分起始位置由大小是字符坐标系的1/n(在本例中是1/4)的坐标系表示。将这较小坐标系中表示的部分起始位置乘以n使变换成字符坐标系中绝对位置的坐标。
如图7A所示,贮存了元素原点位置和部分起始位置的公共文件6包括头部块T1,该块包含文件长度,头部长度,字符集,字体(font)类型和字体大小;包含指针长度和字符指针的字符指针块T2;包含指针长度和元素指针的元素指针块T3和元素目录T4。
如图7B所示,元素指针块T3包括每个元素的元素原点位置(X,Y)的坐标,该坐标在与指示该元素(例如“木”)的元素指针相关的字符坐标系中表示。
如图7A所示,元素目录T4包括每个组成相关字符的元素块T5。每个元素块T5包含组成一个字符的元素的分类代码和每个指示组成一个元素的笔划的笔划块T6。每个笔划块T6包含单个笔划的分类代码和每个指示组成一个元素的笔划的笔划块T6。每个笔划块T6包含单个笔划的分类代码和每个指示组成一个笔划的部分的部分分块T7。每个部分块T6包含各个部分的分类代码和在元素坐标系中表示的这些部分的部分起始位置的坐标X和Y。
图10示出例如图8和9所示的汉字的公共文件6。相应于汉字“栗”的字符代码“B7AA”的元素指针块T3包含两个元素“西”和“木”和它们在字符坐标系中的原点坐标(X,Y)。相应于汉字“森”的字符代码“BFB9”的元素指针块T3包括三个元素“木”和它们在字符坐标系中的原点坐标(X,Y)。由每个元素指针块T3指示的元素块T5包含笔划块T6。部分块T7位于笔划块T6中。元素坐标系中单个部分的部分起始位置ax至fx和ay至fy位于每个部分块T7中。
汉字“栗”和“森”可用这种方法共享元素“木”的数据。元素“木”的原点位置P位于字符坐标系中,元素“木”的单个部分的部分起始位置ax-fx和ay-fy位于元素坐标系内。
现描述字体文件7。如图12所示,宋体汉字“森”由在该示意图中用黑点表示的公用部分起始位置a,b,c,d,e,f,g,h和i与这些部分的起始位置A1,A2,A3,A4,A5,A6,A7和A9,A8和A10的在字体大小为1024×1024点的坐标系中相对偏移量(X偏移,Y偏移)。
例如,部分A1包含部分公共起始位置a与该部分A1的起始位置的相对偏移(X偏移,Y偏移)和部分A1的轮廓数据。它与其它部分相同。
相似地,如图13所示,黑体12字“森”由字体大小为1024×1024点的坐标系中在该示意图中用黑点表示的公共部分起始位置a,b,c,d,e,f,g,h和i与这些部分的起始位置A1′,A2′,A3′,A4′,A5′,A6′,A7′和A9′,A8和A10′的相对偏移量(X偏移,Y偏移)表示。例如,部分A1′包含公共部分起始位置与该部分A1′的起始位置的相对偏移(X偏移,Y偏移)和部分A1′的轮廓数据,它与其它部分相同。
字体文件7包括头部,指针块T8,部分指针块T9和轮廓信息块T10,如图11A和14所示。如图11C所示,指针块T8指示相应于字符代码和字体名的部分指针块T9中的首地址,而部分指针块T9指示轮廓信息块T10中组成该字符的各个部分的地址和各个部分的X偏移和Y偏移。如图11B所示,轮廓信息块T10包括各个部分的轮廓数据。
图15说明根据本发明的一个实施例的字符形成处理的流程图。
首先,主机1将打印数据发送到打印机控制单元10。该打印数据确认字体,字符,字符大小和图形。
主机接口电路2将这些打印数据解码并发送已解码数据至命令处理电路3。命令处理电路3分别发送图形打印数据至图形处理电路4而发送字符打印数据至字符处理电路5。图形处理电路4将图形数据组成图形位数据并将它写入位图存储器9。
字符处理电路5通过图15所示处理形成一个字符。
(1)如以上参考图10已述相同,字符处理电路5基于字符代码的公共文件6中读出字符代码,字体名和字符大小并读出相应元素的元素原点位置数据(字符坐标系)和各部分的公共部分起始位置(元素坐标系)。
(2)之后,字符处理电路5由下式计算单个部分的框架起始位置。
框架起始位置X=元素原点位置X×4+公共部分起始位置X×4
框架起始位置Y=元素原点位置X×4+公共部分起始位置Y×4
(3)之后字符处理电路5从字体文件7中根据字符代码和字体名读出相应部分代码,偏移量和轮廓数据。
(4)之后,字符处理电路5根据框架起始位置和偏移量由下式计算各个部分的绝对起始位置。
绝对起始位置X=框架起始位置X+偏移量X
绝对起始位置Y=框架起始位置Y+偏移量Y
作为分布原点的绝对起始位置与轮廓数据一起被写入位数据形成电路8。在此时指定字符大小时,坐标根据字符大小被放大或缩小。
(5)之后字符处理电路5确定是否属于公共文件6中相关笔划块T6的一个笔划的所有部分都已完成上述处理。如果处理尚未完成,则字符处理电路5返回步骤(4)。
(6)如果一个笔划的所有部分都完成了上述处理,字符处理电路5就确定是否属于公共文件6中相关元素块T5的一个元素的所有笔划都已完成上述处理。如果该处理尚未完成,字符处理电路5返回步骤(4)。
(7)如果对一个元素所所有笔划都已完成上述处理,字符处理电路5就确定是否属于公共文件6中元素目录T4的一个字符的所有元素都已完成上述处理。如果该处理还未完成,字符处理电路5便返回步骤(4)。另一方面,如果该处理已完成,字符处理电路5终止对一个字符的形成处理。
之后,位数据形成电路8根据轮廓数据从给定的分布原点描述该轮廓,填充轮廓内部并产生一个字模。之后位形成电路8将该字模写入位图存储器9。当一页位数据被写入位图存储器9时,该页位数据被发送到打印机设备待打印。
上述情况参考图10和14所示汉字“森”加以说明。根据接收的字符代码(在本例中汉字“森”的JIS码是“BFB9”),公共文件中指针块T2确定元素指针块T3中组成汉字“森”的元素的原点位置(X,Y),和相关元素块T5中那些元素的首地址。元素的原点位置在大小为255×255的字符坐标系中表示。
元素块T5有元素代码和组成这些元素的笔划块T6。由于汉字“森”由三个元素“木”组成,对于“木”有三个元素代码和三个笔划块,并且元素根据笔划顺序组织。每个笔划块T6有笔划代码和关于组成单个笔划的若部分的数据(部分块T7)。
由于汉字“森”的第一元素“木”由4个笔划组成,第一笔划块T6有4个笔划代码(水平笔划,垂直笔划,Hidari-Harai(向左弯笔)和Migi-Harai(向右弯笔)),和每个笔划的部分块T7。这些笔划也根据笔划顺序排列。
位于每个笔划块T3中的每个部分块T4包含组成相关笔划的各部分数据和这些部分的起始位置数据。对于元素“木”的第一笔划,水平笔划包括三部分,也就是,起始部(点a),中部(点b)和尾部(点C)(例如见图12),并有它们的部分代码和起始位置(X,Y)。如上所述,起始位置的坐标表示在255×255坐标系中,这些部分按笔划方向排列。
因此,汉字“森”的部分块包含总共30个部分代码和它们的根据笔划顺序排列的起始位置。
如图14所示,在字体文件7接收到字体名和字符代码时,相关的指针块T8为组成流字“森”的字体的各部分确定部分指针块T9中部分指针的首地址。对于每个字符,部分指针块T9包含与组成该字符的部分数相同数目的部分指针和偏移量(相对偏移)X和Y。
由于汉字“森”包含30个部分,部分指针块T9有对那个字符根据笔划顺序连续排列的30个部分指针。即,第一笔划的笔划起始部的部分指针在最前边,接下来的顺序是第一笔划的笔划延伸部分的部分指针和笔划结束部分的部分指针,之后是第二笔划的起始部的部分指针等依此类推。这一顺序与公共文件6中相关部分的顺序相同。
每个部分指针确定含有相关部分轮廓数据的轮廓信息块T10中的一个位置。由一个部分指针指示的每个偏移量由与公共文件6中每部分的绝对部分起始位置的偏移量表示。例如,由部分指针1指示的偏移量就是对公共文件6中指针a的偏移量(相对偏移)。
在以这种方式读出公共文件6中的元素原点位置和公共部分起始位置和字体文件7中每种字体的偏值时,计算出各个部分的绝对部分起始位置并根据这些部分的轮廓数据将这些部分写在相应的绝对起始位置,产生相应字符。
由上述可见,采用了部分分割系统,每个元素的原点位于字符坐标系中,而各个部分的起始位置由元素坐标设定。因此,在有1024×1024点的汉字“森”的情况下,三个元素的原点坐标需要6字节(每个元素的每个原点坐标一个字节),30个部分的公共起始位置X和Y需要60字节(对每部分的每个位置X或Y,一个字节),和每种字体的30个部分的偏移值X和Y需要60字节(每部分的每个偏移值X或Y一个字节)。因此,在三种字体的情况下,部分起点数据只需66字节,大大小于传统所需的120字节(4字节×30部分)。
由于在本例中设定3部分的框架(frame)起点,对于多字体,起点数据的一个单片(single piece)就可满足需要,因此对于含有多字体字符集的装置所需的数据量可进一步减少。
以下参考图16A,16B和17说明本发明的一个改型。在该例中,如图16A所示,公共文件6包含单个元素的元素原点P,Q和R(位于字符坐标系中)的位置坐标(Px,Py),(Qx,Qy)和(Rx,Ry)。字体文件7包含单个部分的起始位置a,b,…的位置坐标(ax,ay),(bx,by),…。换句话说,各部分的框架起点数据示于图7A至14。
对于这种设计,每部分的绝对起始位置X和Y由下式表示。
绝对起始位置X=原点位置X×4+起始位置X
绝对起始位置Y=原点位置Y×4+起始位置Y
这一改型可进一步减少单字体的数据量。
本发明并不局限于上述实施例和改型,而是可按以下进行变动:
首先,虽然在上述实施例中部分字模是一个元素而基本字模是一个部分,但基本字模也可为一个笔划。部分字模也可为笔划。第二,在上述实施例中是轮廓数据的外形数据可为一个点阵字模,中心线与宽度、长度数据的一种组合,或其它类型的数据。第三,在本实施例中是位于256×256坐标系中的原点坐标可位于1024×1024坐标系中并也减少了数据量。
当前例子和实施例应看作是说明性的而非限定性的,并且本发明不局限于本文给出的细节而在不背离所附权利要求的范围和本发明的实质的情况下可以不同形式进行修改。
总之,根据本发明,对于每种例如一个笔划或一部分的基本字模,如元素或笔划的部分字模的原点位置位于字符坐标系中而不是设定绝对起始位置于字符坐标系,并且该基本字模由部分字模的坐标系表示。
因此,虽然部分字模的原点位置需要4字节,因为它是字符坐标系中的绝对位置,指示基本字模的起始位置,只需差不多两字节,实现了数据量的显著减少,上于很多字符和字体可贮存在一个装置的有限源中,在使装置紧凑的同时,可改进该装置的性能。
Claims (33)
1、一种字符发生方法,用于安排组成每个多个部分字模的多个基本字模在相应绝对起始位置以形成所述多个部分字模,多个部分字模组成一个字模,从而产生所述字模,所述方法包含以下步骤:
贮存由字符坐标系设定的部分字模坐标系中所述部分字模的原点位置数据,所述部分字模坐标系中所述基本字模的起点位置数据和所述基本字模的外形数据;
读出构成所需字模的单个部分字模的所述原点位置数据和构成所述部分字模的那些基本字模的所述起始位置数据;
从所述读出的原点位置数据和起始位置数据计算所述基本字模的绝对起始位置;和
将由所述外形数据定义的所述基本字模安排在所述相应绝对起始位置以产生所述所需字模。
2、根据权利要求1的字符发生方法,其特征在于位于大小是所述字符坐标系的1/n的坐标系中的所述部分字模的原点位置数据在所述贮存步骤中被贮存;和
所述计算步骤将所述原点位置数据乘以n并将由此产生的原点位置数据加到所述基本字模的起始位置数据以计算所述绝对起始位置。
3、根据权利要求1的字符发生方法,其特征在于所述部分字模是所述字模中连续形状的元素或分割所述元素获得的笔划,并且所述基本字模是通过分割所述笔划所获得的所述笔划或部分。
4、根据权利要求1的字符发生方法,其特征在于所述字模产生步骤根据所述基本字模相关的一个轮廓数据,即所述外形数据,从每个所述绝对起始位置进行字模描述,以形成所述相关基本字模。
5、根据权利要求2的字符发生方法,其特征在于所述部分字模是所述字模中连续外形的元素或由分割所述元素获得的笔划,并且所述基本字模是由分割所述笔划获得的所述笔划或部分。
6、根据权利要求2的字符发生方法,其特征在于所述字模产生步骤根据所述基本字模相关的一个的轮廓数据,即所述外形数据,从每个所述绝对起始位置进行字模描述,以形成所述相关基本字模。
7、根据权利要求3的字符发生方法,其特征在于所述字模产生步骤根据所述基本字模相关的一个的轮廓数据,即所述外形数据,从每个所述绝对起始位置进行字模描述,以形成所述相关基本字模。
8、一种字符发生方法,用于安排组成每个多个部分字模的多个基本字模在相应绝对起始位置以形成所述多个部分字模,多个部分字模组成一个字模,从而产生所述字模,所述方法包含以下步骤:
贮存由字符坐示系设定的部分字模坐标系中所述部分字模的原点位置数据,所述部分字模坐标系中所述部分字模的框架字模的起始位置数据,相关基本字模的每个所述框架字模与相关起始点的偏移数据和所述基本字模的形状数据;
读出组成一个所需字模的那些单个部分字模的所述原点位置数据,组成所述部分字模的那些框架字模的所述起始位置数据和所述基本字模的所述偏移数据;
从所述读出原点位置数据,起始位置数据和偏移数据计算所述基本字模的所述绝对起始位置;和
安排由所述形状数据定义的所述基本字模在所述相应绝对起始位置以产生所述所需字模。
9、根据权利要求8的字符发生方法,其特征在于位于大小是所述字符坐标系的1/n的坐标系中的所述部分字模的原点位置数据在所述同存步骤中被贮存;和
所述计算步骤将被n相乘的所述原点位置数据、所述框架字模的所述起始位置数据和所述偏移数据相加在一起以计算所述绝对起始位置。
10、根据权利要求8的字符发生方法,其特征在于所述部分字模的原点位置数据位于大小是所述字符坐标系的1/n的坐标系中,并且所述框架字模的起始位置数据位于大小是所述字符坐标系的1/n的坐标系中,所述原点位置数据和起点位置数据在所述贮存步骤被贮存;和
所述计算步骤将被n相乘的所述原点位置数据、被n相乘的所述框架字模的所述起始位置数据和所述偏移数据相加以计算所述绝对起始位置。
11、根据权利要求8的字符发生方法,其特征在于所述部分字模是所述字模中连续形状的元素或分割所述元素获得的笔划,并且所述基本字模是通过分割所述笔划所获得的所述笔划或部分。
12、根据权利要求8的字符发生方法,其特征在于所述字模产生步骤根据所述基本字模相关的一个的轮廓数据,即所述外形数据,从每个所述绝对起始位置进行字模描述,以形成所述相关基本字模。
13、根据权利要求9的字符发生方法,其特征在于所述部分字模是所述字模中连续形状的元素或分割所述元素获得的笔划,并且所述基本字模是通过分割所述笔划所获得的所述笔划或部分。
14、根据权利要求9的字符发生方法,其特征在于所述字模产生步骤根据所述基本字模相关的一个的轮廓数据,即所述外形数据,从每个所述绝对起始位置进行字模描述,以形成所述相关基本字模。
15、根据权利要求10的字符发生方法,其特征在于所述部分字模是所述字模中连续形状的元素或分割所述元素获得的笔划,并且所述基本字模是通过分割所述笔划所获得的所述笔划或部分。
16、根据权利要求10的字符发生方法,其特征在于所述字模产生步骤根据所述基本字模相关的一个的轮廓数据,即所述外形数据,从每个所述绝对起始位置进行字模描述,以形成所述相关基本字模。
17、根据权利要求13的字符发生方法,其特征在于所述字模产生步骤根据所述基本字模相关的一个的轮廓数据,即所述外形数据,从每个所述绝对起始位置进行字模描述,以形成所述相关基本字模。
18、一种字符发生装置,用于安排组成每个多个部分字模的多个基本字模在相应绝对起始位置以形成所述多个部分字模,多个部分字模组成一个字模,从而产生所述的字模,所述装置包括:
用于贮存由字符坐标系设定的部分字模坐标系中所述部分字模的原点位置数据和所述部分字模坐标中所述基本字模的起始位置数据的公共文件;
用于贮存所述基本字模的外形数据的独立文件;和
字符发生电路,用于根据所述公共文件中所需字符的所述原点位置数据和相关起始位置数据计算所述基本字模的所述绝对起始位置,并将由所述独立文件中所述外形数据定义的所述基本字模安排在所述相应绝对起始位置以产生所述所需字符的所述字模。
19、根据权利要求18的字符产生装置,其特征在于所述公共文件贮存位于大小是所述字符坐标系的1/n的坐标系中的所述部分字模的原点位置数据;和
所述字符发生电路将所述原点位置数据乘以n,并将由此产生的原点位置数据加到所述基本字模的所述起始位置数据以计算所述绝对起始位置。
20、根据权利要求18的字符发生方法,其特征在于所述公共文件贮存作为所述部分字模的所述字模中连续形状的元素或由分割所述元素获得的笔划,并贮存作为所述基本字模的由分割所述笔划获得的所述笔划或部分笔划。
21、根据权利要求18的字符发生方法,其特征在于所述独立文件中所述外形数据是轮廓数据;和
所述字符发生电路根据相关所述基本字模之一的轮廓数据即所述外形数据从每个所述绝对起始位置进行字模描述以形成所述相关基本字模。
22、根据权利要求19的字符发生方法,其特征在于所述公共文件贮存作为所述部分字模的所述字模中连续形状的元素或由分割所述元素获得的笔划,并贮存作为所述基本字模的由分割所述笔划获得的所述笔划或部分笔划。
23、根据权利要求19的字符发生方法,其特征在于所述独立文件中所述外形数据是轮廓数据;和
所述字符发生电路根据相关所述基本字模之一的轮廓数据即所述外形数据从每个所述绝对起始位置进行字模描述以形成所述相关基本字模。
24、根据权利要求20的字符发生方法,其特征在于所述独立文件中所述外形数据是轮廓数据;和
所述字符发生电路根据相关所述基本字模之一的轮廓数据即所述外形数据从每个所述绝对起始位置进行字模描述以形成所述相关基本字模。
25、一种字符发生装置,用于安排组成每个多个部分字模的多个基本字模在相应绝对起始位置以形成所述多个部分字模,多个部分字模组成一个字模,从而产生所述字模,所述装置包括:
用于贮存由字符坐标系设定的部分字模坐标系中所述部分字模的原点位置数据和所述部分字模坐标系中所述部分字模的框架字模的起始位置数据的公共文件;
用于贮存相关基本字模的每个所述框架字模与相关起始点的偏移数据和所述基本字模的外形数据的独立文件;和
字符发生电路,用于由组成一个所需字模的那些单个部分字模的所述原点位置数据,组成所述部分字模的那些框架字模的所述起始位置数据和所述基本字模的所述偏移数据计算所述基本字模的所述绝对起始位置,并将由所述外形数据定义的所述基本字模安排将在相应绝对起始位置以产生所述所需字模。
26、根据权利要求25的字符发生装置,其特征在于所述公共文件贮存位于大小是所述字符坐标系的1/n的坐标系中的所述部分字模的原点位置数据;和
所述字符发生电路将被n相乘的所述原点位置数据、所述框架字模的所述起始位置数据和所述偏移数据相加以计算所述绝对起始位置。
27、根据权利要求25的字符发生方法,其特征在于所述公共文件贮存位于大小是所述字符坐标系的1/n的坐标系中的所述部分字模的原点位置数据和位于大小是所述字符坐标系的1/n的坐标系中所述框架字模的起始位置数据;和
所述字符发生电路将乘以n的所述原点位置数据,乘以n的所述框架字模的所述起始位置数据和所述偏移数据相加,以计算所述绝对起始位置。
28、根据权利要求25的字符发生方法,其特征在于所述公共文件贮存作为所述部分字模的所述字模中连续形状的元素或由分割所述元素获得的笔划,并贮存作为所述基本字模的由分割所述笔划获得的所述笔划或部分笔划。
29、根据权利要求25的字符发生方法,其特征在于所述独立文件中所述外形数据是轮廓数据;和
所述字符发生电路根据相关所述基本字模之一的轮廓数据即所述外形数据从每个所述绝对起始位置进行字模描述以形成所述相关基本字模。
30、根据权利要求26的字符发生方法,其特征在于所述公共文件贮存作为所述部分字模的所述字模中连续形状的元素或由分割所述元素获得的笔划,并贮存作为所述基本字模的由分割所述笔划获得的所述笔划或部分笔划。
31、根据权利要求26的字符发生方法,其特征在于所述独立文件中所述外形数据是轮廓数据;和
所述字符发生电路根据相关所述基本字模之一的轮廓数据即所述外形数据从每个所述绝对起始位置进行字模描述以形成所述相关基本字模。
32、根据权利要求27的字符发生方法,其特征在于所述公共文件贮存作为所述部分字模的所述字模中连续形状的元素或由分割所述元素获得的笔划,并贮存作为所述基本字模的由分割所述笔划获得的所述笔划或部分笔划。
33、根据权利要求27的字符发生方法,其特征在于所述独立文件中所述外形数据是轮廓数据;和
所述字符发生电路根据相关所述基本字模之一的轮廓数据即所述外形数据从每个所述绝对起始位置进行字模描述以形成所述相关基本字模。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP298360/92 | 1992-11-09 | ||
JP29836092A JP3145509B2 (ja) | 1992-11-09 | 1992-11-09 | 文字生成方法及びその装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1088319A true CN1088319A (zh) | 1994-06-22 |
CN1054929C CN1054929C (zh) | 2000-07-26 |
Family
ID=17858685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN93114343A Expired - Fee Related CN1054929C (zh) | 1992-11-09 | 1993-11-09 | 产生字符的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5940084A (zh) |
JP (1) | JP3145509B2 (zh) |
KR (1) | KR970004237B1 (zh) |
CN (1) | CN1054929C (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101263449B (zh) * | 2005-09-15 | 2012-06-06 | 微软公司 | 定位屏幕元素 |
CN111949156A (zh) * | 2020-07-10 | 2020-11-17 | 广州视源电子科技股份有限公司 | 书写装置的汉字书写测试方法及系统、书写装置 |
CN113900746A (zh) * | 2021-09-06 | 2022-01-07 | 广东瑞德智能科技股份有限公司 | 灵动显示方法及家用电器 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3437037B2 (ja) * | 1996-08-23 | 2003-08-18 | シャープ株式会社 | 文字パターン生成装置 |
US6288726B1 (en) * | 1997-06-27 | 2001-09-11 | Microsoft Corporation | Method for rendering glyphs using a layout services library |
JP3276897B2 (ja) * | 1997-09-09 | 2002-04-22 | 三洋電機株式会社 | キャラクタ表示制御回路 |
JPH11149284A (ja) * | 1997-11-18 | 1999-06-02 | Sharp Corp | 文字パターン生成装置及び文字パターン生成装置制御プログラムを記憶した媒体 |
US7053898B2 (en) * | 1998-04-16 | 2006-05-30 | Yugen Kaishs Origin | Picture drawing system for use with a computer and a picture drawing method |
AUPP557998A0 (en) * | 1998-08-28 | 1998-09-24 | Canon Kabushiki Kaisha | Method and apparatus for orientating a set of finite N-dimensional space curves |
US7184046B1 (en) * | 1999-09-28 | 2007-02-27 | Monotype Imaging Inc. | Method and apparatus for font storage reduction |
TW575841B (en) * | 2002-08-27 | 2004-02-11 | Ind Tech Res Inst | Descriptive method of characters for displaying the thickness of strokes thereof |
US8121338B2 (en) * | 2004-07-07 | 2012-02-21 | Directsmile Gmbh | Process for generating images with realistic text insertion |
US20060238539A1 (en) * | 2005-04-20 | 2006-10-26 | Opstad David G | Method and apparatus for glyph hinting by analysis of similar elements |
JPWO2012001781A1 (ja) * | 2010-06-30 | 2013-08-22 | 富士通株式会社 | 描画装置および描画プログラム |
US9082339B2 (en) * | 2011-11-04 | 2015-07-14 | Facebook, Inc. | Rendering texts on electronic devices |
WO2015141260A1 (ja) * | 2014-03-17 | 2015-09-24 | 株式会社河合楽器製作所 | 手書き音楽記号認識装置およびプログラム |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6165290A (ja) * | 1984-09-07 | 1986-04-03 | 株式会社日立製作所 | ベクトル文字フオントの作成装置 |
CN85104927A (zh) * | 1985-06-28 | 1987-01-07 | 电脑图像公司 | 产生比例合适的字形数据的方法 |
US4897638A (en) * | 1987-02-27 | 1990-01-30 | Hitachi, Ltd. | Method for generating character patterns with controlled size and thickness |
JPS63271290A (ja) * | 1987-04-30 | 1988-11-09 | 株式会社日立製作所 | 文字パタ−ン生成方式 |
JPS6475260A (en) * | 1987-09-18 | 1989-03-20 | Seiko Epson Corp | Character generation system |
JPH01257995A (ja) * | 1988-04-08 | 1989-10-16 | Nippon Telegr & Teleph Corp <Ntt> | 文字図形生成装置 |
US5109352A (en) * | 1988-08-09 | 1992-04-28 | Dell Robert B O | System for encoding a collection of ideographic characters |
JP3021547B2 (ja) * | 1989-09-29 | 2000-03-15 | セイコーエプソン株式会社 | 文字パターン発生方法 |
US5301267A (en) * | 1991-09-27 | 1994-04-05 | Adobe Systems Incorporated | Intelligent font rendering co-processor |
-
1992
- 1992-11-09 JP JP29836092A patent/JP3145509B2/ja not_active Expired - Fee Related
-
1993
- 1993-11-04 US US08/147,815 patent/US5940084A/en not_active Expired - Fee Related
- 1993-11-09 KR KR1019930023661A patent/KR970004237B1/ko not_active IP Right Cessation
- 1993-11-09 CN CN93114343A patent/CN1054929C/zh not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101263449B (zh) * | 2005-09-15 | 2012-06-06 | 微软公司 | 定位屏幕元素 |
CN111949156A (zh) * | 2020-07-10 | 2020-11-17 | 广州视源电子科技股份有限公司 | 书写装置的汉字书写测试方法及系统、书写装置 |
CN111949156B (zh) * | 2020-07-10 | 2024-03-29 | 广州视源电子科技股份有限公司 | 书写装置的汉字书写测试方法及系统、书写装置 |
CN113900746A (zh) * | 2021-09-06 | 2022-01-07 | 广东瑞德智能科技股份有限公司 | 灵动显示方法及家用电器 |
Also Published As
Publication number | Publication date |
---|---|
KR970004237B1 (ko) | 1997-03-26 |
CN1054929C (zh) | 2000-07-26 |
JPH06149212A (ja) | 1994-05-27 |
US5940084A (en) | 1999-08-17 |
JP3145509B2 (ja) | 2001-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1054929C (zh) | 产生字符的方法和装置 | |
CN1129061C (zh) | 一种打印设备和打印方法 | |
CN1295671C (zh) | 产生手写字体的设备、方法 | |
CN1103970C (zh) | 文字图形发生装置 | |
CN1221910C (zh) | 字符字体产生的方法和设备 | |
CN1075806A (zh) | 文字生成方法及其装置 | |
CN1077757C (zh) | 字符发生方法及装置 | |
CN1109294C (zh) | 位映像字符转换器 | |
CN1071976C (zh) | 字符生成方法及装置 | |
CN1107903C (zh) | 打印机和字符处理方法 | |
CN1632858A (zh) | 字符图形产生器、字符产生方法及其存储媒质 | |
Coueignoux | Character generation by computer | |
CN1157979A (zh) | 字符发生装置 | |
CN1094608C (zh) | 字形产生设备 | |
CN1167302A (zh) | 可生成字符组成要素带连笔的字模的字模生成装置 | |
CN1133117C (zh) | 字符图象处理装置和方法 | |
CN1181556A (zh) | 字符发生方法及设备 | |
CN1084010C (zh) | 文字生成装置 | |
CN1107274C (zh) | 文字生成装置 | |
CN1097815C (zh) | 字符成形设备 | |
CN1147823C (zh) | 数字化字体轮廓的三角化向量趋近方法 | |
CN1104790A (zh) | 利用样条函数曲线放大文字的生成方式 | |
JP3347756B2 (ja) | 文字生成方法及びその装置 | |
CN1060873C (zh) | 信息处理方法和装置 | |
CN1094616C (zh) | 将具有文本字符的文件编码及传送的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |