字符发生方法.pdf

上传人:Y0****01 文档编号:713086 上传时间:2018-03-07 格式:PDF 页数:48 大小:1.34MB
返回 下载 相关 举报
摘要
申请专利号:

CN93108464.4

申请日:

1993.07.14

公开号:

CN1082214A

公开日:

1994.02.16

当前法律状态:

终止

有效性:

无权

法律详情:

专利权的终止(未缴年费专利权终止)授权公告日:1995.6.14|||授权|||公开|||

IPC分类号:

G06F3/00

主分类号:

G06F3/00

申请人:

佳能株式会社;

发明人:

吉田政幸; 濑户邦雄

地址:

日本东京

优先权:

1992.07.14 JP 187025/92

专利代理机构:

中国国际贸易促进委员会专利代理部

代理人:

姜华

PDF下载: PDF下载
内容摘要

在由以向量格式存储的数据发生一个字符的情形下,通过提供基构架数据和依赖于一个字样的数据这两种类型的数据,发生多个字样。基构架数据具有一个起始部分、一个中间部分和一个结束部分。或者,基构架数据具有一个构架优先级数据、构架连接数据、字面修改数据或者笔画权数据。当发生字样时,根据一个输出请求,产生位图、字节图、外形坐标类型以及构架坐标类型中的任一个。

权利要求书

1: 一种字符发生方法,其中在由以向量格式存储的数据中发生一个字符的情形下,通过提供基构架数据和依赖于字样的数据的两种数据,产生多个字样。
2: 根据权利要求1的主法,其中所述基构架数据具有一个起始部分、一个中间部分和一个结束部分。
3: 根据权利要求1的方法,其中所述基构架数据具有多个构架。
4: 根据权利要求1的方法,其中所述基构架数据具有构架的连接数据。
5: 根据权利要求1的方法,其中所述依赖于字样的数据具有一个字面的修改数据。
6: 根据权利要求1的方法,其中所述依赖于字样的数据具有一个笔画的权数据。
7: 根据权利要求1的方法,其中当产生字样时,构架类型数据被转换到外形类型数据。
8: 根据权利要求1的方法,其中当产生字样时,根据一个输出请求产生一个位图、一个字节图、一个外形坐标类型和一个构架坐标类型中的任一个。

说明书


本发明涉及一种字符发生方法,它具有将以向量格式编码的字符或类似物转换到点阵格式数据的功能。

    迄今为止,当以输出方式输出多个字样或族时,它们存储在以字样单元基础的ROM中,根据要求的字样内容从存储于ROM中的要求字样的地址处取出必要数据,并且从向量格式数据形成位图格式并与以发生。

    然而,在上述常规例子中,字样数目小时,产品的ROM存储容量不太大。但是,当字样数目增加并相应配备族时,则存在问题,使得安装于产品内的ROM容量极大,而如此大的ROM是不实际的。

    同样存在一个问题,使得在形成请求方的数据类型等于笔画类型的情形下,外形类型数据不能适应这种数据,并且相反,在形成请求方的数据类型等于外形类型的情形下,笔画类型数据不能适应这种数据。

    考虑到上述各点,为解决上述问题,本发明一个目的在于通过提供基笔画数据和字样数据(不管字样的数目,只配备一种基笔画数据是足够的),并通过提供与字样同数目的字样数据,能够在不降低输出质量的前提下减少安装于产品内的ROM容量。

    本发明的另一目地是,通过将类型从笔画类型数据转换到外形类型数据以根据一个请求输出使执行一个字符形成成为可能。

    本发明还有一个目的在于提供一种字符发生方法,其中,在从以向量格式存储的数据发生字符的情形下,通过提供基构架数据的数据和依赖于字样的数据这两种数据,发生多种字样。

    图1为本发明内部结构框图;

    图2为本发明另一内部结构框图;

    图3显示了一种字样及其构架形式;

    图4显示了一种字样及其构架形式;

    图5显示了一种字样及其构架形式;

    图6显示了一种字样及其构架形式;

    图7显示了一种字样及其构架形式;

    图8显示了一种字样及其构架形式;

    图9显示了一种字样及其框架形式;

    图10显示了一种字样及其框架形式;

    图11显示了一种字样及其框架形式;

    图12显示了一种字样及其框架形式;

    图13显示了笔画数据的基本形式;

    图14显示了基构架数据;

    图15显示了基构架数据格式;

    图16是宋体(Ming    Style)横笔画的笔画数据图;

    图17是印刷手写体(Print    hand    style)横笔画的笔画数据图;

    图18显示了字样数据格式;

    图19显示了笔画数据的连接形式;

    图20显示了笔画数据的连接形式;

    图21详细显示了笔画数据的连接形式;

    图22详细显示了笔画数据的连接形式;

    图23为本发明全部过程的流程图;

    图24为形成中间格式数据之前的处理的流程图;

    图25为改变字符字面的计算图;

    图26为中间格式数据的解释图;

    图27是图23流程图中步骤23-3的换算处理的流程图;

    图28显示了在笔画单元基础上将(构架+宽度(thickness))数据转变为外形类型数据的情形下的一个状态;

    图29包含图29A和29B,显示了图23流程图在步骤23-4由向量类型数据形成数据的流程图;

    图30显示了一张涂色表;

    图31图示了或平面某区域正由涂色表进行涂色时的一种状态;

    图32显示了在一个涂色平面和一个或平面之间计算或时的一种状态;

    图33为激光打印机的结构图;以及

    图34为气泡喷墨打印机的结构图。

    现在说明本发明实施例。

    本发明可以由含有多个装置的一个系统实现,也可以由含有一个装置的装置实现。本发明也可用于这种情形,其中通过向一个系统或一个装置提供基于本实施例的方法的程序实现本发明。

    图1为根据本发明的系统的基本结构框图。该系统可以由一台日语文字处理器、一台工作站或一个计算机系统构成。图1中,参考号1表示一个CPU(中央处理单元),它控制整个装置并执行算术运算处理或类似操作;2表示一个ROM(只读存储器),用作存储系统启动程序、字形数据以及类似数据的存储区;3表示一个RAM(随机存取存储器),用作数据存储区,其用途未限定,每个程序和数据在每次处理和执行程序时装入其内;4表示一个KBC(键盘控制部分),它从KB(键盘)5接收键输入数据并传输至CPU1;6表示一个CRTC(显示控制部分);7表示一个CRT(显示装置),它自CRTC接收数据并显示;以及9表示一个诸如FD(软盘设备)或HD(硬盘设备)或类似设备的外部存储设备。程序和数据存储在存储设备9中,运行中需要时访问它们并将它装入RAM。参考号8表示一个DKC(盘控制部分),用于控制数据传输及类似操作;10表示一个PRTC(打印机控制部分);11表示一个PRT(打印机);以及12表示一条系统总线,用作上述组成部件之间的数据通路。

    图2为根据本发明的系统的基本结构框图。该系统可以由一激光打印机、一气泡喷墨打印机、或一个热拷贝传送型或类似型输出装置构成。图2中,参考号1表示CPU(中央处理单元),它用以控制整个装置及执行算术运算处理及类似操作;2表示ROM(只读存储器),用作存储系统启动程序、字形数据及类似数据的存储区;以及3表示RAM(随机存取存储器),用作未限定用途的数据存储区。每个程序以及数据在每次处理和执行程序时装入RAM3。参考号4表示PRTC(输出控制部分),以及5表示PRT(输出装置),它自PRT4接收数据并显示。

    下文详细说明本发明实施例。首先,解释基本数据结构。图3至12中以中国字“風”(读作“fēng”意义“风”)为例分别显示了该字符的最终字形,并显示了各最终字形的构架。图3和4显示宋体(Ming    Style)字的最终的字形及其构架。图5至12以上述类似的方式显示第一黑体(Gothic    StyleⅠ)、第二黑体(Gothic    styleⅡ)、印刷体(text    style)和印刷手写体(print    hand    type)的例子。作为例子考虑到一般竖线,宋体、第一黑体和第二黑体显示为直线。然而,在印刷手写体的情形中,在书写开始部分使用了曲线。同样,印刷手写体的横线略弯。

    图13显示了笔画数据的基本形。在实施例中,笔画基本形分为8类,称为:“竖”(VERTICAL)、“横”(HORIZONTAL)、“撇”(VERTICAL-LEFT    BOTTOM)、“捺”(VERTICAL-RIGHT    BOTTOM)、“点”(POINT)、“提”(SPLASH)等等。

    现在参照图14以“風”为例说明基构架数据。图15示出这些数据的内容。“風”由STR1至STR11共11个笔画构成。下文解释每一笔画。为适合每个字样的笔画数据,设置5个坐标参考点数据(下文称为RP数据)。例如,STR1具有点p1、p2、p3、p4和p5。STR2具有点p1、p6、p7、p8和p9。上述5个坐标参考点分别指明起始点参考数据(下文称为RP1)、起始点-中间部分连接点参考数据(下文称为RP2)、笔画中央部分参考数据(下文称为RP3)、中间部分-结束部分连接点参考数据(下文称为RP4)、以及结束点参考数据(下文称为RP5)。

    构成每个字符的每个笔画数据具有字符笔画序号、一个笔画类型、一个笔画优先级、连接数据(-起始,-中间,-结束)以及RP数据。

    笔画类型利用数字指明诸如“横”、“竖”、或类似笔画的类型。例如,为横线时存储“1”,为竖线时存储“2”。笔画优先级指明相应笔画在字符中的重要程度。例如,根据重要性由高到低的顺序笔画优先级值为1至5。现在假设这些值已分级,以使1表示最粗(thickest)的线,2表示构架线,4表示细(thin)线,5表示最细的线,以及3表示非1、2、4和5相应的一般线。构架线指明字符的外形、贯穿字符中央的长像(long    image)或类似物。最粗的线适用于诸如“一”、“人”或类似字符的、非常简单的可由少量笔画构成的字符的某种笔画的情形。连接数据表示每个起始部分、中间部分和结束部分与另一笔画接触或仅独立于该笔画。当它是独立的时,存储0值。当它与另一笔画接触时,存储与该笔画的序号接触的笔画部分,即存储指明起始部分、中间部分和结束部分之间差别的数据。例如,在起始部分情形下存储1,在中间部分情形下存储2,在结束部分情形下存储3。上述5个坐标参考点数据作为RP数据由坐标形式的坐标值(x,y)存储,坐标中定义了字符。

    图16和17以横笔画为例解释了每个字样的笔画数据的内容。前者显示宋体的例子,后者显示印刷手写体的例子。图16情形下,起始部分具有两个数据Ast和Aed,中间部分具有三个数据Bst、Bim和Bed,以及结束部分具有三个数据Cst、一个中间控制点和Ced。每个起始、中间和结束部分具有相对坐标值(x,y)和相对标准宽度(thickness)值(v,w)。上述数据定义了每字样的每个基笔画的实际形状。每个控制点Ast、Aed、Bst、Bim、Bed、Cst和Ced由图15中的基笔画数据RP1至RP5链接。图17显示了印刷手写体的例子。存储了笔画坐标数据Ast、Aed、Bst、Bim、Bed、Cst和Ced以及其他控制坐标数据。

    上述数据还定义了基笔画连接部分的外形信息。图19图示了横起始部分和竖起始部分连接部分的情况。图20图示了横结束部分和竖结束部分连接部分的情况。因为这些连接数据已存储在基构架数据部分的起始、中间和结束部分,通过参照存储的连接信息访问每个目标数据将这些部分连接起来。参照图24的流程图进行详细说明。

    图18显示了字样数据的格式。作为字样数据,分别为每个字样设置了各数据并且设置了诸如宋体、黑体或类似字体的指针数据。跟踪每个字样的指针,存储字面数据和笔画数据的指针。字面数据用于改变字样的字面外形(将在图24流程图中详述)。至于笔画数据指针,存储每个笔画数据的存储地址。跟踪指向每个笔画数据的指针,存储实际笔画数据。起始部分数目、中间部分数目、结束部分数目、指向权部分(Weight    protion)的指针以及指向每个数据部分的指针都作为笔画数据存储。数据部分包含坐标数据、宽度数据、以及参考数据和曲线数据,它们由基构架数据链接。轻(light)、适中(medium)、半粗(Demi)、粗(Bold)和极粗(ExBold)的宽度(thicknesses)系数参数作为权数据存储。

    从含有如上所述的基构架数据和字样数据的字符数据实际形成字符数据的过程在下文加以说明。图23的输入参数中含有一个字符代码、一个字样、一个族的权数据、一个输出尺寸、一个输出格式及类似参数。字符代码是实际发生的字符的代码,并通常符合日本工业标准(JIS)。字样显示了诸如宋体、黑体或类似体的字符格式。族的权数据用于控制指定字样中笔画的宽度,比如粗(thick)、中粗、中、中细、细(thin)及类似性质。输出尺寸指定点阵尺寸或实际位图的尺寸。输出格式是输出方发生一个字符时要求的格式,比如位图、灰度级(字节图)、外形坐标数据、构架坐标+宽度数据或类似数据。字符数据实际上从上述基数据和输入参数中形成。在图23步骤23-2,含有基构架数据和字样数据的数据被修改到如图26所示的中间数据格式。中间数据格式是这样的,以致指定的字样和族数据都已被分析并替换到坐标值。后续处理过程由中间数据格式控制。图24的流程图给出从基构架数据和字样数据形成中间数据格式的一种方法。在步骤24-1,读取从此访问的字符的基构架数据。本例中,数据已存储在ROM、RAM、硬盘、软盘或类似介质中。在步骤24-2,读取目标字符的字样数据。字样数据以与基构架数据相同的方式存储在ROM、RAM、硬盘、软盘或类似介质中。

    在步骤24-3,转换基构架数据的字面外形。因为所有字样的基笔画的字面外形并非总是统一的,所以必须修改每个字样的字面外形。既然字面的修改数据已作为字样数据的字面数据加以存储,则通过访问字面数据获取修改数据。参照图25为例说明修改字面外形以改变字样的主要过程。图25中,由α、β、γ和δ所围区域显示了一个修改前的字面。由A、B、C和D所围区域显示了已包括在字样参数中的值。执行由α、β、γ和δ所围区域到A、B、C和D所围区域的变换处理。作为该情形下的变换方法,现在解释将α、β、γ和δ所围区域中的点P变换到A、B、C和D所围区域中某位置。现在假设A(ax,ay)、B(bx,by)、C(cx,cy)和D(dx,dy),并假设将直线AD设为l1,将直线BC设为l3,则l1和l3由下列方程式获得。

    l1:y=〔(ay-dy)/(ax-dx)〕×(x-ax)+ay

    l3:y=〔(by-cy)/(bx-cx)×(x-bx)+by

    为获得直线l1和l3交点E的坐标,解关于x和y的方程式足矣。尽管此处略去了方程式的解法,但是假设获得的坐标为E(ex,ey)。当考虑点P变换到那个位置时,应首先考虑应形成哪条直线,使这条线经过点P且与直线aδ平行。因为图中所示比率a1∶b1在修改完成后应不变,所以得到一个点F(fx,fy),使得直线l1和l3截取直线αβ,其内分点置为a1∶b1。通过获得直线EF,而得到了一条轨迹,使得修改后的点P可能经过这一轨迹。这一轨迹l2由下列方程式获得:

    l2:y=〔(ey-fy)/(ex-fx)〕×(x-ex)+ey

    这样,可得知经过点P并平行于直线αβ的直线。求得直线的轨迹,经点P通过且与直线αβ平行的直线通过这一轨迹。首先,求得直线AB和DC的交点G的坐标。现在,假设直线AB和DC分别设为l4和l6,直线l4和l6可由下列方程式求得:

    l4:y=〔(ay-by)/(ax-bx)〕×(x-ax)+ay

    l6:y=〔(cy-dy)/(cx-dx)〕×(x-cx)+cy

    解关于x和y的方程,求得交点坐标G(gx,gy)。经过点P并平行于直线αβ的线段是这样的线段,它总是将直线l4和l6以a3∶b3内分。因此,获得点H(hx,hy),直线l4和l6截取直线αβ,其内分点设为a3∶b3,并得到直线GH,以至获得修改后的点P可能经过的轨迹。轨迹l5由下列方程式获得:

    l5:y=〔(gy-hy)/(gx-hx)〕×(x-gx)+gy

    已知直线l2经过点P并平行于直线aδ,直线l5经过点P并平行于直线αβ。因此,通过解关于x和y的方程式,得到交点,并得到关于点P的修改字面外形后的点Q。图25中,示出了两个方向上投影的例子。也能够变换到随圆和球面上。基构架数据得到修改后,实际形成数据。在步骤24-4,从基构架数据中读取一个笔画的数据。该例中,在字样数据中,从高优先级开始相继取得数据。如上所述,因为有5种优先级,所以首先访问最高优先级的笔画数据。如果存在多个最高优先级的笔画数据,则根据存储顺序,相继读取笔画数据。在步骤24-5,读取起始部分的数据。该例中,通过参照基构架数据部分的起始部分连接信息,从图18中元素的一组起始数据取得起始数据作为目标起始数据。因为到目标起始数据的访问号已存储在基构架数据部分,所以根据访问号取得是足够的。在步骤24-6,参照输入参数的族数据调整笔画宽度。因为如图18所示已根据族的种类记载了宽度系数参数,所以用宽度系数乘以先前数据宽度参数数据(v,w)的值。在步骤24-7,访问中间部分的数据。在该处理中,访问存储于基构架数据部分的中间部分连接数据,并从字样数据中读取这些数据相关的数据。在步骤24-8,通过乘以来自指定族数据的宽度参数获得实际宽度。在步骤24-9,访问结束部分的数据。同样在该处理中,以类似于访问起始部分和中间部分中的数据的方式,首先访问基构架数据中的结束部分连接数据,因而得到目标笔画号。从字样数据中读取相应于笔画号的笔画数据。进而,利用族数据调整宽度(在步骤24-10)。图21示出了连接部分的数据的连接举例。图21示出了横图象起始部分与竖图象起始部分的连接举例。一般来说,横图象起始部分的边缘部分被扩展成一个点放置部分,如图16所示。在连接情形下,这种边缘部分是不需要的。因此,通过保持起始部分作为数据(其边缘部分未加以扩展),可以完美地连接数据。连接结果如图22所示。在步骤24-11如上所述读取了一个笔画的数据后,数据被转换成图26所示的中间格式数据。本例中,一个笔画并未作为一个数据转换成中间格式数据,而是每个起始、中间和结束部分被设置到一个笔画并被转换成中间格式数据。至于中间数据格式中的布局偏移,参照字样数据中的带有基笔画的链数据,得到参考偏移数据并将其存储到中间数据格式。笔画的坐标值和曲线的起始/结束数据直接存储到中间数据格式的笔画数据中。至于角度数据,在步骤24-3执行修改之后,根据每个笔画点角度存储数据。至于宽度数据,直接存储(v,w)的值。如上所述,每个起始、中间和结束部分的数据作为一个笔画存储。如上所述,形成每个笔画的数据。在步骤24-12,检查在形成之后是否产生失真。在得知未联系于连接数据的一对笔画因为笔画和宽度数据而相交的情形下,有必要改变低优先级数据的宽度。因此在步骤24-13,参数被改变到不接触的最小宽度的参数,因而改变中间数据格式的宽度数据。存储可能与中间数据格式的暗示数据(hint    data)部分接触的一个笔画对的数据。这样的笔画对信息用作在执行换算之后避免接触或交叉的信息。在步骤24-14,检查对所有示于图15中的基构架数据是否已完成处理。如果是,则完成处理例程。如果仍存在待处理的数据,则处理例程返回到步骤24-4,读取下一笔画,并重复处理。

    现在详细说明图23的步骤23-3中的处理。图27是详示步骤23-3流程的流程图。该例中作为输入数据,有中间格式数据、换算参数、输出格式以及类似数据,示于图26。在图27的步骤27-1,每个笔画的偏移数据根据换算参数加以放大或缩小。此时,当一个输出格式指明一个位图时,利用换算参数执行计算。当输出格式指明一个字节图时,将换算参数设为两倍、三倍或其他倍,因而改变尺寸以形成灰度级字体(gray    scale    font)。意即,通过放大或缩小每个元素或部首的布局头坐标,决定换算完成之后元素的布局头坐标。在步骤27-2,根据换算参数放大或缩小坐标数据。意即,通过放大或缩小自偏移数据起始的构架数据,确定实际换算的构架的布局坐标。在步骤27-3,根据换算参数放大或缩小宽度数据。意即,通过放大或缩小构架的宽度数据,决定实际换算的构架的元素的宽度。在步骤27-4,对换算数据据执行一个暗示(hint)处理。具体地说,存在一个空间处理,一个在完成加宽处理后的精细调整,以及同类处理。在空间处理中,存在一种情形,即因为在换算时做舍入到最近的整数的处理造成元素相互接触或分离很远。此时为将坐标值设置到正常值,先前已保持了元素间的坐标距离,此时换算其值,因而精细调整元素或部首的布局头坐标值。在加宽调整中,当换算时舍入到最近的整数的处理结果使宽度等于一个奇数时,围绕中央构架以相同距离扩展宽度到构架两侧是足够的。然而,当换算时舍入到最近的整数的处理结果使宽度等于一个偶数时,构架两侧的任一侧作为中心加长。因此,就构架两侧的哪一侧应参照先前存储的暗示数据被加长作出决定。在步骤27-5,利用输入参数判断处理的输出格式种类。在构架格式情形下,产生上至步骤27-4的处理结果并结束处理例程。在外形类输出格式情形下,进入步骤27-6。在步骤27-6至27-11,在笔画单元基上形成外形数据。在步骤27-6,首先搜索换算完成后的数据,并取得作为一个目标的笔画数据。作为目标笔画数据的搜索方法,在运算符需要访问图26的中间格式的第一个笔画数据时,包含布局偏移和指向笔画数据的指针的一对数据的所组成的数组中的第一对数据被访问,并访问指向笔画数据的指针。通过访问指向笔画数据的指针所指明的地址,获得存储在那里的笔画数据。在步骤27-7,存储对数组中布局位置处的偏移数据。由偏移数据获得每个笔画待安排的头坐标。在步骤27-8,从在步骤27-6读取的一个笔画数据中获得一个笔画的数据总数。作为一个笔画的数据总数,在那里已存的一个笔画的数据总数已被存储在图26所示的笔画数据的一个头字中。在步骤27-9和27-10,获得实际外形坐标。在步骤27-9,首先从一个笔画坐标中获得笔画坐标(x,y)、宽度数据(w)和角度(θ)。从这三个数据中获得外形的两个坐标。现在,假设这两个坐标设为a和b,则它们具有下述值:

    a=(x+w/2×cosθ,y+w/2×sinθ)

    b=(x-w/2×cosθ,y-w/2×sinθ)

    这两个坐标必须根据外形次序加以存储。作为存储次序,来自总数(n)个数据和外形坐标数(m)的点存储到第m个区域。类似地,b点存储到第(2n-m+1)个区域。一个外形起始点的标志被添加到第一点坐标。一个外形结束点的标志被添加到第2n点坐标。考虑到曲线起始/结束点,当存储a和b两点时,在它们象a坐标一样被存储到第一个至第n区域的情形下,那时的坐标具有的曲线属性随在其后。另一方面,当象b坐标一样存储到第(n+1)至第2n区域时,曲线的起始标志被转换到结束标志,结束标志被转换到起始标志,并存储数据。在步骤27-10,当对一个笔画的所有数据已经完成外形处理时,处理例程进行到步骤27-11。如果未完成,则处理例程返回到步骤27-9,并重复处理直至完成一个笔画的所有数据的外形处理。图28显示了上述处理的一种状态。图28中一个构架由4个点构成,由各点产生的a坐标和b坐标分别设为a1至a4和b1至b4。外形起始/结束点和曲线起始/结束点示于外形表。在步骤27-11,检查是否对一个字符的所有笔画完成了处理。如果是,则结束处理例程。如果仍存在待处理的笔画数据,则转到步骤27-6,重复上述处理直至对所有笔画完成处理。

    现在说明图23中步骤23-4的处理。图29A和29B详示了步骤23-4的流程。作为该例的输入数据的有换算后的数据格式、一个输出格式、输出竖/横尺寸以及类似数据。首先,在图29A步骤29-1,根据输出数据格式分离处理。当作为(构架+宽度)或外形坐标类型数据请求输出格式时,已经在图27步骤27-5根据数据请求格式形成了换算数据。因此,产生被存数据的指针并结束处理例程。在步骤29-2,检查数据类型是否为(构架+宽度)类型或外形类型。在(构架+宽度)类型的情形下,进入步骤29-3。在外形坐标类型的情形下,转至步骤29-15。形成相应于每种数据类型的字(font)。现在说明在步骤29-3至29-14中(构架+宽度)型的数据类型中字的形成。在步骤29-3,取得一个笔画的数据。本例中数据的取得方法与图27步骤27-6的方法类似。在步骤29-4,从构架类型坐标中计算外形坐标。计算外形坐标的方法与步骤27-9中所述的方法类似。在步骤29-5,从在步骤29-4中存储的外形坐标值中鉴别出目标数据指明一条直线或还是曲线。在直线情形下,转至步骤29-6。在曲线情形下,转至步骤29-8。在步骤29-6,直线并不直接放入存储器,而是从指定直线的两点的坐标形成一个需要涂色的表。如图30的涂色表所示,x坐标值与y坐标值一一对应地加以存储以使不跳过y坐标值。意即,涂色表是这样一张表,当扫描每个y坐标时,表中所存储的两个x坐标之间的区域被涂色。该例中,如图30所示没有点放置在存储平面中。然而,如将要对外型数据详细解释的那样,实际上也能够将点放置在存储平面并加以处理。在步骤29-7,由“或”将直线点放于实际存储平面以产生一个外形。作为该情形下放置点的方法,点并不与每个y坐标一一对应地放置,而是放置与y坐标对应的所有x坐标。例如,图30情形下,注意y5,尽管涂色表联系于x4和x6并作为目标,但是点被放入到存储平面的(x4,y5)、(x5,y5)和(x6,y5)部分。通过执行上述处理,可以阻止一个边缘点、或类似物的消失。当在步骤29-5确定目标数据是一条曲线时,由步骤29-8处理这种情形。在曲线数据情形下,不知道在存储器的哪个位置放置点。因此,曲线数据被分为短直线的集合。如该例中的曲线数据,该数据可以由诸如三次(tertially)样条函数、B样条函数、三次贝塞尔(Bezier)函数、二次贝塞尔函数、弧线或类似函数的任何曲线表示。将上述曲线函数转换成一个短矢量集之后,在步骤29-9形成一张涂色表。在步骤29-10将点放到一个或面上。步骤29-9和29-10的处理与上述步骤29-6和29-7中的处理基本相同。在步骤29-11,检查是否已经对在步骤29-8中形成的所有直线完成了处理。当仍存在待处理的短矢量时,处理例程返回到步骤29-9并执行处理。当对所有短矢量完成了处理时,转至步骤29-12。在步骤29-12,检查对一个笔画数据是否已完成了步骤29-5到29-11之间的处理。如果否,则处理例程返回到步骤29-5并重复类似处理。如果是,则根据上述处理中形成的涂色表对含有一个构架的笔画地行涂色。该例中,在存储器的存储区域对笔画上色,其中由“或”放置操作只画出了外形。图31显示了该例的一种状态。图31给出“木”的数据的一种状态。图31的部分1,2都已经形成。在部分3,已经完成了“或”的放置操作,并表明根据涂色表正在执行涂色操作的一种状态。涂色表和构架的偏移值相加,并且对涂色表中两个x坐标之间的部分进行涂色。例如,考虑y2,在x6+x偏移与y2+y偏移的行的x4+x偏移之间的位置1。完成涂色处理后,进入步骤29-14,并检查是否已完成对一个字符的所有数据的处理。如果是,则转步骤29-27。如果否,则处理例程返回步骤29-3,并重复上述处理,直至完成对所有构架数据的处理。在构架数据类型情形下的处理在上文已述。现在根据步骤29-15至29-26的处理说明数据类型为外形类型的情形。在步骤29-15,读取一个笔画的外形数据。一个笔画的数据具有图28所说明的数据格式。在步骤29-16,检查作为目标的数据是否指明一条直线或曲线。当目标数据指明一条直线时,进入步骤29-17。当它指明一条曲线时,进入步骤29-19。在步骤29-17,将一个x坐标的点放到关于一条直线的一个y坐标处,如图30的涂色平面所示。尽管该例中未使用涂色表,但是也可以通过以类似于关于构架类型的数据情形下所详述的方式利用涂色表执行这些处理。在步骤29-18,将点放置到或平面。此时点的放置方式类似于在步骤29-7构架类型数据的情形下所述的方式。步骤29-19涉及当前目标数据指明一条曲线的情形。因为在曲线情形下并不能直接执行点放置操作,曲线数据被转换到直线数据并形成一个短矢量集合。在步骤29-20和29-21,将点放置到涂色平面和或平面。此时的点放置方式基本上与步骤29-17和29-18中所述的相同。在步骤29-22,检查是否已完成对短矢量集合中的所有数据的处理。如果是,则转到步骤29-23。如果仍存在待处理的数据,则处理例程返回到步骤29-20,并重复处理例程,直至完成对所有短矢量数据的处理。在步骤29-24,对涂色平面中的区域执行涂色处理。该例在涂色处理中,从每行的左侧向右侧执行扫描操作,并将从首先发现的黑(black)点到其次发现的黑点范围之内的点全部转换成黑点。扫描操作还对这样的行进行执行。将从其次发现的其次黑点到后续发现的黑点范围之内的点全部转换成黑点。其后重复类似处理。重复处理例程,直至完成对所有行的处理。在步骤29-25,步骤29-24中形成的涂色模式被传送到或平面。作为此时的传送方法,当同或平面上已存在的数据“或”时数据被传送。图32显示了该例的一种状态。在步骤29-26,检查是否已经完成对一个字符的所有数据的处理。如果是,则转步骤29-27。如果仍存在待处理的数据,则处理例程返回到步骤29-15,并且再次读取一个笔画的数据,因而产生位图字形(font)数据。如上所述,通过步骤29-3至29-14的处理,从构架数据形成位图。通过步骤29-15至29-16的处理,从笔画的外形数据形成位图。在实施例中,在构架类型数据的情形下,通过利用涂色表执行涂色操作。在笔画的外形类型数据的情形下,通过实际上将点放置到存储平面上执行涂色操作。然而在涂色方法中,关于是否利用涂色表或将点放置到存储平面的判定并不依赖于笔画的构架数据或外形数据。因此,能够利用任一种数据类型和任一处理方法。在步骤29-27和29-28,检查是否由输出格式将形成的位图数据转换到字节图格式的数据。首先,在步骤29-27,检查输出请求是否参照输出请求参数指示字节图或位图。在字节图请求情形下,进入步骤29-28。在位图情形下,处理例程在此完成。在步骤29-28,从位图字形形成灰度级字形。在此时的处理中,因为通过换算形成的位图比最终输出请求的尺寸的二或三倍的数量级略大,所以在这样大的位图的数据的基础上形成灰度级字形的数据。在此省略该情形下的处理方法,因为它已在JP-A-3-154096中详述。在此形成灰度级字形,并且完成图29中的对诸如位图或类似数据的数据的形成处理。

    现在说明图23步骤23-5的处理。该步骤中,处理是根据请求方的输出请求将数据传送到请求方。因为在步骤23-3和23-4形成相应于请求方输出请求的字形,所以除将数据传送到请求方指定的缓冲区的处理以外,并不执行其他处理。现在说明请求方的输出举例。例如,在一台激光打印机(LBP)、气泡喷墨打印机(BJ)或类似打印机的打印机输出情形下,打印机产生一个对位图的请求。因此,在图29的处理例程中执行处理直至位图形成,并将数据返回到打印机方。在来自诸如CRT或类似显示器的输出请求的情形下,根据输出尺寸或显示速度请求位图或灰度级字形。因此,在图29的处理例程中执行位图形成或字节图形成处理,并将数据返回到显示器。在输出设备产生一个请求以致数据被转换到附录(postscript)格式数据并被产生的情形下,请求外形类型数据。因此,当在图29的处理例程中外形类型格式被设置到一个输出时,数据被返回。在将数据送到一个ASIC或类似设备以实现高处理速度的情形下,需要根据ASIC要求的规格将数据转换成该格式的数据。因此,当ASIC要求的规格指明外形类型时,在图29的处理例程中产生外形类型的数据格式。当ASIC要求的规格指明(构架+宽度)的格式时,产生(构架+宽度)的格式数据,并将数据返回。

    根据以上详述的本发明,通过提供基数据笔画部分以及字样参数,即使在安装有多个字样或族的情形下,也能减少产品的ROM数据容量。再者,因为根据要求的格式执行形成,所以能够提供适用于任何输出装置的字符发生方法。

    现在参照图33和34说明一台激光打印机和一台喷墨打印机而非一台计算机的结构,作为能够实施的实施例的字符发生方法的实例。施用本实施例的打印机并不限于激光打印机和喷墨打印机而且适用于其他打印系统的任何打印机。

    图33显示能施用本发明的第一种记录装置的结构的剖示图。例如,图33显示了一台激光打印机(LBP)的情形。

    图中,参考号1500表示LBP主体。LBP1500接收并存储外界连接的主计算机提供的打印数据(字符代码或类似数据)、格式数据、宏指令以及类似数据。根据这些数据,LBP形成相应的字形、格式模式以及类似模式,并在作为记录介质的记录纸上形成一个图象。参考号1501表示一个操作面板,其上设置了操作开关、LED显示和类似装置。参考号1000表示一个打印机控制单元,用于控制整个LBP主体1500,并用于分析由主计算机提供的字符数据或类似数据。打印机控制单元1000主要将字符数据转换成相应字形的视频信号,并向激光器驱动器1502提供视频信号。激光器驱动器1502是一个驱动半导体激光器1503的电路。根据输入的视频信号,激光器驱动器1502接通/断开从半导体激光器1503发射的激光束1504。激光束1504由转动多角镜1505偏向右边和左边并扫描静电鼓1506并暴光。这样,在鼓1506上形成字形的静电潜象。潜象由设置在鼓1506周围的形成单元1507形成,之后被拷贝输出到记录纸上。用切片(cut    sheet)作为记录纸张。切片记录纸封装在LBP主体1500的纸盒1508中。切片一张一张地由进纸轮1509、送纸轮1510和1511拾取并传送入装置主体,并送到鼓1506。

    图34是施用本发明的第二记录装置的结构的外部视图。例如,图34显示了一台喷墨记录装置(IJRA)的情形。

    图中,引导螺杆5005通过传送齿轮5011和5019的驱动力根据驱动电机5013的前进/后退旋转而被转动。托架HC具有一个销(未示出),啮合到引导螺杆5005的螺旋槽5004。托架HC在箭头a和b所示方向上往复。喷墨盒IJC安装在托架HC上。参考号5002表示一块压纸板,其从托架移动方向将纸张压到卷筒5000上。参考号5007和5008表示光耦合器,用作原位探测装置,其功能是当探测到托架的杆5006存在于光耦合器的范围之内时,执行电机5013或类似装置的转动方向的切换操作。参考号5016表示指明一个将记录头的整个表面罩住的罩构件5022的一个组件;以及5015表示用于吸取罩内空气的吸取装置。吸取装置通过罩内的孔5023执行记录头的吸取复原。参考号5017表示一个可由组件5019在前/后方向移动的一个除垢切片;5018表示一块用于支撑除垢切片5017和组件5019的主体支板;以及5021表示一个用于在吸取复原中起动吸取操作的杆。由于啮合于托架的凸轮5020的移动,而移动杆5021。驱动电机的驱动力由诸如离合切换设备或类似设备的已知传送装置传送和控制。

    当托架到达原位侧区域时,可以由引导螺杆5005的操作执行罩住、清垢和吸取复原中的一种希望的处理。足能够如此构造以致以已知的定时执行希望的操作。

    根据如上所述的本发明,通过提供基笔画数据和字样数据,利用一个基笔画数据而不管安装的字样个数是足够的。通过提供与字样数目一样多字样数据,可能减少产品中安装的ROM的存储容量,而不降低输出质量。

    根据本发明,通过将笔画类型数据转换到外形类型数据,能够根据要求的输出格式执行字符形成。

    根据本发明,在由以向量格式存储的数据中发生一个字符的情形下,通过提供在构架数据和依赖于字样的数据这两种数据,能够提供用于产生多个字样的一种字符发生方法。

字符发生方法.pdf_第1页
第1页 / 共48页
字符发生方法.pdf_第2页
第2页 / 共48页
字符发生方法.pdf_第3页
第3页 / 共48页
点击查看更多>>
资源描述

《字符发生方法.pdf》由会员分享,可在线阅读,更多相关《字符发生方法.pdf(48页珍藏版)》请在专利查询网上搜索。

在由以向量格式存储的数据发生一个字符的情形下,通过提供基构架数据和依赖于一个字样的数据这两种类型的数据,发生多个字样。基构架数据具有一个起始部分、一个中间部分和一个结束部分。或者,基构架数据具有一个构架优先级数据、构架连接数据、字面修改数据或者笔画权数据。当发生字样时,根据一个输出请求,产生位图、字节图、外形坐标类型以及构架坐标类型中的任一个。 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1