轮廓字体的线宽调整装置和方法

文档序号:6406769阅读:259来源:国知局
专利名称:轮廓字体的线宽调整装置和方法
技术领域
本发明涉及在将表示轮廓-向量-字体(简称轮廓字体)的文字轮廓线的数据点的座标值数据群即原轮廓-向量-数据(简称原轮廓数据)预先存入ROM、RAM等存储器内,并根据与指定的输出文字的大小相当的网格尺寸将原轮廓-数据进行放大或缩小运算而形成由输出座标值数据群构成的输出轮廓-数据的装置和方法中,将构成由输出轮廓-数据表示的输出文字,特别是印字或显示的汉字的横线或竖线的宽度调整为能保证高品质文字的装置和方法。
将预先设定的轮廓-字体缩小后的小文字进行印字或显示时,由于进行缩小运算中采取化整处理(将小数点后面的尾数进位、四舍五入或将小数点后面的尾数舍掉),有时会发生输出的文字的线宽不一致的现象。特别是很多汉字有多条横线。即使这多条横线的线宽在轮廓字体上设定得相等,由于在缩小运算中尾数的处理,至少会产生1个网点的误差,所以输出的文字的横线有时会粗细不匀地混合存在。另外,输出文字的尺寸较小时,横线笔画多的汉字将被缩小得很小后进行输出。这样,有时出现输出文字被破坏的现象。
本发明的目的旨在能够使相等线宽的文字线用相等线宽输出,不同线宽的文字线用不同线宽输出,从而保持输出文字的高品质。
本发明的另一个目的是,即使指定的文字尺寸很小或者打印机等设备的分辨率很低时,也能防止文字线多的拥挤的输入文字被破坏。
第一个发明是在把轮廓字体上线宽设定得相等的多条文字线的线宽进行放大或缩小后,调整线宽,使得能保持等线宽输出。
第1个发明的轮廓字体的线宽调整装置包括原轮廓-数据存储器、原线宽数据存储器、线宽变换器和座标值变换器,原轮廓-数据存储器用来预先存储根据表示轮廓字体的文字轮廓线的数据点的原线座标值数据,表示该数据点是否为应调整线宽的点的属性数据;原线宽数据存储器用来存储与各文字的原轮廓数据对应的表示原线宽的数据;线宽变换器根据与指定的文字尺寸相当的网格尺寸,将原线宽数据变换为输出轮廓数据中处理过程尾数的输出线宽数据;座标值变换器利用上述输出线宽数据将读出的原座标值数据变换为处理尾数的输出座标值数据,使得表示应调整线宽的属性数据附加到从原轮廓-数据存储器读出的原座标值上时,由输出座标值数据规定的线宽与由上述输出线宽数据所表示的线宽相等。
第1个发明的轮廓字体的线宽调整方法,在将表示轮廓字体的文字轮廓线的数据点的原座标值数据群构成的原轮廓-数据预先存储起来,根据与指定的文字大小相当的网格尺寸将原座标值数据进行放大或缩小运算后生成由输出座标值数据群构成的输出轮廓数据的方法中,预先设定与原轮廓数据中各数据点的原座标值相对应的表示各数据点是否为应调整线宽的点的属性数据,同时,将表示与各文字的原轮廓数据对应的原线宽的数据存储起来,按照上述网格尺寸,将原线宽数据变换为输出轮廓数据中处理过尾数的输出线宽数据,利用上述输出线宽数据,将读出的原座标值数据变换为处理过尾数的输出座标值数据,使得将表示应调整线宽的属性数据附加到读出的原座标值数据上时,由输出座标值数据规定的线宽与由上述输出线宽数据表示的线宽相等。
按照第1个发明,根据预先规定的原线宽数据作成输出线宽数据,再利用输出线宽数据,把所有需要调整线宽的线调整到和输出线宽相等,所以,可以输出线宽整齐一致的多条文字线的高质量的文字。
另外,在作成输出线宽数据时,可以将输出线宽选择设定为粗、中、细,文字的线宽被设定为与所设定的线宽一致,所以,能够考虑书写体的特长,根据打印机等设备的性能或其他情况,获得最佳的线宽调整。
第2个发明是即使在轮廓字体上线宽设定得相等,也可以使一个文字中多条线的线宽至少有两个不同等级,或可以使文字间线宽不同。
第2个发明的轮廓字体的线宽调整装置包括原轮廓-数据存储器、原线宽数据存储器、输出线宽数据作成装置和输出座标值数据变换器。原轮廓-数据存储器用来预先存储属性数据和线宽种类数据,属性数据与表征轮廓字体文字的轮廓线的数据点的原座标值数据相对应,以表示该数据点是否为应调整线宽的点,该轮廓字体文字含有多条相等的原线宽的文字线。线宽种类数据表示,不管相等的原线宽,应使输出线宽随指定范围的网格尺寸而不同时的不同线宽粗细等级。原线宽数据存储器用来存储与各文字的原轮廓数据对应的表示原线宽的数据。输出线宽数据产生装置按照与被指定的文字尺寸相当的网格尺寸,根据原线宽数据和线宽种类数据,作成表示输出轮廓数据中处理过尾数的多个不同输出线宽的输出线宽数据;输出座标值数据变换器利用所选择的输出线宽数据把读出的原座标值数据变换为处理过尾数的输出座标值数据,使得将表示应调整线宽的属性数据附加到从原轮廓-据存储器读出的原座标值数据上时,由输出座标值数据规定的线宽和按上述线宽种类数据选择的输出线宽数据所表示的输出线宽相等。
第2个发明的轮廓字体的线宽调整方法,在预先存储表示含有多条相等原线宽的文字线的轮廓字体文字的轮廓线的数据点的原座标值数据群构成的原轮廓-数据,按照与指定的文字尺寸相当的网格尺寸,把原座标值数据进行放大或缩小运算后生成由输出座标值数据群构成的输出轮廓-数据的方法中,预先设定属性数据和线宽种类数据(该属性数据与原轮廓数据中各数据点的原座标值数据对应,表示各数据点是否为应调整线宽的点。该线宽种类数据表示不管相等的原线宽而应使输出线宽按照指定范围的网格尺寸而不同时不同线宽的粗细等级),同时,与各文字的原轮廓-数据相对应,存储表示原线宽的数据,按照上述网格尺寸,根据原线宽数据和线宽种类数据,作成在输出轮廓数据中表示处理过尾数的多个不同输出线宽的输出线宽数据,利用所选择的输出线宽数据,将读出的原座标值数据变换为处理过尾数的输出座标值数据,以使将表示应调整线宽的属性数据附加到读出的原座标值数据上时,由输出座标值数据规定的线宽和按上述线宽种类数据选择的输出线宽数据所表示的输出线宽相等。
按照第2个发明,由于能够使一个文字中的多条线的线宽不同地输出,所以,在使特定的线比其它线粗或细,而保证输出品质良好的场合是有效的,例如,可把构成文字的主要部分的线加粗,而其他拥挤部分的线变细。另外,在多个文字之间,也可以使线宽不同,所以,对于具有多条线的拥挤的文字,使线宽变细可以防止文字破坏,对于简单的文字,使线宽变粗可提高表现力。第2个发明特别是在指定的文字尺寸较小、打印机等输出装置的分辨率低的场合等很有用,线的条数多时,在防止文字破坏方面起作用。
第3个发明在轮廓字体上多条文字线的线宽被设定为不同时是有用的,能够用不同的线宽输出不同线宽的线。
第3个发明的轮廓字体的线宽调整装置包括原轮廓-数据存储器、原线宽数据存储器、线宽数据变换器和座标值数据变换器。原轮廓-数据存储器用来预先存储属性数据和线宽种类数据,属性数据与表征轮廓-字体文字的轮廓线的数据点的原座标值数据相对应,表示各数据点是否为应调整线宽的点,该轮廓字体文字的轮廓线含有多条不同的原线宽的文字线,线宽种类数据与不同的原线宽相对应,表示线宽粗细的种类;原线宽数据存储器用来存储表示与各文字的原轮廓-数据对应的多种原线宽的数据;线宽数据变换器按照与指定的文字尺寸相当的网格尺寸,将多种原线宽数据变换为输出轮廓-数据中处理过尾数的多种输出线宽数据;座标值数据变换器利用选择的输出线宽数据,将读出的原座标值数据变换为处理过尾数的输出座标值数据,使得将表示应调整线宽的属性数据附加到从原轮廓-数据存储器读出的原座标值数据上时,由输出座标值数据规定的线宽和按上述线宽种类数据选择的输出线宽数据所表示的输出线宽相等。
第3个发明的轮廓字体的线宽调整方法把表示含有多条不同的原线宽的文字线的轮廓字体文字的轮廓线的数据点的原座标值数据群构成的原轮廓数据预先存储起来,按照与指定的文字尺寸相当的网格尺寸,通过把原座标值数据进行放大或缩小的运算,生成电输出座标值群构成的输出轮廓数据。在此方法中,预先设定与原轮廓-数据中各数据点的原座标值数据相对应的表示各数据点是否为线宽应调整的点的属性数据和与不同的原线宽相对应的表示线宽种类的线宽种类的数据,同时,存储与各文字的原轮廓-数据对应的表示多种原线宽的数据,按照上述网格尺寸,把多种原线宽数据变换为输出轮廓数据中处理过尾数的多种输出线宽数据,然后,利用所选择的输出线宽数据,将读出的原座标值数据变换为处理过尾数的输出座标值数据,使得在表示应调整线宽的属性数据附加到读出的原座标值数据上时,由输出座标值数据规定的线宽与按照上述线宽种类数据选择的输出线宽数据所表示的输出线宽相等。
根据第3个发明,按照网格尺寸将预先设定的多种原线宽数据变换为对应的多种输出线宽数据,然后利用这些输出线宽数据进行线宽调整,所以,可以把相同线宽的文字线调整为具有相同线宽,把不同线宽的调整为具有不同线宽,从而能够保持高质量的文字。
上述第1、第2和第3个发明,对构成文字的横线和竖线都可适用。
按照第1、第2和第3个发明,用于进行线宽调整的处理比较简单,所以,不需要等待时间,能够实时地生成输出文字。


图1是文字图形生成装置概要的框图。
图2是原轮廓数据的一个例子。
图3是由图2的原轮廓数据表示的原轮廓字体的一个例子。
图4是表示原轮廓字体和输出轮廓字体的关系图。
图5是输出文字数据生成处理顺序的流程图。
图6和7是原轮廓数据的其他例子。
图8是由图6和图7的原轮廓数据表示的原轮廓字体的一个例子。
图1是内装本发明析轮廓字体的线宽调整装置或实现本发明的轮廓字体的线宽调整方法的文字图形生成装置的结构简图。
原轮廓-数据存储器11中,对所使用的多种文字预先作成并存储表示其轮廓字体的原轮廓数据。该存储器11由ROM或RAM构成。表示应输出的文字的文字代码和与应输出的文字的大小及分辨率有关的网格尺寸(或单元尺寸)m输入给运算器10。运算器10从存储器11读出由文字代码指定的文字的原轮廓数据,按照给定的网格尺寸m进行放大或缩小的运算处理,同时进行线宽调整处理,作成输出轮廓数据。作成的输出轮廓数据暂时存储到输出轮廓-数据存储器(例如RAM)12内。然后,由变换器13读出输出轮廓数据。在变换器13中,在由输出轮廓数据表示的轮廓线的内侧进行涂抹处理,作成表示输出文字的圆点数据。将圆点数据暂时存储到缓冲存储器14内。当关于一个集中数的文字(例如一行文字)的圆点数据作成时,这些圆点数据就能够由打印机、显示装置等输出装置进行可视输出(印字或显示)。运算器10和变换器13能够利用计算机系统的一部分满意地实现,也可以使用专用的硬件构成。
应输出的文字的网格尺寸m与指定的文字尺寸和输出装置的分辨率有关。按照美国式点制,72点的文字的大小(一边的长度)为1英寸。设指定的文字尺寸为A点。输出装置例如打印机的分辨率为BDPI(每英寸的圆点)。则网格尺寸m可以表为
m=(A/72)×B 式1这就是和指定的文字尺寸相当的网格尺寸。
第1实施例第1实施例是在指定的文字具有多条横线的情况时,将这些横线的线宽调整相等。
以“目”这个汉字为例。汉字“目”由两条竖线和四条横线构成。在输出轮廓数据中,这四条横线的线宽调整为相等。
图2是汉字“目”的原轮廓数据的一个例子。图3表示由该原轮廓数据表现的汉字“目”。
轮廓字体是用直线或曲线近似表现文字的轮廓线的。形成文字的轮廓线的直线或线的端点(称为数据点)用XY座标表示。原轮廓数据是将这些数据点的X、Y座标值按一定的规则(例如,从左上角的点开始,先连接外侧的轮廓线,然后进入到内侧的轮廓线的规则)排列的。在图2中,列出了与数据点的点序号对应的X座标值和Y座标值。数据点在文字上的位置,如图3所示。
设原轮廓数据的网格尺寸为M,在图2所示的例中,M=1000。XY座标的原点(0,0)取在左下角。数据点的X,Y座标值为正整数或0。
由图3可知,构成汉字“目”的四条横线的线宽(圆点数)D设定为相等。对于在原轮廓数据上设定为相等的横线线宽D,按照指定的网格尺寸m放大或缩小而得到的输出轮廓数据中,利用后面所述的处理,可将多条横线线宽调整为相等。
图4是由原轮廓数据表示的文字“目”和由将它放大或缩小而得到的输出轮廓数据表示的文字“目”的对比。
通常,用Y1表示构成文字的某一横线的上侧轮廓线的Y座标值,用Y2表示下侧轮廓线的Y座标值。因此,下式成立。
Y1-Y2=D 式2例如,数据点P2的Y座标值(相当于Y1)为864,数据点P25的Y座标值(相当于Y2)为842。在图2所示的原轮廓数据中,线宽D设定为22。
不言而喻,表示横线的上侧或下侧轮廓线上的所有点的Y座标值相等。例如,数据点P2和P3的Y座标值相等,数据点P26和P27的Y座标值相等。
表示具有一定宽度的横线的上侧轮廓线的Y座标值Y1和下侧轮廓线的Y座标值Y2以及线宽D,在下面所示的线宽调整处理中起着极其重要的作用。将与各数据点对应的属性数据附加到原轮廓数据上(参见图2)。属性数据具有如下意义属性数据0不必进行线宽调整的数据点,属性数据1具有分类为Y1的Y座标值的数据点,属性数据2具有分类为Y2和Y座标值的数据点。
例如,在图2中,数据点P0,P1等不在表示横线的轮廓线上,所以属性数据为0。数据点P2,P3,P26,P27等位于形成横线的上侧轮廓线上,所以,它们的属性数据为1。数据点P25,P28,P30,P33等位于形成横线的下侧轮廓线上,所以,它们的属性数据为2。
在原轮廓数据上,也附加了与各数据点对应的线宽种类数据,关于这点,在第2和第3实施例中详细介绍。
进而,在各文字的原轮廓数据上附加并存储线宽D。既可以将表示线宽的数值数据(例如,D=22,参见图2)与各文字对应地存储到原轮廓-数据存储器11内,也可以存储指定线宽D的代码。对于后一种情况,另外用表的形式把与代码对应的表示线宽的数值数据预先存储到存储器内。通常使用的线宽的种类数是有限的,所以,采用后一种方法可以用较少的存储容量完成。
在由输出轮廓数据表示的文字中,设形成横线的上侧轮廓线的Y座标值为y1,下侧轮廓线的Y座标值为y2,线宽(圆点数)为d。则下式成立。
y1-y2=d 式3这些Y座标值y1、y2和线宽d是经过线宽调整后的值,所以为正整数或0。
图5表示对于文字代码指定的文字,根据原轮廓数据而生成输出轮廓数据的运算器10中的处理顺序。
根据给定的网格尺寸m以及预先规定的原轮廓数据中的线宽D和网格尺寸M,可以求出输出轮廓数据中的线宽d(步骤101)。这里M和D不限于图2所示的例子,可以是任意值。对于m也一样。
首先,进行下式运算。
e=D×(m/M)式4得到的e值不一定为正整数。通常,具有小数点以后的尾数。在式4的运算中,考虑不能除尽的情况,最好预先规定应该停止计算的小数点以及的位数。对后面所述的f1和f2值也一样。
设a为正整数或0,则e值的范围可用下式表示,即a≤e<a+1式5预先规定处理计算出的e值的小数点以后的尾数及求线宽d的方法。在这个方法中,小数点以后的部分可采用四舍五入、进位或舍位。通常,a<e<a+1时(式中a≠0),d=a或a+1e=a时(式中a≠0),d=ae<1时,d=1式6将决定了的线宽d存储到存储器(例如,运算器10的存储器的工作区)内。在e值的尾数处理中,如果对小数部分采取四舍五入,则可得到具有标准粗细的线宽的文字;如果采取进位处理,则可得到具有粗线宽的文字;如果采取舍位处理,则可得到具有细线宽的文字。因此,利用预先设计的程序或模式开关,能够选择横线的粗细。
从原轮廓-数据存储器11读出由一个数据点的X座标值、Y座标值和属性数据构成的数据(点数据),判断该属性数据为0或其他数值(步骤102,103)。属性数据为1或2时,是形成横线的上、下轮廓线的数据点,所以,该Y座标值为Y1或Y2。考虑前面求出的线宽d,将该Y座标值变换为输出轮廓数据上的Y座标值y1或y2(步骤104)。
将从存储器11读出的Y座标值Y1或Y2代入式2,先算出其他Y座标值Y2或Y1,然后,利用Y1和Y2进行下式计算。
f1=Y1×(m/M) 式7f2=Y2×(m/M) 式8得到的f1和f2值通常也具有小数点以后的尾数。设f1和f2的整数部分分别为b1,b2,小数部分为c1,c2则有f1=b1+c1式9f2=b2+c2式10通常,利用如下方法,考虑线宽d,可将具有小数点以后的尾数的f1和f2值调整为0或正整数的y1,y2值。即,b1-b2=d-1时,y1=b1+1y2=b2(即将c1进位,将c2舍位)b1-b2=d时,如果c1≥1-c2,则y1=b1+1
y2=b2+1如果c1<1-c2,则y1=b1y2=b2(即将c2和1-c2比较后,取大值,c1=1-c2时,取c1)。
b1-b2=d+1时,则y1=b1y2=b2+1(即将c1舍位,将c2进位)这样得到的Y座标值y1和y2中,采用与从存储器11读出的Y座标值对应的数值(如果是Y1,则采用y1,如果是y2,则采用y2)(即存储到存储器12内)。
对于原轮廓数据的X座标值,也可以根据放大率或缩小率m/M算出,并且可将小数点以后的尾数进行四舍五入、进位或舍位处理而加以调整。通常,汉字包含的竖线数比横线数少,所以,不一定都必须象横线那样将线宽调整为相等。但是,如在后面所述的第4实施例中所述的那样,对于竖线也可以将线宽调整为相等。
总之,利用上述处理对于一个数据点一得到输出轮廓数据上的X,Y座标值,就将它们存储到存储器12内。
属性数据为0时,不需要进行将横线的线宽调整为相等的处理,按照倍率m/M将原轮廓数据变换为输出轮廓数据并将小数点以后的尾数进行调整处理,所得到的数据存储到存储器12内(步骤105)。
对表示一个文字的所有原轮廓数据反复进行(步骤106)步骤102~105的处理。
下面说明调整输出轮廓数据中的Y座标值的y1,y2的方法(步骤104)的变形例。
先说明第1个变形例。
根据式7和式8算出f1和f2值后,进行下列计算。即,g1=f1+[d-(f1-f2)]/2 式12g2=f2-[d-(f1-f2)]/2 式13设将这样得到的g1和g2的小数部分进行四舍五入处理后得到的值分别为y1和y2,由此得到的y1和y2值满足式3。其理由是,由式12和式13可得g1-g2=d 式14式14表示g1值的小数部分和g2值的小数部分相等。将相等的小数部分分别进行四舍五入处理后,分别由g1得到y1,由g2得到y2,所以,这样得到的y1和y2的差值当然也等于d。
g1值和g2值的小数部分为0.5时,利用四舍五入处理进位。这和式11中c1=1-c2的情况相当。
下面,说明第2个变形例。
按照上述两种方法,利用Y座标值Y1和Y2求输出轮廓数据上的Y座标值y1和y2。在第2个变形例中,可以仅由Y1算出Y2,仅由y2算出y2,所以,处理简单。
先说明前提事项。
原轮廓数据的网格尺寸M为200,400,800,1000等情况时,上述e、f1、f2值为可以除尽的值(参见式4、式7、式8)。因此,为了使e、f1、f2值能除尽,预先规定应计算的小数部分的位数。
根据式2,则下式成立。即,Y1×(m/M)-Y2×(m/M)=D×(m/M) 式15因此,e、f1、f2如能除尽,由式4、式7、式8和式15可知下式成立。即f1-f2=e 式16如果任意决定网格尺寸M,则多数情况下,e、f1、f2值不能除尽。当e、f1、f2为不能除尽的值时,尽可能预先将这些值应计算的小数部分的位数规定得多一点(例如,计算到小数点后第4位或更多)。
按照以上述情况为前提的第2个变形例,当从存储器11读出的原轮廓数据的Y座标值为Y1时,根据式7求出f1值后,利用在步骤101(式4,式6)算出的e值和d进行不式运算。
h1=f1+(d-e)/2 式17将按照式17得到的h1值的小数部分进行四舍五入处理,可以得到Y座标值y1。
从存储器11读出的Y座标值为Y2时,根据式8求出的f2值后,利用已算出的值e和d,进行下式运算。
h2=f2-(d-e)/2 式18将按照式18得到的h2值的小数部分进行四舍五入处理,可以得到Y座标值y2。
利用上述方法,总能确保线宽d相等并得到Y座标值y1座标值y1和y2的理由如下e、f1、f2值能除尽时,如上所述,式16成立,所以,利用式16、式17、式18可以得到下式。
h1-h2=d 式19因线宽d为正整数,所以,h1值的小数部分和h2值的小数部分应该相等。因为是该h1和h2分别进行四舍五入后得到Y座标值y1和y2的,所以,这样得到的y1和y2也满足式3。即,y1和y2之差总是等于线宽d。
e、f1、f2值不能除尽时,就可能出现h1值和h2值中1个小数部分大于0.5,另一个小于0.5。这时,式3不成立。但是,通过多取e、f1、f2值的小数位数,能够将发生这种情况的几率减小到很小。
第2实施例第2实施例可将一个文字中的多条横线的线宽至少分成两个不同的等级,或者使某一文字的横线的线宽与其他文字的横线的线宽不同。前者,在输出轮廓数据中,认为使特定的横线的线宽比其他横线的线宽粗或细时输出的文字品质良好时是很有效的。后者,对于横线数很多、单纯将原轮廓数据缩小时输出的汉字不能判读时是有效的。
总之,第2实施例对于利用分辨率特别低的输出装置时即作成网格尺寸小于输出轮廓数据时是有效的。因此,最好预先规定根据第2实施例进行线宽调整的网格尺寸的上限。
在原轮廓数据中,能够利用各数据点包含的线宽种类数据。例如,预先将线宽种类数据定义为线宽种类数据1稍粗线宽的情况,线宽种类数据2稍细线宽的情况。
在本实施例中,前提是在原轮廓数据中,一个文字包含的多条横线的线宽D相等。因此,在这个实施例中也能够参照图2和图3所示的原轮廓数据。但是,在图2所示的原轮廓数据中,作为线宽种类数据只设定为1。对于不需要进行线宽调整的数据点,线宽种类数据设定为0。
线宽种类数据通常是通过反复试行该数据的设定、输出轮廓数据的作成和文字的输出,修正错误后产生的。也能够根据指定的网格尺寸的范围,分别设定各个线宽种类数据,不仅能够将线宽设定为两个等级,也能够设定为3个等级以上。
在第2实施例中,基本上也是按照图5所示的处理顺序作成输出轮廓数据的。下面,说明与第一实施例的处理不同的地方。
最好预先将与每个文字的原轮廓数据对应的、这里使用的原线宽种类数据的种类(只使用1或使用1和2)存储到存储器内。
按照指定的网格尺寸,利用式4可以求出e值。
e值的范围应为a≤e<a+1(a为正整数)式20e<1时,不是本实施例的线宽调整对象。即,可以由此规定能利用本实施例进行线宽调整的网格尺寸的下限。
规定输出轮廓数据中的如下两种线宽d1和d2,存储到存储器内(步骤101)。
d1=ad2=a+1式21然后,从存储器11内逐点读出原轮廓数据,如果属性数不是0,则进行包括含线宽调整在内的座标值变换处理(步骤102,103,104)。
线宽调整处理和第1实施例中按式7到式11的处理相同,但是,按照读出点的数据中包含的线宽种类数据,追加选择上述两种线宽d1或d2的处理。即,如果线宽种类数据为1,则选择线宽d2,若线宽种类数据为2,则选择线宽d1,在按照式11的运算中,利用选择的d1或d2代替d来求输出轮廓数据上的Y座标值y1和y2。
处理程序略增加一些,但读出线宽种类数据时,每次都可以按式21决定线宽d1或d2。
第1实施例中的第1个变形例和第2个变形例也可以适用于第2实施例。
在第1个变形例中,可将式12或式13的d置换为按线宽种类数据选择的线宽d1或d2。
在第2个变形例中,可将式17或式18的d置换为按线宽种类数据选择的线宽d1或d2。
第3实施例在第3实施例中,一个文字的原轮廓数据中多条横线的线宽不同,从图6到图8给出了汉字“冒”的原轮廓数据的例子。这里,使用了四种线宽D1、D2、D3和D4。与该文字“冒”的原轮廓数据对应的这些线宽(圆点数)的值D1=78,D2=86,D3=91,D4=96预先存储到存储器11或其他存储器内。如上所述,预先将与存储器11中的文字“冒”的原轮廓数据对应的表示线宽的代码存起来,也可以用与代码对应的表的形式将表示具体的线宽的数值存储起来。这时,也可以把像第1实施例中那样的相等的线宽D的数据一起存储到该表内。
与线宽D1、D2、D3和D4对应地将线宽种类数据也设定为1、2、3、4四种。原轮廓数据中使用的线宽种类数据的种类最好也与其原轮廓数据对应地存储起来。属性数据和第1实施例的相同。
在第3实施例中,设定了多种线宽D1~Dn,所以,可以算出输出轮廓数据对应的多种线宽D1~dn,并进行尾数处理(与步骤101对应的处理)。在上述式4~式6中,令e为ei,a为ai,d为di,对i=1~n进行这些运算,由此得到线宽d1~dn。然后将这些线宽d1~dn存储到存储器11内。
在线宽调整处理(与步骤102~104对应)中,按式7~式11进行。按读出的点数据中包含的线宽种类数据选择几个线宽d1~dn中的某些线宽,在式11的运算中,利用选择的线宽(d1~dn中的某些值)代替d,求出Y座标值y1和y2。其他处理和图5所示的第1实施例的情况相同。
读出线宽种类数据时,每次也可根据情况调整线宽d1~dn中对应的数据。
第1实施例中的第1个变形例和第2个变形例的线宽调整处理也能够适用于第3实施例。
在第1个变形例中,可以将式12或式13的d置换为按线宽种类数据选择的线宽(d1~dn中的某些值)。
在第2个变形例中,可以将式17或式18的d和e置换为按线宽种类数据选择的线宽di(i=1~n中的某些值)和与其对应的ei。
第4实施例第4实施例是对竖线进行线宽调整。对于上述横线的所有的线宽调整处理都适用于对竖线的线宽调整。在原轮廓数据中,设表示1条竖线的右侧轮廓线上的数据点的X座标值为X1,左侧轮廓线的X座标值为X2,与这些X座标值X1、X2对应的输出轮廓数据中的X座标值为x1、x2。于是,可将上述横线的线宽调整中Y座标值Y1、Y2和y1、y2量换为X座标值X1、X2和x1、x2。
第1个变形例子和第2个变形例子当然也可以适用于竖线的线宽调整。
也可以同时进行横线的线宽调整和竖线的线宽调整。这时,在原轮廓数据中要包含横线的属性数据和线宽种类数据,以及竖线用的属性数据和线宽种类数据。
按照本发明的轮廓字体的线宽调整装置和方法,可将一种轮廓字体的轮廓数据适用于各种网格尺寸(与文字尺寸和分辨率有关)的打印机及显示装置,所以,可以包括打印机及显示装置的计算机系统及其文字图形发生器中使用。即,可以在打印机、显示装置、文字处理器、计算机系统、编辑系统、计算机复制系统等制造产业中使用。
权利要求
1.轮廓字体的线宽调整装置,其特征在于包括原轮廓数据存储器、原线宽数据存储器、线宽变换器和座标值变换器,原轮廓数据存储器用来预先存储属性数据,该属性数据与表示轮廓字体文字的轮廓线的数据点的原座标值数据相对应,表示该数据点是否为应调整线宽的点;原线宽数据存储器用来存储表示与各文字的原轮廓数据对应的原线宽的数据;线宽变换器按照与指定的文字尺寸相当的网格尺寸,将原线宽数据变换为输出轮廓数据中处理过尾数的输出线宽数据;座标值变换器利用上述输出线宽数据,把输出的原座标值数据变换为处理过尾数的输出座标值数值,使得将表示应调整线宽的属性数据附加到从原轮廓数据存储器读出的原座标值数据上时,由输出座标值规定的线宽和由上述输出线宽数据表示的线宽相等。
2.轮廓字体的线宽调整方法,其特征在于在把表示轮廓字体的文字轮廓线的数据点的原座标值数据群构成的原轮廓数据预先存储起来,按照与指定的文字大小相当的网格尺寸将原座标值数据进行放大或缩小运算后生成由输出座标值群构成的输出轮廓数据的方法中,预先设定与原轮廓数据中各数据点的原座标值相对应、表示该数据点是否为应调整线宽的点的尾性数据,同时,将表示与各文字的原轮廓数据对应的原线宽的数据存储起来,按照上述网格尺寸,将原线宽数据变换为输出轮廓数据中处理过尾数的输出线宽数据,利用上述输出线宽数据,将读出的原座标值数据变换为处理过尾数的输出座标值数据,使得将表示应调整线宽的属性数据附加到读出的原座标值数据上时,由输出座标值数据规定的线宽与由上述输出线宽数据表示的线宽相等。
3.轮廓字体的线宽调整装置,其特征在于包括原轮廓数据存储器、原线宽数据存储器、输出线宽数据作成装置和输出座标值数据变换器,原轮廓数据存储器用来存储属性数据和线宽种类数据,属性数据与表征轮廓字体的文字轮廓线的数据点的原座标值数据相对应,表示该数据点是否为应调整线宽的点,该轮廓字体的文字含有多条相等的原线宽的文字线,线宽种类数据表示不论相等的原线宽如何,按照指定范围的网格尺寸,应使输出线宽不同的文字线的不同线宽等级;原线宽数据存储器用来存储与各文字的原轮廓数据对应的表示原线宽的数据;输出线宽数据作成装置按照与指定的文字大小相当的网格尺寸,根据原线宽数据和线宽种类数据,作成表示输出轮廓数据中处理过尾数的多条不同的输出线宽的输出线宽数据;输出座标值数据变换器利用所选择的输出线宽数据把读出的原座标值数据变换器为处理过尾数的输出座标值数据,使得将表示应调整线宽的属性数据附加到从原轮廓数据存储器读出的原座标值数据上时,由输出座标值数据规定的线宽和按上述线宽种类数据选择的输出线宽数据所表示的输出线宽相等。
4.轮廓字体的线宽调整方法,其特征在于在将由表示含有多条相等原线宽的文字线的轮廓字体的文字轮廓线的数据点的原座标值数据群构成的原轮廓数据预先存储起来,按照与指定的文字大小相当的网格尺寸,将原座标值数据进行放大或缩小运算后生成由输出座标值数据群构成的输出轮廓数据的方法中,预先设定与原轮廓数据中各数据点的原座标值数据相对应的表示该数据点是否应为调整线宽的点的属性数据和不管相等的原线宽,均应按照指定范围的网格尺寸使输出线宽不同的文字线表示不同线宽等级的线宽种类数据,同时,将与各文字的原轮廓数据对应的原线宽的数据存储起来,按照上述网格尺寸,根据原线宽数据和线宽种类数据作成在输出轮廓数据中表示处理过尾数的多个不同输出线宽的输出线宽数据,利用所选择的输出线宽数据,将读出的原座标值数据变换为处理过尾数的输出座标值数据,以便在将表示应调整线宽原属性数据附加到读出的原座标值数据上时,由输出座标值数据规定的线宽和按上述绕宽种类数据选择的输出线宽数据所表示的输出线宽相等。
5.轮廓字体的线宽调整装置,其特征在于包括原轮廓数据存储器、原线宽存储器、输出线宽数据变换器和输出座标值数据变换器,原轮廓数据存储器用来预先存储属性数据和线宽种类数据,属性数据与表征轮廓字体的文字轮廓线的数据点的原座标值数据相对应,表示各数据点是否为应调整线宽的点,该轮廓字体的文字轮廓线含有多条不同的原线宽的文字线,线宽种类数据表示与不同的原线宽对应的线宽种类;原线宽数据存储器用来存储表示与各文字的原轮廓数据对应的多种原线宽的数据;输出线宽数据变换器按照与指定的文字尺寸相当的网格尺寸,将多种原线宽数据变换为输出轮廓数据中处理过尾数的多种输出线宽数据;输出座标值数据变换器利用选择的输出线宽数据,将读出的原座标值数据变换为处理过尾数的输出座标值数据,使得将表示应调整线宽的属性数据附加到从原轮廓数据存储器读出的原座标值数据上时,由输出座标值数据规定的线宽和按上述线宽种类数据选择的输出线宽数据所表示的输出线宽相等。
6.轮廓字体的线宽调整方法,其特征在于在将由表示含有多条不同的原线宽的文字线的轮廓字体的文字轮廓线的数据点的原座标值数据群构成的原轮廓数据预先存储起来,根据与指定的文字尺寸相当的网格尺寸,将原座标值数据进行放大或缩小运算后生成由输出座标值群构成的输出轮廓数据的方法中,预先设定与原轮廓数据中各数据点的原座标值数据相对应的表示该数据点是否为应调整线宽的点的属性数据和表示与不同的原线宽对应的线宽种类的线宽种类数据,同时,将表示与各文字的原轮廓数据对应的多种原线宽的数据存储起来,按照上述网格尺寸,将多种原线宽数据变换为输出轮廓数据中处理过尾数的多种输出线宽数据,然后,利用所选择的输出线宽数据,将读出的原座标值数据变换为处理过尾数的输出座标值数据,以便在将表示应调整线宽的属性数据附加到读出的原座标值数据上时,由输出座标值数据规定的线宽和按上述线宽种类数据选择的输出线宽数据所表示的输出线宽相等。
7.按权利要求2、4、6任一项所述的轮廓字体的线宽调整方法,其特征在于调整线宽的文字线为构成文字的横线。
8.按权利要求2、4、6任一项所述的轮廓字体的线宽调整方法,其特征在于调整线宽的文字线为构成文字的竖线。
全文摘要
预先将与原轮廓数据中各数据点的原坐标值相对应的表示该数据点是否为应调整线宽的点的属性数据设定到存储器11内,同时预先存储原线宽数据。在运算器10中,按指定的网格尺寸将原线宽数据变换为处理过尾数的输出线宽数据,然后,利用上述输出线宽数据,将读出的原坐标值数据变换为处理过尾数的输出坐标值数据,以便将属性数据附加到从存储器11读出的原坐标值数据上时,由变换后的输出坐标值数据规定的线宽和变换过的上述输出线宽相等。
文档编号G06F3/00GK1088007SQ9211411
公开日1994年6月15日 申请日期1992年12月10日 优先权日1992年12月10日
发明者大淑郎 申请人:大淑郎
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1