CN1103032A - 字符生成方法及装置 - Google Patents

字符生成方法及装置 Download PDF

Info

Publication number
CN1103032A
CN1103032A CN94108137A CN94108137A CN1103032A CN 1103032 A CN1103032 A CN 1103032A CN 94108137 A CN94108137 A CN 94108137A CN 94108137 A CN94108137 A CN 94108137A CN 1103032 A CN1103032 A CN 1103032A
Authority
CN
China
Prior art keywords
coordinate
character
stroke
factor
shearing
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
Application number
CN94108137A
Other languages
English (en)
Other versions
CN1071976C (zh
Inventor
吉田年邦
大伴武都美
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of CN1103032A publication Critical patent/CN1103032A/zh
Application granted granted Critical
Publication of CN1071976C publication Critical patent/CN1071976C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/485Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by the process of building-up characters or image elements applicable to two or more kinds of printing or marking processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/004Generic data transformation
    • G06K2215/0042Rasterisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/004Generic data transformation
    • G06K2215/0042Rasterisation
    • G06K2215/0045Converting outline to bitmap

Abstract

所公开的是一种由轮廓数据产生一个指定字符 大小的位映象图象的字符生成方法和装置。该方法 包括了下述步骤:当转换比例因子小于预定比例因子 时,计算目标笔画的剪切因子;基于该剪切因子,沿由 目标笔画的类型确定的坐标轴,对目标笔画上的各个 点的坐标实施剪切补偿;将通过剪切补偿获得的轮廓 坐标数据转换成用于指定大小的物理坐标,该指定大 小是基于该转换比例因子的;和由转换后的物理坐标 产生指定字符大小的位映象图象。

Description

本发明涉及将一种用逻辑坐标系表示的轮廓字符展开成用整数值表示的物理坐标的一种字符生成方法及装置。
打印机、显示设备或其它类似设备都要求在打印或显示字符时要产生字形。在字形产生时,当前,即使是同一个字符,也要求提供不同大小的字符。因此,如果对于同一个字符,不同大小的字符都要提供,存储容量就会增加,尤其对于汉字字符或类似的有许多种字符的字符系统。
作为对这个问题的解决方法,提出了一种轮廓字体系统。根据该系统,提供了字形数据,其字形轮廓线是通过一种逻辑坐标系用实数表示的;这种字形数据被转换到一个指定字符大小的坐标系中用于将字符展开成用整数值表示的位映象图象。
它要求即使经过放大或缩小后,字符能以高保真度复原其原始设计。
图13A、13B、14A和14B是先有技术的说明图。
根据惯例,在将用实数表示的逻辑坐标数据比如一幅图或一个轮廓字形展开成用整数值表示的位映象图象时,字符数据的小数部分被舍入了,从而使该字符数据用打印机或显示器的象素单位表示。为了用最接近的象素表示坐标数据,通常进行舍入将5或以上的小数当作一个整数。
下面将以图13A和13B用轮廓形式表示的明朝汉字字符“門”和“七”为参考解释这种情况。组成汉字“門”和“七”的各个轮廓点存在类似1000×1000的整数逻辑坐标中。在逻辑坐标上的字符轮廓数据被转换成必要的字符大小,具有包括小数点的坐标值。如果所有的点被舍入成物理坐标表示的坐标值,则所有的点将被舍入到最接近的整数。
当图13A和13B显示的那些汉字的轮廓数据被转换成例如15×24点的字符大小时,则转换结果的汉字分别如图14A和14B所示。
根据先有技术,如果字符点的规模越小,则字符的质量就越低,从而使得到的字符的外观比较粗糙。造成这种情况的根源是舍入误差,在将一个轮廓线是用一个方程表示的字符图象转而用一个整数坐标系或物理坐标表示时,就会出现舍入误差。尤其是在一个斜笔划或类似笔划中将会出现由垂直线和水平线构成的阶梯,这使得字符的显示质量恶化了。例如在图14A中的汉字“門”在右侧和左侧的垂直笔划中均有阶梯出现。同样地,图14B的汉字“七”在顶部和底部的水平笔划中出现了阶梯。
因此,提供一种字符生成方法和装置,使得即使字符转换成一个小的点阵规模时,也能使得在字符位映象图象的笔划中不会形成阶梯,是本发明的一个目的。
为达到上述目的,根据本发明的一个方面,提供了一种以字符轮廓数据产生一个指定字符大小的位映象图象的字符生成方法和装置,该轮廓数据是通过用逻辑坐标表示一个字符的轮廓线而获得的。本方法包括下列步骤:
当对于指定字符大小的一个转换比例因子小于一个预定的比例因子时,从构成字符的笔划中,根据预定的两点的坐标计算出一个目标笔划的一个剪切因子用于剪切补偿;
基于该剪切因子,根据目标笔划的类型,沿着一个坐标轴,对该目标笔画的各个点实施剪切补偿;
将经过剪切补偿所得到的轮廓坐标数据转换成用整数表示的物理坐标,该物理坐标适应于基于转换比例因子指定的字符大小;并且,
从转换后的物理坐标产生指定字符大小的位映象图象。
根据本发明的另外一方面,提供了一种字符生成装置,用于从在逻辑坐标表示一个字符的轮廓线所得到的轮廓数据产生一个指定字符大小的位映象图象,该装置包括:
一个字体存贮器,用于贮存轮廓数据;
一个字符生成电路,其作用是:当对于指定的字符大小的转换比例因子小于预定的比例因子时,从目标笔划的两个预定点的坐标中,计算出用于从字体存储器中读出并构成该字符的笔划中的一个目标笔划的剪切补偿的剪切因子,用于剪切补偿;根据剪切因子沿着根据目标笔划的类型的一个坐标轴对目标笔划的各个点的坐标进行剪切补偿;并根据该转换比例因子,将通过剪切补偿所获得的轮廓坐标数据转换成指定大小的、用整数表示的物理坐标;
一个绘图线路,用于将转换后的物理坐标生成一个指定字符大小的位映象图象。
对于重现一个具有一定数目或较少点的斜笔画,有一种限制。在通常情况下,一个斜笔划要经过视错觉补偿,而本发明的目标是通过产生一个小规模字符的位映象图象提高其可读性,没有进行视错觉补偿。在本发明中,在生成一个具有预定数目或较少数目点的字符时,一个斜笔划的垂直或水平厚度没有改变,通过本发明的剪切形变该笔画就变成垂直或水平的。更具体点,一个剪切因子是根据组成字符的笔划上预定两点的坐标计算出来的,根据该剪切因子通过剪切补偿,并计算出每一笔划上每一个点沿根据笔划的类型的坐标轴上的坐标,由此产生了一个无阶梯的直笔划。
通过下面所提供的描述及其附图,本发明的其它特色和优点将显而易见。
这里所包含的并构成本说明书的一部分的附图,图示说明了本发明的当前较佳实施例。并连同上面所提供的概括性说明以及下面将要给出的较佳实施例的细节描述,用于解释本发明的原理。
图1是本发明的原理图;
图2是本发明一个实施例的方框图;
图3是图2中基本部分的一个方框图;
图4A和4B根据本实施例显示了一个笔划与其原点之间的关系;
图5A和5B根据本实施例显示了一个笔划与一条参考线之间的关系;
图6A和6B根据本实施例解释了一个补偿操作;
图7A和7B是根据该实施进行了补偿后的一个笔划的说明图;
图8A和8B是根据该实施例进行了补偿后的一个字形的说明图;
图9是根据本发明的一种改型的一个字体存贮器结构图;
图10A和10B显示了根据本改型一个笔划与其各部件之间的关系;
图11是本改型的一个流程图;
图12解释根据本改型的补偿操作;
图13A和13B是传统的轮廓字体的说明图;
图14A和14B是先有技术的说明图;
图1图示了本发明原理。
本发明处理类似图1所显示的斜笔划。该笔划的剪切因子是根据该笔画的起始原点a和终结原点b计算出来的。接着,根据这个剪切因子,对各个轮廓点a、b、c和d进行剪切补偿产生补偿后的点a′、b′、c′和d′。很显然一个斜笔划可以被补偿成一个直笔划。
图2是显示了本发明一个实施例的方框图,图3是图2中基本部分的方框图,图4A和4B显示了根据本发明笔划与其原点之间的关系,图5A和5B显示了根据本发明笔划与参考线之间的关系,图6A和6B解释了根据本发明的补偿操作,图7A和7B是根据本发明补偿后的笔划的说明图,图8A和8B是根据本发明补偿后的字形的说明图。参考图2,接收电路1从较高级设备(计算机或类似设备)接收打印命令和打印数据。命令分析块2分析接收线路1所接收到的打印命令等的意义等,将接收到的数据分成字符和图形。
字符生成块3从命令分析块2接收字符编码和字符,以字体存贮器4中读取字符数据,将相关字符展开成位映象图象。这个字符展开块3稍后将参考图3给出细节描述。字体存贮器4以轮廓形式存贮字符,稍后也将参考图3给出细节描述。
CPU(字符展开电路5)执行命令分析块2和字符展开块3的操作。也就是说,命令分析块2和字符展开块3是CPU5所运行程序的模块表示。
绘图线路6将字符展开成位映象图象,相互叠加之前已展开成位映象图象的字符和图形,并将结果图象写入位映象存贮器7中。绘图电路6是由已知的绘图大规模集成电路(LSI)组成。
在位映象存贮器7中,字符和图形的位映象图象是由上面提到的绘图电路6写入的。一个类似电子照相印刷机的页式打印机和打印装置8在纸片上打印出位映象存贮器7中的数据。
下面将描述这个实施例的操作。
命令分析块2分析由接收电路1接到的打印命令和打印数据的意义,将它们分成字符和图形。绘图线路6将图形和图象展开成位映象图象。字符生成块3,使用存贮在字体存贮器4中的轮廓字体数据,根据指定的转换比例因子将字符展开成位映象图象。绘图线路6互相叠加先前已被展开成位映象图象的字符和图形,将结果图象写入位映象存贮器7中。在位映象存贮器7中的数据将由打印装置8打印到纸片上。
字符展开块3的细节将参考图3逐块给出。示意块30在与示意处理前的字符编码相对应的从字体存贮器中读出的轮廓数据(轮廓坐标值)上进行剪切操作。放大/缩小电路31实施放大/缩小操作以使被剪切数据具有指定的字符大小。
在示意块30中的剪切极限比较子块S1将字体存贮器4中的目标字体的剪切极限(变换比例因子)与指定的变换比例因子进行比较。当用于展开的转换比例因子等于或小于剪切极限时,子块S1指示对于目标字符的剪切补偿的计算。
笔划类型比较子块S2将在字体存贮器4中该字符每一笔划的类型与要经过剪切补偿的预定笔划(在本例中指垂直笔划和水平笔划)类型进行比较,以搜索目标笔划。
笔划原点读取子块S3从字体存贮器4中读取目标笔划的预定原点(起始原点和终结原点)。
剪切因子计算子块S4根据所读的笔划原点计算出剪切因子。坐标值剪切计算子块S5根据该剪切因子对于该笔划上的每一坐标值实施剪切计算。
字体存贮器4包括了一个标题块40,在标题块40中存贮了一个字符集的类型(明朝、哥德等)和公共数据,诸如制备日期。剪切极限(转换比例因子)作为每一字符集的控制数据存在标题块40中。在字体存贮器4中与每一字符编码相对应的位置存取的是笔划数据块41,每一笔划数据块存放有组成一个字符的每一笔划的类型,该笔划的起始原点和终结原点坐标,该笔划的每个轮廓点的坐标。
字符展开块3由上面所提及的一个处理器组成,块30,31和S1至S5都是基于软件的功能块。
下面将参考图4A的垂直笔划和图4B的水平笔划作为例子描述本实施例的操作。垂直笔划由轮廓点a、b、c和d构成。这些单个轮廓点的逻辑坐标(X,Y)存贮在字体存贮器4中的有关笔划数据块41中。该笔划的原点(起始和终结原点)存贮在该笔划的数据块41中。在该图例中,由于该笔划的原点在点a和b上,它们的坐标(X1,Y1)和(X2,Y2)存贮在块41中。
同样地,该水平笔划由轮廓点a、b、c、d和e构成。这些单个轮廓点的逻辑坐标贮存在字体存贮器4中有关的笔划数据块41中。该笔划的原点(起始和终结原点)存在该笔划的数据块41中。在该图例中,由于该笔划的原点在点a和b上,它们的坐标(X1,Y1)和(X2,Y2)存在该块41中。
现在将参照图4A至7B讨论上述结构的操作。当向字符展开块3提供待展开字符的字符编码时,该块3将在字体存贮器4中以标题块40中读出相应字体的剪切极限(转换比例因子)。由于剪切极限随字体而不同,因此将读出与指定字模相应的剪切极限。接着,在剪切极限比较过程S1中,字符展开块3将被读出的剪切极限与用于字符展开的转换比例因子进行比较。
当确定用于展开的转换比例因子小于所读出的剪切极限时,字符展开块3就进行剪切操作。而在另一方面,当确定用于展开的转换比例因子不小于所读出的剪切极限时,字符展开块3将不对该字符进行剪切操作。
当确定要进行剪切操作时,字符展开块3就在字体存贮器4中搜索与该字符编码相对应的笔划数据块,从而在笔划类型比较过程S2读出构成目标字符的每一笔划的类型。接着,字符展开块3将所读出的笔划类型与要经过剪切的预定为笔划的类型(在本例中指垂直笔划和水平笔划)进行比较,找出相匹配的笔划。如果无相匹配的笔划,将不实施剪切操作。
当存在相匹配的笔划时,字符展开块3就在笔划原点读出过程S3中从字体存贮器4中读出目标字符匹配笔划的原点数据。在这种情况下,读出起始原点a的坐标(X1,Y1)和终结原点b的坐标(X2,Y2)。
接着,字符展开块3就在剪切因子计算过程S4中根据下面的公式计算在X轴方向上的剪切因子d1和Y轴方向上的剪切因子d2
d1=-(X2-X1)/(Y2-Y1)(1)
d2=-(Y2-Y1)/(X2-X1)(2)
计算剪切因子d1和d2之后,字符展开块3对各个坐标值执行坐标值剪切过程S5。这种剪切的每一条参考线是一条连接各原点的线,如图5A和5B所示。剪切过程将这条剪切参考线修正为一条直线,如图6A和6B所示。因此,剪切操作仅沿着由该笔划类型所确定的剪切方向进行。
对于在图4A、5A和6A例中所给的垂直笔划,将进行X方向上的剪切而使该垂直笔划变直。对于图4B、5B和6B例中所给的水平笔划,将进行Y方向上的剪切而使该水平笔划变直。下面给出用于剪切计算的公式。
在X方向上剪切
X=X+d1·Y(3)
Y=Y(4)
在Y方向上剪切
X=X(5)
Y=d2·X+Y(6)
因此,字符展开块3根据相应的字符编码在字体存贮器4中从笔划数据块41中读出每一个匹配了的笔划的轮廓数据,然后基于上面给出的剪切公式进行剪切计算。
例如,对于在图4A中的垂直笔划,经过剪切补偿后,a′、b′、c′和d′的坐标(X1至X4,Y1至Y4)就分别如下所示,其图示结果见图7A。
X1=X1+d1·Y1
Y1=Y1
X2=X2+d1·Y2
Y2=Y2
X3=X3+d1·Y3
Y3=Y3
X4=X4+d1·Y4
Y4=Y4
换句话说,由于对于一个垂直笔划其剪切是在X方向实施,因此剪切计算仅对X坐标进行,而Y坐标未变动。
类似地,对于图4B中的水平笔划,经过剪切补偿后,a′、b′、c′、d′和e′的坐标(X1至X5,Y1至Y5)就分别如下所示,其图示结果见图7B。
X1=X1
Y1=Y1+d2·X1
X2=X2
Y2=Y2+d2·X2
X3=X3
Y3=Y3+d2·X3
X4=X4
Y4=Y4+d2·X4
X5=X5
Y5=Y5+d2·X5
换句话就,由于对于一个水平笔划,其剪切操作在Y方向上实施,因此,仅对Y坐标进行剪切计算,而X坐标未有任何变化。经过这个运算,前面提到的笔划的轮廓数据就如图7A和7B所示。
字符展开块3使得放大/缩小电路31将该字符经过补偿的笔划的轮廓坐标数据和未经过补偿的轮廓坐标数据乘以指定的变换比例因子,从而获得指定点大小的轮廓坐标,然后再进行舍入操作。被转换了的坐标数据送入绘图电路6,以填充该笔划的轮廓线的内部。其结果,是将类似图4A和4B所示的轮廓展开成图8A、8B所示的字形。
由于在上面的方式中,一个较小点大小的字符的斜笔划经过剪切补偿后就变成了一个垂直或水平笔划,因此在最后生成的字形中就不会出现阶梯,从而具有好的外观。
图9是根据本发明的一种改型的字体存储器的结构图。图10A和10B显示了根据本改型的一个笔划与其部件之间的关系。图11是本改型的一个流程图。图12A和12B解释了根据本改型的补偿操作。
下面将参考字符的分级结构给出有关描述。所谓字符的分级结构是指将字符分解成组成该字符的字元,而每一字元又分解成组成该字元的笔划,每一笔划又分解成与该笔划的笔划开始部分、笔划结束部分等相对应的部件。
更进一步,在描述中还将解释到:为了减少数据的总量,在图9中的字体存贮器4由一个结构数据文件4a和一个轮廓数据文件4b组成,结构数据文件4a用于存放字符的分级结构和特征数据,轮廓数据文件4b用于存放被分解成笔划或部件的各字符的轮廓数据。
正如在图9中所示,结构数据文件4a包括了以下几个部分:一个标题块40,该块中含有一个字符集的类型(明朝、哥德等)和公共数据,比如制备日期、用于从字符编码中搜寻目标数据的字符指针;一个含有部件块42地址的笔划块41和存放每个部件之类的原点的部件块42。在轮廓数据文件4b中存放着每一个部件的坐标数据。
前面提到的剪切极限存在标题块40中。部件的坐标是作为距该部件原点(绝对坐标)的相对坐标存储的。
这样的存储结构使得结构数据文件4a将每个单独部件的原点坐标作为公共的字体数据,而不是逐种字体的。因此,轮廓数据文件4b的轮廓数据块只需存储距每一部件的原点的相对位置的坐标,该坐标随字体不同而不同,由此就不需给出该逻辑坐标系统的绝对坐标。因此每一部件的原点可以为许多字体所共享,相应地减少了存储器容量。再者,在轮廓数据块43中的各个部件可以为许多字体和字符所共享,从而保证进一步减少了存储器容量。
下面将参考图10A的明朝汉字“七”中的水平笔划“一”给出有关描述。正如图10A所示,该水平笔划有笔划起始部分A1、直线部分A2和笔划终止部分A3三部分,它们按字符的笔顺排列。相应地,该水平笔划“一”的三个部件的公共绝对坐标(原点)存在结构数据文件4a的部件块中。每一部件的轮廓点的坐标以距其原点的相对位置的坐标形式存放在轮廓数据文件4b中,如图10B所示。
下面将根据图11的流程图参考图12A和12B描述有关操作。
(S1)CPU5(在下文中称为“处理器”)获取需进行展开的字符数据。该字符数据包括一个字符编码和一个剪切因子。处理器5查询结构数据文件4a的标题块40获取用于所讨论的字符编码字体的剪切极限。
(S2)接着,处理器5将所读出的剪切极限与用于展开的转换比例因子进行比较。一旦确定用于展开的转换比例因子小于所读出的剪切极限,处理器5就执行一个剪切操作。另一方面,若确定用于展开的转换比例因子不小于所读出的剪切极限,处理器5就不对该字符进行剪切操作,并终止该过程。
(S3)当确定需进行剪切操作时,处理器5就在字体存贮器4搜索与该字符编码相对应的笔划数据块41,读出组成目标字符的每一个笔划的类型。接着,处理器5将读出的笔划类型与需进行剪切的预定笔划的类型(在该例子中指垂直笔划和水平笔划)进行对比,寻找相匹配的笔划。若没有相匹配的笔划,将不施行任何剪切操作,该进程将相应地终止。
(S4)若存在相匹配的笔划,处理器5在字体存贮器4中比结构数据文件4a的相关部件块42中读出目标字符所匹配笔划每一部件的原点数据,然后,处理器5从这些部件中取得该笔划原点的中心点,将之作为新的笔划原点。
(S5)处理器5根据上面给出的公式(1)或(2)计算出在X方向上的剪切因子d1和在Y方向上的剪切因子d2。
(S6)下一步,处理器5在字体存贮器4中从轮廓数据文件4b中读出要进行剪切的每一笔划的部件的轮廓数据。接着,处理器5使用上面给出的公式(3)到(6)进行剪切计算。
(S7)对轮廓点的坐标进行写入操作。
此后,在放大/缩小计算中,每一部件的绝对原点坐标将与该部件的相对坐标相加,从而得到每一部件的绝对位置,该放大/缩小计算我们已参考图3描述过。处理器5将这些坐标数据乘以指定的转换比例因子,得到指到点大小的轮廓坐标,然后进行舍入操作。然后,处理器5将转换后的坐标数据送入绘图电路6填充该笔划的轮廓线的内部,由此完成了所讨论字符的位映象图象。
下面将参考图10A和10B所示的水平笔划“一”更详细地讨论上述操作。首先,将该笔划的参考线上的每个部件的原点O1(70,544)、O2(125,550)和O3(947,642)移到同一条水平线上。由于所讨论的笔划是一水平笔划,各部件原点的Y坐标的中心点Ym可以由部件原点O1和部件原点O3得到,方法如下所示,
Ym=(642-544)/2+544=593
将各个部件原点O1、O2和O3移动到该中心点得到如下结果:
O1(70,544)-(70,593)
O2(125,544)-(125,593)
O3(947,642)-(947,593)
在这种情况下,各个部件A1、A2和A3的原点具有同样的Y坐标,但各部件仍然未链接在一起,就如图12A所示。
下一步就是根据公式(1)和(2)计算剪切因子d1和d2。在本例中,由于头部件是起始部件,最后部件是一个终结部件,不需要终结判别数据。
d1=-(947-70)/(642-544)=-8.94898
d2=-(642-544)/(947-70)=-0.11174
用各个部件的原点作为剪切参考点,对每一部件的各组成点进行剪切。由于所讨论的笔划是一水平笔划,因此将基于公式(5)和(6)进行剪切。
X=X
Y=d2·X+Y
随之,下面就可得出起始部件A1各个点的绝对坐标。
第一个点的Y坐标是-0.11174×0+30=30,因此剪切后其相对坐标变为(0,30),然后将该相对坐标与部件原点的坐标相加得到绝对坐标(70,623)。
第二个点的Y坐标是-0.11174×17+2=0,因此剪切后其相对坐标是(17,0),类似地,其绝对坐标就是(87,593)。
第三个点的Y坐标是-0.11174×78+9=0,因此剪切后其相对坐标是(78,0),类似地,其绝对坐标就是(148,593)。
第四个点的Y坐标是-0.11174×78+39=30,因此剪切后其相对坐标是(78,30),同样地,其绝对坐标就是(148,623)。
下面给出中间部件A2各个点的绝对坐标。
第一个点的Y坐标是-0.11174×0+30=30,因此剪切后,其相对坐标是(0,30),绝对坐标是(125,623)。
第二个点的Y坐标是-0.11174×0+0=0,因此经过剪切后,其相对坐标是(0,0),绝对坐标是(125,593)。
第三个点的Y坐标是-0.11174×712+80=0,因此,剪切后其相对坐标是(712,0),绝对坐标是(837,593)。
第四个点的Y坐标是-0.11174×712+108=28,因此经过剪切,其相对坐标是(712,28),绝对坐标是(837,621)。
下面给出终止部件A3各个点的绝对坐标。
第一个点的Y坐标是-0.11174×(-110)+87=99,因此经过剪切,其相对坐标是(-110,99),绝对坐标是(837,622)。
第二个点的Y坐标是-0.11174×(-197)-22=0,因此经过剪切,其相对坐标是(-197,0),绝对坐标是(750,593)。
第三个点的Y坐标是-0.11174×0+0=0,因此经过剪切,其相对坐标是(0,0),绝对坐标是(947,593)。
第四个点的Y坐标是-0.11174×3+26=26,因此经过剪切,其相对坐标是(-3,26),绝对坐标是(944,619)。
经过上面的处理,就得到了如图12B实践所显示的,剪切后的笔划。
很显然,本改型具有与上面所描述实施例同样的优点。而且更进一步,即使一个笔划被分成几个部件,经过剪切补偿后该笔划也能被补偿成一条直线。更进一步,字体存贮器被分成结构数据文件和轮廓数据文件,有助于减少存储器容量。
除了上面的实施例和一个改型,本发明可以如下修改。首先,尽管前面的描述是参照明朝汉字“門”和“七”给出的,本发明可以被修改以处理具有其它水平笔划和垂直笔划的字符。其次,本发明可以被修改处理斜笔划以及上述讨论的水平和垂直笔划。在这种情况下,一条参考线是一条连接两个轮廓点的斜直线。第三,尽管字体存贮器被说明为部件分段类型的,它也可以是笔划分段类型的。第四,尽管补偿的是原始轮廓数据,乘以剪切因子后的坐标数据也可以进行剪切补偿。
尽管在此只描述了本发明的一个实施例和一个改型,但显然,对于那些在这方向精通的人来说,本发明也可以不脱离本发明的精神或范围而以许多其它具体形式体现。
概而言之,根据本发明,根据组成字符每一笔划上预定两点的坐标计算剪切因子;根据笔划的类型,基于该剪切因子,沿着坐标轴对每一笔划的各个点的坐标进行剪切补偿,从而产生一条无阶跃的直笔划。因此即使对于一个较小尺寸的字符,也可产生具有较好外观表示的位映象图象。即使使用了轮廓数据,它也有不能防止产生一个看起来与原始字符图象不同的字形,从而提高了字符质量。

Claims (20)

1、一种从轮廓数据生成一个指定字符大小的位映象图象的字符生成方法,该轮廓数据是通过使用逻辑坐标表示一个字符的轮廓线而得到的,所述方法包括下列步骤:
当用于所述指定字符大小的转换比例因子小于预定的比例因子时,根据笔划上预定两点的坐标计算用于剪切补偿构成所述字符笔划的目标笔划剪切因子;
基于所述剪切因子,根据所述目标笔划的类型,沿着一个坐标轴,对所述目标字符的各个点的坐标实施剪切补偿;
将经过所述剪切补偿所得到的轮廓数据转换成用整数表示的物理坐标,以用于基于所述转换比例因子的所述指定字符大小;以及
由所述转换物理坐标产生一个所述指定字符大小的位映象图象。
2、根据权利要求1的字符生成方法,其中所述剪切因子计算步骤中包括下述步骤:
将所述的转换比例因子与所述预定比例因子进行比较;
当所述转换比例因子小于所述预定比例因子时,从构成所述字符的笔划中获得用于剪切补偿的目标笔划,以及
从所述笔划的原点坐标中计算用于剪切补偿的所述目标笔划的所述剪切因子。
3、根据权利要求1的字符生成方法,其中所述剪切补偿步骤中,将坐标乘积结果与在特定坐标轴上的坐标相加,该坐标乘积结果是将垂直于根据所述笔划的所述类型确定所述特定坐标轴的一坐标轴上的坐标乘以所述剪切因子而得到的。
4、根据权利要求2的字符生成方法,其中所述剪切补偿步骤将坐标乘积结果与在特定坐标轴上的坐标相加,该坐标乘积结果是将垂直于根据所述笔划的所述类型确定的所述特定坐标轴的一坐标轴上的坐标乘以所述剪切因子而得到的。
5、根据权利要求1的字符生成方法,其中所述剪切补偿步骤通过基于所述剪切因子的剪切补偿,计算组成所述字符的各个部件的各个点在一条根据所述笔划的所述类型的坐标轴上的坐标。
6、根据权利要求5的字符生成方法,其中所述剪切补偿步骤中包括下列步骤:
由所述各个部件的原点的坐标得到一条参考线,将所述各个部件的所述原点的所述坐标移至所述参考线上;
根据所述剪切因子,对按照所述笔划的所述类型确定的所述坐标轴上的所述各部件的所述各点的,由距所述部件的所述原点的相对坐标指示的坐标进行补偿;以及
将经过移动的所述部件的所述原点的所述坐标与经过补偿的所述各个部件的所述各个点的所述相对坐标相加,计算所述各个部件的绝对坐标。
7、根据权利要求5的字符生成方法,其中所述剪切因子计算步骤中,该包括下列步骤:
将所述转换比例因子与所述预定比例因子进行比较;
当所述转换比例因子小于所述预定比例因子时,从构成所述字符的笔划中取得用于剪切补偿的目标笔划;以及
由所述目标笔划的原点坐标计算用于剪切补偿的所述目标笔划的所述剪切因子。
8、根据权利要求5的字符生成方法,其中所述剪切补偿步骤将坐标乘积结果与特定坐标轴上的坐标相加,该坐标乘积结果是将垂直于根据所述笔划的所述类型确定的所述特定坐标轴的一坐标轴上的坐标乘以所述剪切因子而得到的。
9、根据权利要求7的字符生成方法,其中所述剪切补偿步骤将坐标乘积结果与在特定坐标轴上的坐标相加,该坐标乘积结果是将垂直于根据所述笔划的所述类型确定所述特定坐标轴的一坐标轴上的坐标乘以所述剪切因子而得到的。
10、根据权利要求2的字符生成方法,其中所述的比较步骤将所述转换比例因子与各字体的一个预定比例因子集合进行比较。
11、一种由轮廓数据产生一个指定字符大小的位映象图象的字符生成装置,该轮廓数据是通过用逻辑坐标表示一个字符的轮廓线而获得的,所述装置包括:
一个用于存贮所述轮廓数据的字体存贮器;
一个字符展开电路,当对于所述指定字符大小的转换比例因子小于预定的比例因子时,该字符展开电路从用于剪切补偿的所述目标笔划的预定两点的坐标计算用于剪切补偿从字体存贮器中读出的组成所述字符的笔划的目标笔划的剪切因子;根据所述剪切因子沿着由所述目标笔划的类型确定的坐标轴对所述目标笔划的各个点的坐标进行剪切补偿;及将通过所述剪切补偿所获得的轮廓坐标转换成由整数表示的、用于基于所述转换比例因子的所述指定大小的物理坐标;以及
一个用于从所述转换后的物理坐标产生一个指定字符大小的位映象图象的绘图电路。
12、根据权利要求11的字符生成装置,其中所述的字体存贮器存贮所述的预定比例因子和组成所述字符的笔划类型;并且
当所述转换比例因子小于所述预定比例因子时,所述字符展开电路从所述笔划的所述类型取得用于剪切补偿的所述目标笔划,并从所述目标笔划的原点的坐标计算所述目标笔划的所述剪切因子。
13、根据权利要求11的字符生成装置,其中为了执行剪切补偿,所述的字符展开电路将一坐标乘积结果与特定坐标轴上坐标相加,该坐标乘积结果是将垂直于由所述笔划的所述类型确定的所述特定坐标轴的一个坐标轴上的坐标和所述剪切因子相乘而得到的。
14、根据权利要求12的字符生成装置,其中为了执行剪切补偿,所述的字符展开电路将一坐标乘积结果与特定坐标轴上的坐标相加,该坐标乘积结果是将垂直于由所述笔划的所述类型确定的所述特定坐标轴的一个坐标轴上的坐标和所述剪切因子相乘而得到的。
15、根据权利要求11的字符生成装置,其中所述字体存贮器中存贮有将所述笔划分割成各组成部件的轮廓数据;并且
为了执行所述剪切补偿,所述字符展开电路基于所述剪切因子,通过剪切补偿,计算组成所述笔划的各个部件上的各个点在一个由所述笔划的所述类型确定的坐标轴上的坐标。
16、根据权利要求15的字符生成装置,其中所述字体存贮器中存放有所述部件的原点坐标和所述部件的各个点的坐标,该坐标是以距所述部件的所述原点坐标的相对坐标表示的;以及
为了执行所述剪切补偿,所述字符展开电路从所述各个部件的原点的坐标得到一个参考线,将所述各个部件的所述原点的坐标移位到所述参考线上,根据所述剪切因子对所述各个部件的所述各个点在由所述笔划的所述类型确定的坐标轴上的坐标进行补偿,将移位后的所述部件的所述原点的所述坐标与补偿后的所述各个部件的所述各个点的所述相对坐标进行相加计算出所述各个部件的绝对坐标。
17、根据权利要求15的字符生成装置,其中所述字体存贮器中存放有预定比例因子和组成所述字符的笔划的类型;以及
当所述转换比例因子小于所述预定的比例因子时,所述字符展开电路由所述笔划的所述类型获取用于剪切补偿的目标笔划,并由所述目标笔划的原点的坐标计算出所述笔划的所述剪切因子。
18、根据权利要求15的字符生成装置,其中为进行剪切补偿,该所述的字符展开电路将一坐标乘积结果与特定坐标轴上的坐标相加,该坐标乘积结果是将垂直于由所述笔划的所述类型确定的所述特定坐标轴的一个坐标轴上的坐标和所述剪切因子相乘而得到的。
19、根据权利要求17的字符生成装置,其中为了执行剪切补偿,所述的字符展开电路将一坐标乘积结果与特定坐标轴上的坐标相加,该坐标乘积结果是将垂直于由所述笔划的所述类型确定的所述特定坐标轴的一个坐标轴上的坐标和所述剪切因子相乘而得到的。
20、根据权利要求12的字符生成装置,其中所述的字体存贮器中存放有每一字体的预定比例因子集合;以及
所述字符展开电路将所述转换比例因子与每一字体的预定比例因子进行比较,以计算所述剪切因子。
CN94108137A 1993-07-13 1994-07-08 字符生成方法及装置 Expired - Fee Related CN1071976C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP5195455A JP3037854B2 (ja) 1993-07-13 1993-07-13 文字生成方法及びその装置
JP195455/93 1993-07-13
JP195455/1993 1993-07-13

Publications (2)

Publication Number Publication Date
CN1103032A true CN1103032A (zh) 1995-05-31
CN1071976C CN1071976C (zh) 2001-09-26

Family

ID=16341357

Family Applications (1)

Application Number Title Priority Date Filing Date
CN94108137A Expired - Fee Related CN1071976C (zh) 1993-07-13 1994-07-08 字符生成方法及装置

Country Status (4)

Country Link
US (1) US5450096A (zh)
JP (1) JP3037854B2 (zh)
KR (1) KR0142162B1 (zh)
CN (1) CN1071976C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111949156A (zh) * 2020-07-10 2020-11-17 广州视源电子科技股份有限公司 书写装置的汉字书写测试方法及系统、书写装置

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3576611B2 (ja) * 1994-12-05 2004-10-13 キヤノン株式会社 文字発生装置ならびに方法
US5909519A (en) * 1996-05-21 1999-06-01 Hewlett-Packard Company Method for printing pseudo-bold characters at arbitrary orientations, scaling, and resolutions
US6151032A (en) * 1996-09-20 2000-11-21 Dynalab, Inc. Stroke-based glyph-outline font generation in low/high resolution space
US6157390A (en) * 1996-09-20 2000-12-05 Dynalab (S) Ltd. Stroke-based font generation
US5991464A (en) * 1998-04-03 1999-11-23 Odyssey Technologies Method and system for adaptive video image resolution enhancement
US6501475B1 (en) 1999-10-22 2002-12-31 Dynalab Inc. Glyph-based outline font generation independent of resolution
US6661417B1 (en) 2000-08-28 2003-12-09 Dynalab Inc. System and method for converting an outline font into a glyph-based font
JP4393161B2 (ja) * 2003-11-20 2010-01-06 キヤノン株式会社 画像処理装置及び画像処理方法
KR100644505B1 (ko) * 2004-06-04 2006-11-10 삼성코닝정밀유리 주식회사 유리기판용 간지 로딩 장치 및 로딩 방법

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3593287A (en) * 1968-04-18 1971-07-13 Nippon Electric Co Optical character reader embodying detected vertical stroke relocation
US4173753A (en) * 1977-09-22 1979-11-06 Hsu Ching Chou Input system for sino-computer
JP2532367B2 (ja) * 1985-05-02 1996-09-11 株式会社リコー 文字パタ−ン発生方法
NL8503461A (nl) * 1985-12-17 1986-04-01 Oce Nederland Bv Werkwijze voor het genereren van lijnstukken.
US4897638A (en) * 1987-02-27 1990-01-30 Hitachi, Ltd. Method for generating character patterns with controlled size and thickness
ES2058188T3 (es) * 1987-07-30 1994-11-01 Computer Ges Konstanz Disposicion de circuito para la preparacion de caracteres inclinados, especialmente caracteres manuscritos.
US5018217A (en) * 1988-09-26 1991-05-21 Brother Kogyo Kabushiki Kaisha Data converting apparatus having means for changing ornamental stroke end data of character outline
JP2768423B2 (ja) * 1988-09-30 1998-06-25 シャープ株式会社 文字処理装置
JPH02287684A (ja) * 1989-04-28 1990-11-27 Ibm Japan Ltd イメージ処理装置および方法
JP2550418B2 (ja) * 1990-01-20 1996-11-06 富士通株式会社 アウトライン文字補正方式
JP3039015B2 (ja) * 1990-09-14 2000-05-08 富士ゼロックス株式会社 文字処理装置
JPH04174898A (ja) * 1990-11-08 1992-06-23 Toshiba Corp 文字表示制御装置
US5325447A (en) * 1991-10-02 1994-06-28 Environmental Research Institute Of Michigan Handwritten digit normalization method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111949156A (zh) * 2020-07-10 2020-11-17 广州视源电子科技股份有限公司 书写装置的汉字书写测试方法及系统、书写装置
CN111949156B (zh) * 2020-07-10 2024-03-29 广州视源电子科技股份有限公司 书写装置的汉字书写测试方法及系统、书写装置

Also Published As

Publication number Publication date
CN1071976C (zh) 2001-09-26
US5450096A (en) 1995-09-12
JPH0725068A (ja) 1995-01-27
JP3037854B2 (ja) 2000-05-08
KR0142162B1 (ko) 1998-07-01
KR950004057A (ko) 1995-02-17

Similar Documents

Publication Publication Date Title
CN1027472C (zh) 文字生成方法及其装置
CN1015749B (zh) 一种用作用户接口工具的赋值设备选择单
CN1071976C (zh) 字符生成方法及装置
CN1124530A (zh) 图象处理的方法和系统
CN1308895C (zh) 用于生成图形数据的可视表示和数字文档处理的系统和方法
JP4885904B2 (ja) 画像処理方法、画像処理プログラム、および画像処理装置
CN1111371A (zh) 组合字符的方法与装置
CN1045307A (zh) 对汉字进行编码和译码的方法和装置
CN101046888A (zh) 渲染装置和方法,以及形状数据生成装置和方法
CN1645312A (zh) 图像转换装置及图像转换程序
CN1054929C (zh) 产生字符的方法和装置
CN1077757C (zh) 字符发生方法及装置
CN2697982Y (zh) 用于在低分辨率影像数据上叠加高分辨率字符数据的影像处理装置
CN1109294C (zh) 位映像字符转换器
CN1099096C (zh) 字符发生装置
JP3791259B2 (ja) アウトラインスムージング処理方法
CN1750040A (zh) 三维图像的生成方法及其显示系统
CN1217524A (zh) 字符图形产生器、字符产生方法及其存储媒质
CN1835546A (zh) 图像处理装置
CN1107939C (zh) 用于处理字符的方法和装置
CN1175749A (zh) 字符图形发生装置
CN1698071A (zh) 在与二维对象的拐角相关联的单元内生成一个二维距离场的方法
CN1885254A (zh) 存储有图像处理程序的存储介质、图像处理装置和方法
CN1679021A (zh) 可缩放笔划字体的系统和方法
CN1052320C (zh) 轮廓线形成装置和方法

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
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