形成字形的方法和设备、所产生的字形及绘制渗开图的方法和设备的利记博彩app

文档序号:6410197阅读:304来源:国知局
专利名称:形成字形的方法和设备、所产生的字形及绘制渗开图的方法和设备的利记博彩app
技术领域
本发明涉及形成被用于在显示设备上显示渗开的字符或符号的字形的方法和设备。本发明还涉及用这种方法和设备产生的字形。本发明涉及利用计算机在显示设备上显示渗开图的方法和设备。
当利用计算机在显示设备上显示字符或符号时,根据该字符或符号的字形在显示设备上对该字符或符号进行显示。
这种字形的例子是由例如24×24点的矩阵定义的、用一组这些点显示字符或符号的位图字形,或者是由在字符或符号的轮廓上的多个点和互连这些点的曲线定义的、用互连这些点的曲线显示字符或符号的轮廓字形。
这些传统的字形只包含与字符或符号的轮廓有关的数据。根据这些字形显示的字符或符号的轮廓线往往是明确的,即字符或符号轮廓线内和外的部分在颜色方面是统一的,例如分别是黑和白。
当用例如毛笔在纸上实际书写字符或符号时,往往在字符或符号的周围出现渗开,或者字符或符号会变得模糊。因此字符或符号在轮廓方面不必是明确的。
这样的渗开或变模糊表示了尤其是当用毛笔在纸上书写字符或符号时的关键要素。就是说,当在纸上实际书写字符或符号时,考虑了变模糊或渗开的作用以便更富于表情地表示字符或符号。
如果当利用计算机在显示设备上显示字符或符号时能够显示这种变模糊或渗开的字符或符号,就能够更富于表情地显示字符或符号。
但是,如上所述,传统的字形只包括与字符或符号的轮廓有关的数据,因此字符或符号的轮廓被明确地画出,轮廓的内部和外部在颜色方面是统一的,例如是黑色和白色。就是说,到目前为止还没有能够在显示设备上显示模糊或渗开的字符或符号的字形。
由于到目前为止还没有能够在显示设备上显示模糊或渗开的字符或符号的字形,所以也就没有形成能够在显示设备上显示模糊或渗开的字符或符号的字形的方法和设备。
在利用计算机作图的计算机图形学中,彩色显示的三色数据和单色显示的亮度数据被设定为作为最小的图象单元的每一象素的图象数据,而相应的图象、包括字符或符号根据基于象素的图象数据被显示在显示设备上。
在这种计算机图形学中最简单的绘图方法是形成被线条包围的区域并在该区域中均匀地作图。
由于对利用这种方法得到的图象显示有限制,所以已经提出了各种绘图方法以便实现更有表情的图象显示。
在已知的绘图方法中,有这样的方法,即根据利用作为坐标数据输入设备的指点器、例如鼠标输入的坐标数据绘图,与指点器的移动同步地绘出了图,模仿了利用毛笔的绘图。还有这样的绘图方法,即与指点器的移动同步地绘图,颜色随着绘图过程的进行变浅,模仿了利用毛笔的书写和由于毛笔所含墨水浓度和墨水量的变化造成的颜色的变化。此外,还有这样的绘图方法,该方法通过沿从指定的位置朝外的方向减轻颜色浓度和随着绘图过程的进行增强颜色浓度模仿了利用气刷(air brush)的绘图。
当利用含有墨水、墨汁或水彩颜料、此后统称为墨水的毛笔在纸上实际作画时,如果毛笔含有的黑水量很少、毛笔书写速度很快或书写压力很轻,就会出现墨水没有充分地被纸张吸收、图象区域的一部分没有墨水的情形,这就形成了渗开。这种渗开是可表达性方面极重要的要素,尤其当用毛笔书写字符或符号或者当利用水彩、特别是墨汁作图时更是如此。
在利用计算机在显示设备上显示这种渗开的传统方法中,假定用含有墨水的毛笔来画图并且对毛笔的所含墨水的浓度和数量进行计算,墨水的浓度和数量随着绘图过程的进行而减小,以便在毛笔中的墨水的浓度和数量已小于预值之后形成渗开。
应当指出,当利用毛笔实际作画时,如果图形具有增大的长度和若干处折弯,或者在作画过程中毛笔书写速度或毛笔的压力发生变化,则渗开就会在图画的多个位置处出现。
对于传统的渗开图画绘图方法,由于毛笔所含墨水的浓度或数量只是随着绘图过程的进行而减小,因此只能够在图画的结束位置处形成一个渗开的部分,不能够获得有表情的图象表示。特别是如上所述书写的渗开字符在可表达性主面明显不如利用毛笔实际书写的字符。
因此,本发明的目的是提供能够在显示设备上显示模糊或渗开字符或符号的字形,以及形成这种字形的方法和设备。
在本发明的一个方面中,提供了形成字符或符号的字形的方法,该方法包括以下步骤输入位于规定了字符或符号的一划的笔划的轮廓上的多个坐标数据,准备出包括多个输入坐标数据的笔划数据并将输入坐标数据之一作为规定笔划的开始点的坐标数据或作为规定笔划的结束点的坐标数据,形成包括单笔划或多笔划数据的字符或符号的字形。
在本发明的另一个方面中,提供了形成字符或符号的字形的设备,该设备包括输入位于规定了字符或符号的一划的笔划的轮廓上的多个坐标数据的装置,准备出包括多个输入坐标数据的笔划数据并将输入坐标数据之一作为规定笔划的开始点的坐标数据或作为规定笔划的结束点的坐标数据的装置,以及形成包括一个或多个笔划数据的字符或符号的字形。
在再一个方面,本发明提供了字符或符号的字形,在该字形中,字符或符号由各表示毛笔的一划的单个笔划或多个笔划组成,笔划数据由规定在轮廓上的笔划的位置的多个坐标数据和规定该笔划的开始点或结束点的坐标数据组成。
根据本发明,位于表示字符或符号一划的笔划的轮廓上的多个坐标数据被坐标输入装置输入。笔划数据形成装置形成由被坐标输入装置输入的多个输入坐标数据组成的笔划数据,这些坐标数据之一作为规定该笔划的开始点的坐标数据或规定该笔划的结束点上的坐标数据。根据由笔划数据形成的装置形成的单笔划或多笔划数据来形成字符或符号。
由于字形包含了与字符或符号的书写顺序有关的信息,所以就能够把书写字符或字形的毛笔的移动考虑进去,并由此能够在显示设备上显示模糊或渗开字符或符号。
本发明的目的是提供绘制渗开图画的方法和设备,利用该方法或设备就能够按照确保更有表情的表示方式在图象的任意位置处形成两个或两个以上的渗开部分。
一方面,本发明提供了根据在图象多个象素中被设定的图象数据在显示设备上显示渗开图象的方法。利用本方法,读出包括了位于从图象的开始点到结束点的第一轮廓上的一个或多个坐标点Ai(i=1,2,3,......)的第一轮廓数据和包括了位于从开始点到结束点的第二轮廓上的一个或多个坐标点为Bj(j=1,2,3,......)的第二轮廓数据。检测在互连第一轮廓数据的第k个坐标点Ak和第二轮廓数据的第k个坐标点Bk的线段lk上的象素P。然后根据表示图象的渗开区域的渗开区域数据判断象素P是否在渗开区域内。如果象素P在渗开区域内,就将表示墨水用尽状态的无墨水数据设定为在象素P中的图象数据。如果象素P不在渗开区域内,就将表示含有墨水状态的有墨水数据设定为在象素P中的图象数据。检测在互连第一轮廓数据的第(k+1)个坐标点Ak+1和第二轮廓数据的第(k+1)个坐标点Bk+1的线段lk+1上的象素Q。然后根据渗开区域数据判断象素Q是否在渗开区域内。如果象素Q在渗开区域内,就将表示墨水用尽状态的无墨水数据设定为在象素Q中的图象数据。如果象素Q不在渗开区域内,就将表示含有墨水状态的有墨水数据设定为在象素Q中的图象数据。检测在互连象素P和Q的线段上的象素R。根据在象素P和Q中设定的各个图象数据在象素R中设定图象数据。
在本发明的另一个方面中,提供了根据在图象的多个象素中被设定的图象数据在显示设备上显示渗开图象的设备。该设备包括读出包括了位于从图象的开始点到结束点的第一轮廓上的一个或多个坐标点Aj(i=1,2,3,......)的第一轮廓数据和包括了位于从开始点到结束点的第二轮廓上的一个或多个坐标点Bj(j=1,2,3,......)的第二轮廓数据的装置,以及根据由数据读出装置提供的第一轮廓数据和第二轮廓数据检测在互连第一轮廓数据的坐标点Ai和第二轮廓数据的坐标点Bi的线段li上的象素的第一象素检测装置。该设备还包括根据表示图象的渗开区域的渗开区域数据判断被第一象素检测装置检测的象素是否在渗开区域内的第一图象数据设定装置,以及如果该象素在渗开区域内就将表示墨水用尽状态的墨水数据设定为在该象素中的图象数据、如果该象素不在渗开区域内就将表示含有墨水状态的有墨水数据设定为在该象素中的图象数据的装置。该设备还包括检测在由第一象素设定装置设定的、位于线段li上的象素和位于线段li+1上的象素中间的象素的第二象素检测装置,以及根据被第一图象数据设定装置设定的、位于线段li上的象素的图象数据和位于线段li+1上的象素的图象数据在被第二象素检测装置检测的象素上设定图象数据的第二图象数据设定装置。
图1是表示图象显示系统典型结构的方框图。
图2表示字符实例。
图3表示图2所示字符的第一笔划。
图4表示图2所示字符的第二笔划。
图5表示笔划的数据。
图6表示图3所示笔划的数据实例。
图7表示图4所示笔划的数据实例。
图8是表示说明性的字形形成处理器的方框图。
图9表示输入坐标点和互连这些坐标点的直线的实例。
图10表示输入坐标点和互连这些坐标点的曲线的实例。
图11是说明字形形成处理器的操作的流程图。
图12是将坐标点作为笔划数据进行输入的流程图。
图13是表示纸纤维结构数据实例的示意图。
图14是表示在象素O和相邻象素Pi上排列的纤维实例的示意图。
图15是表示纸纤维结构数据形成装置的说明性结构的方框图。
图16是说明表示纤维形状的数据实例图。
图17是说明表示纤维位置的数据实例图。
图18是说明表示纤维方向的数据实例图。
图19是表示纸纤维分布数据形成装置的例示性结构的方框图。
图20是说明纸纤维分布数据形成装置的操作的流程图。
图21是表示被点排列单元随机地排列的典型的多个点的示意图。
图22是表示在各自的位置处被均匀单元均匀的典型的多个点的示意图。
图23是表示由小区域形成装置形成的典型的小区域的示意图。
图24是表示被随机排列单元随机地排列的典型的纤维数据的示意图。
图25是表示排列在象素上的典型的纤维的示意图。
图26是表示毛细管计算单元的说明性结构的方框图。
图27是表示Mi根纤维的示意图,在随机排列的相邻纤维之间有交叉角。
图28是说明光透射率计算单元的操作的流程图。
图29表示呈现渗开的说明性图形。
图30表示被渗开处理器处理的图形实例。
图31表示满轮廓数据的说明性数据结构。
图32是表示绘图轨迹实例的示意图。
图33示出了被渗开区域数据表示的渗开数据实例。
图34表示被图32的渗开区域数据表示的渗开区域实例。
图35是表示渗开参数的数据结构的示意图。
图36表示渗开参数和渗开区域之间的关系。
图37表示中断的渗开。
图38表示连续的渗开。
图39是表示形状数据的数据结构的示意图。
图40表示曲率ri。
图41是表示图象数据的数据结构实例的示意图。
图42是表示毛笔数据的数据结构实例的示意图。
图43是表示渗开处理器说明性结构的方框图。
图44是表示毛笔数据说明性结构的方框图。
图45表示在毛笔上的几个点的墨水数量输入的状态。
图46表示在毛笔上的几个点的墨水浓度输入的状态。
图47表示在毛笔上的几个点的墨水浓度输入的状态的实例。
图48表示在毛笔上的几个点的墨水浓度输入的状态的另一实例。
图49表示数据阅读器说明性结构的方框图。
图50是表示渗开参数设定单元说明性结构的方框图。
图51表示速度分布数据的说明性数据结构。
图52是表示墨水数据设定单元的说明性结构的方框图。
图53是说明渗开参数设定单元的操作的流程图。
图54至57是表示图53所继续的流程图。
图58是表示在被变换为双电平数据之前的速度分布数据和毛笔压力分布数据的实例的示意图。
图59是表示在被变换为双电平数据之后的速度分布数据和毛笔压力发布数据的实例的示意图。
图60是表示带有产生渗开所用数据的毛笔的实例的示意图。
图61是说明渗开区域数据形成装置的操作的流程图。
图62是说明轮廓数据选择器的操作的流程图。
图63是说明墨水数据设定单元的操作的流程图。
图64是表示ti=1.0、0.5或0.3的区域的实例。
图65是说明第一渗开参数计算单元的操作的流程图。
图66是表示图65继续的流程图。
图67是表示图66继续的流程图。
图68至87分别表示模式1至20的渗开实例。
图88表示在象素中的两根纤维之间的间隙中的墨水的实例。
图89表示在象素中的两根纤维之间的间隙中的墨水占据的区域的实例。
图90表示在象素中的n根纤维之间的间隙中墨水的实例。
图91是表示毛细管的示意图。
图92是表示渗开处理器说明性结构的方框图。
图93是表示一些象素和毛细管的实例以便说明被毛细管连接的象素的示意图。
图94是表示一些象素和毛细管的另一实例以便说明被毛细管连接的象素的示意图。
图95是表示分支点象素实例的示意图。
图96是表示从象素Ai至墨流分支点象素的一组象素实例的示意图。
图97是表示从象素Ai至墨流分支点象素的一组象素另一实例的示意图。
图98是表示从象素Ai至墨流分支点象素的一组象素再一实例的示意图。
图99是表示用于产生渗开的区域实例的示意图。
图100是表示纸纤维结构数据说明性结构的示意图。
图101是表示轮廓数据说明性数据结构的示意图。
图102是表示当前数据说明性数据结构的示意图。
图103是表示紧接在后面的数据的说明性数据结构的示意图。
图104是表示渗开图象数据例示性数据结构的示意图。
图105是表示亮度数据说明性数据结构的示意图。
图106是说明渗开处理器的操作的流程图。
图107是表示图106所示流程图继续的流程图。
图108是表示图106至107继续的流程图。
图109是表示图106至108继续的流程图。
图110是表示图106至109继续的流程图。
图111是表示在考虑到因墨流碰撞而引起墨水颗粒的扩散的情况下设定渗开图象数据的方法的示意图。
图112表示呈现模糊和渗开的字符实例。
图113表示在进行去阶梯处理之前图象的轮廓。
图114表示利用渗开处理进行去阶梯时产生的图象的轮廓。(1)图象显示系统的总体结构现在参看附图详细说明用于产生纸纤维结构数据的方法和设备、纸纤维结构数据、以及用于绘制渗开图象的方法和设备。在以下的实施例中,本发明被应用于通过根据基于象素的图象数据显示各个象素来显示由一组象素组成的图象的图象显示系统。
参看图1,本发明的图象显示系统包括利用中央处理单元(CPU)处理数据的数据处理器10,以及被提供了输入数据和被设置用于将该输入数据提供给数据处理器10的输入设备1。该图象显示系统还包括产生图象的图象数据并将该图象数据提供给数据处理器10的图象读出单元2,以及暂存数据处理器10进行数据处理所需的软件或数据或存储数据处理器10产生的数据的内部存储设备(存储器)3。该图象显示系统还包括存储数据处理器10进行数据处理所需的软件或数据的外部存储设备4和显示从被数据处理器10处理的数据中获得的图象显示设备5。
数据处理器10包括根据由输入设备1或图象读出设备2提供的图象数据形成产生渗开或模糊字符或符号的图象数据所需的字形的字形形成处理器20,以及形成模仿纸纤维结构的纸纤维结构数据的纸纤维结构数据形成处理器30。该数据处理器10还包括根据输入设备1提供的数据、字形形成处理器20形成的字形和纸纤维结构数据形成装置30形成的纸纤维结构数据形成模糊图象的图象数据的模糊处理单元40,以及根据输入设备1提供的数据和在模糊处理单元40中形成的图象数据形成渗开图象的图象数据的渗开处理单元50。
输入设备1由例如鼠标这样的指点器或键盘组成。用户向输入设备1输入数据,例如坐标数据、参数或命令。输入的数据然后提供给数据处理器10。当然可以组合地使用多个这样的输入设备。
数据处理器10根据这些输入数据在字形处理单元30中形成产生渗开或模糊字符或符号所需的字形。此外,数据处理器10在模糊处理单元40或渗开处理单元50中分别形成模糊图象的图象数据或渗开图象的图象数据。
如果需要的话,数据处理器10从外部存储设备4读出进行数据处理所需的软件或数据,或者将在进行数据处理时产生的数据写入外部存储设备4。此外,数据处理器10从存储器3读出进行数据处理所需的软件或数据,或者将在进行数据处理时产生的数据暂存在存储器3中。
就是说,存储器3用来暂存数据处理器10进行数据处理所需的软件和数据或者暂存数据处理器10进行数据处理所产生的数据。如果需要,软件或数据就从存储器3向数据处理器10传送或从数据处理器10向存储器3传送。外部存储设备4用来存储数据处理器10进行数据处理所需的软件或数据或者存储数据处理器10进行数据处理所产生的数据。如果需要,软件或数据就从外部存储设备4向数据处理器10传送或从数据处理器10向外部存储设备4传送。对用作外部存储设备4的记录介质没有特殊的限制,只要能够存储其所记录的软件或数据就可以。因此记录介质例如可以是硬盘,软盘,磁光盘,光盘或磁带。当然可以组合地使用多种这样的记录介质。
软件的实例包括形成产生渗开或模糊字符或符号的图象数据所需的字模的软件,形成模仿纸纤维结构的纸纤维结构数据的软件,形成模糊图象的图象数据的软件和形成渗开图象的图象数据的软件。
进行数据处理所需的数据的实例包括已有的字形或各种参数,数据处理所产生的数据的实例包括字形形成处理器20、纸纤维结构数据形成处理器30、模糊处理单元40或渗开处理单元50暂时形成的各种数据,字形形成处理器20进行字形形成时形成的字形的数据,纸纤维结构数据形成处理器30进行纸纤维结构数据形成时形成的纸纤维结构数据,模糊处理单元40进行模糊处理时形成的图象数据以及渗开处理单元50进行渗开处理时形成的图象数据。
被数据处理器10处理的数据在显示设备5上进行显示。显示设备5显示源自于字形形成处理器20形成的字形的字符或符号、源自于纸纤维结构数据形成处理器30形成的纸纤维结构数据的图象、源自于模糊处理单元40形成的图象数据的图象或源自于渗开处理单元50形成的图象数据的图象。对显示设备5没有限制,只要能够显示被数据处理器10处理的数据就可以。因此显示设备5可以是显示单元、打印机或绘图仪。当然可以组合地使用多个这样的显示设备。
图象读出设备2用来阅读图象的形状并将其变换为被提供给数据处理器10的图象数据。该图象数据被用来在字形形成处理器20中形成的字形。就是说,如果需要根据手写字符来形成字形,就在纸上写出这样的字符并将该字符的图象数据读入到图象读出单元2中,以便然后能被提供给数据处理器10来显示从该图象数据获得的图象。用户在参看该被显示的图象的同时利用例如鼠标这样的输入设备来输入坐标数据。字形形成处理器20然后利用给其提供的坐标数据形成字形。
数据读出设备2用来从外部读入图象的形状并将其提供给数据处理器10。因此,如果不需要从外部读入图象的形状,就可以省略数据读出单元2。对图象读出单元2没有特殊限制,只要能够将图象的形状变换为图象数据就可以。因此可以将例如图象扫描仪或摄像机作为图象读出设备2。可以组合地使用多个这样的图象读出设备。(2)字形形成处理器参看图2至12描述字形形成处理器20的优选实施例。在以下的描述中,笔划指字符或符号的一划。即图2所示的字符MJ“+”由图3所示的第一笔划SR1和图4所示的第二笔划SR2组成。(2-1)字形参看图2至12描述字形形成处理器20形成的字形。
当利用毛笔在纸上写字符或符号时,根据运笔方式的不同,在该字符或符号的周围出现渗开或在该字符或符号中产生了模糊。因此,为了形成真实地表示如同利用毛笔用墨汁在纸上实际地书写的字符或符号的图象数据,就需要仔细研究在书写字符或符号时毛笔是如何移动的。
字形形成处理器20根据以上考虑所形成的字形是具有在笔划方向有关的数据的字形,它由一个或多个笔划数据组成。如图5所举例的那样,每一笔划数据由第一轮廓数据和第二轮廓数据组成,第一轮廓数据由顺序地表示在从该笔划SR的开始点PS直到结束点PE的轮廓RN1上的各位置的多个坐标点组成,而第二轮廓数据由顺序地表示在从该笔划SR的开始点PS直到结束点PE的轮廓RN2上的各位置的多个坐标点组成。第一轮廓数据由规定开始点PS的坐标点(Xs,Ys)、在第一轮廓RN1上的几个坐标点(X11,Y11),(X12,Y12)......(X1n,Y1n)以及规定结束点PE的坐标点(Xe,Ye)组成。第二轮廓数据由规定的开始点PS的坐标点(Xs,Ys)、在第二轮廓RN2上的m个坐标(X21,Y21),(X22,Y22)......(X2m,Y2m)以及规定结束点PE的坐标点(Xe,Ye)组成。应当指出,n和m的值是不小于0的整数,可以相同或不相同。
在上述第一轮廓数据和第二轮廓数据中,如果在准备笔划数据时指定了规定开始点PS的坐标点,则所指定的坐标点就被作为规定开始点的坐标点(Xs,Ys)。如果没有进行特别的指定,则最先输入的坐标点就被作为规定开始点的坐标(Xs,Ys)。另一方面,如果在准备笔划数据指定了规定结束点PE的坐标点,则所指定的坐标点就被作为规定结束点的坐标点(Xe,Ye)。如果没有进行特别的指定,则最后输入的坐标点就被作为规定结束点的坐标点(Xe,Ye)。
对于这样的笔划数据,由于确定了规定笔划开始点的坐标点(Xs,Ys)和规定笔划结束点的坐标点(Xe,Ye),所以就知道了笔划的方向。因此,当书写用由这样的笔划数据组成的字形表示的字符或符号时就能够知道毛笔的移动。通过根据这样的字形准备出字符或符号的图象数据,就能够获得给出了如同用毛笔书写字符或符号这样的印象的真实表达。
当利用毛笔在纸上用墨水写字符或符号时,如果书写字符或符号的顺序、即笔划顺序改变,则笔划重叠的顺序就会改变,所以也改变了所形成的渗开或模糊。因此,如果要产生图象数据以便更真实地描述字符或符号,产生如同用毛笔书写字符或符号这样的印象的话,就必须考虑笔划顺序。
因此,在字形形成处理器20形成的字形中,各个笔划数据按照书写顺序排列,以便笔划顺序将会被知道。应当指出,如果在准备笔划数据时指定了数据顺序,则笔划数据的顺序就是被指定的数据顺序。如果没有进行特别的指定,笔划数据顺序就是输入顺序。笔划数据顺序不需要通过按照书写顺序对笔划数据进行排列来设定。例如,可以通过确定规定了各个笔划数据的顺序的顺序数据来设定笔划数据。
以图2所示读作“+”的符号MJ为例来详细描述上述字形。
读作“+”的符号MJ由图3所示的第一笔划SR1和图4所示的第二笔划SR2组成。
参看图6,第一笔划SR1的数据由第一轮廊数据和第二轮廓数据组成,第一轮廓数据由规定第一笔划SR1的开始点的坐标点(Xs1,Ys1)、例如四个点(X11,Y11)、(X12,Y12)、(X13,Y13)、(X14,Y14)以及规定第一笔划SR1的结束点的坐标点(Xe1,Ye1)组成,这些坐标点就按这样的顺序排列,第二轮廓数据由规定开始点PS1的坐标点(Xs1,Ys1)、例如四个(X21,Y21)、(X22,Y22)、(X23,Y23)、(X24,Y24)以及规定上述结束点PE1的坐标点(Xe1,Ye1)组成,这些坐标点就按这样的顺序排列。
类似地,第二笔划SR2的数据由第一轮廓数据和第二轮廓数据组成,第一轮廓数据由规定第一笔划SR2的开始点PS2的坐标(Xs2,Ys2)、例如四个点(X31,Y31)、(X32,Y32)、(X33,Y33)、(X34,Y34)以及规定第二笔划SR2的结束点PE2的坐标点(Xe2,Ye2)组成,这些坐标点就按这样的顺序排列,第二轮廓数据由规定上述开始点PS2的坐标点(Xs2,Ys2)、例如三个点(X41,Y41)、(X42,Y42)、(X43,Y43)以及规定上述结束点的坐标点(Xe2,Ye2)组成,这些坐标点就按这样的顺序排列。
由于读作“+”的符号MJ的笔划SR1和SR2的顺序就是第一笔划SR1和第二笔划SR2的顺序,所以第一笔划SR1的数据和第二笔划SR2的数据就按照第一笔划SR1的数据和第二笔划SR2的数据的顺序进行排列。
因此,读作“+”的符号MJ的字形由第一笔划SR1的数据和第二笔划SR2的数据组成,第一笔划SR1的数据由组成第一轮廓数据的坐标点(Xs1,Ys1)、(X11,Y11)、(X12,Y12)、(X13,Y13)、(X14,Y14)和(Xe1,Ye1)以及组成第二轮廓数据的坐标点(Xs1,Ys1)、(X21,Y21)、(X22、Y22)、(X23,Y23)、(X24,Y24)和(Xe1,Ye1)组成,第二笔划SR2的数据由组成第一轮廓数据的坐标点(Xs2,Ys2)、(X31,Y31)、(X32,Y32)、(X33,Y33)、(X34,Y34)和(Xe2,Ye2)以及组成第二轮廓数据的坐标点(Xs2,Ys2)、(X41,Y41)、(X42,Y42)、(X43,Y43)和(Xe2,Ye2)组成。第一笔划SR1的数据和第二笔划SR2的数据就按这样的顺序排列。
虽然在上述字形中设定了规定开始点的一组坐标点和规定结束点的另一组坐标点,但为了知道笔划方向,至少这两组坐标点中的一组就足够了。因此,可以只将规定笔划开始点的坐标点或只将会规定笔划结束点的坐标点设定为笔划数据。
对于上述字形,笔划数据由包含了规定开始点的坐标点和规定结束点的坐标点的第一轮廓数据和包含了规定开始点的坐标点和规定结束点的坐标点第二轮廓数据来构成。但是,笔划数据还可以利用只由在第一轮廓上除规定了开始点的坐标点和规定了结束点的坐标点外的坐标点组成的第一轮廓数据和只由在第二轮廓上除规定了开始点的坐标点和规定了结束点的坐标点外的坐标点组成的第二轮廓数据来构成。
虽然上述字形的笔划数据只由坐标点来构成,但除了这些坐标点外,笔划数据还可以具有矢量数据,如同在普通的轮廓字形的情形中那样。(2-2)字形形成处理器的结构现在描述用来作出上述字形的字形形成处理器20说明性结构。
参看图8,字形形成处理器20包括根据输入设备1输入的多个坐标点形成笔划数据的笔划数据形成单元21,以及设定由笔划数据形成的单元21形成的多个笔划数据的顺序的笔划顺序设定单元22。字形形成处理器20还包括从图象读出单元2读出字符或符号的图象数据以便写入到存储器3的图象数据读出单元23和从存储器3读出该图象数据以便将如此读出的图象数据提供给显示单元5的图象数据提供单元24。字形形成处理器20还包括从外部存储设备4读出已有字形以便将读出的字形写入到存储器3的字形读出单元25和从存储器3读出字形以便将读出的字形提供给显示设备5的字形提供单元26。
笔划数据形成单元21根据输入设备1输入的多个坐标点形成上述笔划数据,即由规定笔划SR的开始点的坐标点(Xs,Ys)、在第一轮廓NR1上的n个坐标点(X11,Y11)、(X12,Y12)......(X1n,Y1n)和规定笔划SR的结束点的坐标点(Xe,Ye)组成的第一轮廓数据,以及由规定笔划SR的开始点的坐标点(Xs,Ys)、在第二轮廓RN2上的n个坐标点(X21,Y21)、(X22,Y22)、......(X2n,Y2n)和规定笔划SR的结束点的坐标点(Xe,Ye)组成的第二轮廓数据。由于每个字符或符号由单笔划或多笔划组成,所以笔划数据形成单元21形成每个字模的单笔划或多笔划数据。
如果输入设备1提供指定了规定开始点的坐标点的数据,笔划数据形成单元21就形成将该指定坐标点作为规定开始点的坐标点的笔划数据。如果输入设备1没有提供指定了规定开始点的坐标点的数据,笔划数据形成单元21就形成将首先输入的坐标点作为规定开始点的坐标点的笔划数据。类似地,如果输入设备1提供指定了规定结束点的坐标点的数据,笔划数据形成单元21就形成将该指定坐标点作为规定结束点的坐标点的笔划数据。如果输入设备1没有提供指定了规定结束点的坐标点的数据,笔划数据形成单元21就形成将最后输入的坐标点作为规定结束点的坐标点的笔划数据。
为了利用输入设备1容易地输入在笔划轮廓上的坐标点,笔划数据形成单元21包括用于显示与坐标点有关的情况的显示处理单元211和对坐标点进行编辑的编辑处理单元212。
为了容易地得知输入设备1输入的坐标点的相对位置,即为了容易地得知笔划数据所表示的形状,显示处理单元211在显示设备5上显示相应于输入设备1输入的坐标点的点。还有,为了容易地得知输入设备1输入的坐标点的顺序,显示处理单元211按照输入设备1输入的坐标点的顺序在显示设备5上显示互连这些坐标点的线段。
具体来说,如图9所举例的那样,显示处理单元211在显示设备5上显示相应于输入设备1输入的坐标点的点XY1、XY2、XY3、XY4、XY5、XY6、XY7、XY8、XY9、XY10、XY11、XY12、XY13,同时还显示互连这些坐标点的直线段XY1-2、XY2-3、XY3-4、XY4-5、XY5-6、XY7-8、XY8-9、XY9-10、XY10-11、XY11-12、XY12-13、XY13-1。为了使用户能够容易地了解输入坐标点的顺序,显示处理单元211显示输入设备1输入的坐标点和互连这些坐标点单元211显示规定笔划开始点的坐标点、规定笔划结束点的坐标点以及其余的坐标点,以便能够容易地用眼睛区分这些不同的坐标点。具体来说,相应于规定笔划开始点的坐标点(Xs,Ys)的点、相应于规定笔划结束点的坐标点(Xe,Ye)的点以及其余的坐标点(X11,Y11)、(X12,Y12)、......(X1n,Y1n)、(X21,Y21)、(X22,Y22)、......(X2m,Y2m)具有不同的颜色和/或亮度。
虽然显示处理单元211在显示设备5上仅对于单笔划数据显示点和线,但它也能够在显示设备5上同时地显示多笔划数据。就是说,显示处理单元211根据输入设备1输入的指令在显示设备5上只显示单笔划数据或者在显示设备5上同时地显示多笔划数据。
编辑处理单元212响应输入设备1的命令的直线段。
或者,如图10所举例的那样,显示处理单元211在显示设备5上显示相应于输入设备1输入的坐标点的点XY1、XY2、XY3、XY4、XY5、XY6、XY7、XY8、XY9、XY10、XY11、XY12、XY13,同时还显示互连这些坐标点的平滑曲线XY1-2、XY2-3、XY3-4、XY4-5、XY6-7、XY7-8、XY8-9、XY9-10、XY10-11、XY11-12、XY12-13、XY13-1。因此,显示处理单元211利用在普通轮廓字模中使用的诸如样条曲线或Bezier曲线这样的曲线互连各个坐标点的技术来显示连输入设备1输入的坐标点的平滑曲线。如下所述,这将使用户在笔划数据被补足时就知道该笔划的形状。
当在显示单元5上显示相应于输入坐标点的点或者互连这些输入坐标点的线段时,显示处理,给笔划数据增加坐标数据、逐个地或集体地移动笔划数据的坐标点、或者逐个地或集体地从笔划数据中删除坐标点。如果利用显示处理单元211的操作在显示单元5上显示了多笔划数据的点和线,编辑处理单元212就根据输入设备1的命令来选择多个笔划之一的数据,以便实现对该被选笔划数据进行处理。
笔划顺序设定单元22然后根据笔划数据的顺序对笔划数据形成单元21形成的单笔划或多笔划数据进行排列,以便设定笔划数据的顺序。
如果输入设备1提供了指定输入设备1的数据的笔划数据顺序,笔划顺序设定单元22就按照指定顺序重排笔划数据来设定笔划数据的顺序。如果输入设备1没有提供指定输入设备1的数据的笔划数据顺序,笔划顺序设定单元22就按照笔划数据在笔划数据形成单元21中被形成的顺序对笔划数据进行排列来设定笔划数据的顺序。
笔划顺序设定单元22不必通过按照正确的顺序排列到各个笔划的数据来设定各个笔划的顺序。例如,可以自然地形成规定各个笔划的数据的顺序数据来设定各个笔划的顺序。
通过利用笔划数据形成单元21来形成单笔划或多笔划数据和利用笔划顺序设定单元22来设定各个笔划的数据顺序,就可以形成由单笔划或多笔划数据组成的、已设定了各个笔划的数据顺序的字形。
如果在利用输入设备1输入在笔划轮廓上的坐标点的时候在显示设备5上显示相应于所需字形的字符或符号,就能够非常容易地输入坐标点。就是说,如果在操作者已参看在显示单元5上被显示的字符或符号的同时通过指定在被显示字符或符号的轮廓上的点来输入坐标点,就能够非常容易地输入坐标点。
图象数据读出单元23、图象数据提供单元24、图象字形读出单元25和字形提供单元26用来在相应于所需字形的字母或符号在显示单元5上被显示时输入坐标点。
即图象数据读出单元23读出相应于图象读出设备2提供的所需字形的字符或符号的图象数据,以便写入到存储器3。图象数据提供单元24从存储器3读出图象数据,以便将读出的图象数据传送给显示单元5。由于相应于所需字形的字符或符号以这样的方式被显示在显示单元5上,所以用户能够在参看被显示在显示单元5上的字符或符号的同时输入坐标点。
另一方面,字形读出单元25读出相应于外部存储设备4提供的所需字模的字符或符号的字形,并将读出的字形写入存储器3。字形提供单元26从存储器3读出字形并将读出的字形提供给显示单元5。由于相应于所需字形的字符或符号被显示在显示单元5上,所以用户能够在参看被显示在显示单元5上的字符或字形的同时输入坐标点。预先记录在外部存储设备4中的字形可以是能够提供相应于被显示在显示单元5上的字形的字符或符号的图象的任何字形。字形的实例包括普通的位图字形、轮廓字形或字形形成处理器20预先形成的字形。
参看图11所示流程图说明字形形成处理器20的说明性操作。
在步骤ST2-1-2,字形形成处理器20查阅画在纸上字符或符号,判断是否要形成字形。如果结果是“是”,即如果要形成字形,字形形成处理器20就到达步骤ST2-1-2,否则处理器20就到达步骤ST2-1-3。
在步骤ST2-1-2,字形形成处理器20在到达步骤2-1-5之前在显示单元5上显示画在纸上的字符或符号。具体来说,当要在显示单元5上显示画在纸上的字母或符号时,图象读出设备2将画在纸上的字符或符号的形状变换为图象数据并将所获得的图象数据传送给图象数据读出单元23。图象数据读出单元23将图象读出单元2提供的图象数据写入存储器3。图象数据提供单元24从存储器3读出图象数据并将读出的图象数据传送给显示单元5。显示单元5显示从图象数据提供单元24提供的图象数据获得的图象。
在步骤ST2-1-3,字形形成处理器20查阅存储在外部存储设备4中的字形,判断是否要形成字形。如果处理器查阅字形的结果是“是”,处理器到达步骤ST2-1-4。如果处理器不参考字形(“否”),它就到达步骤ST-2-1-5。
在步骤ST2-1-4,字形形成处理器20显示相应于存储在外部存储设备4中的字形的字符或符号。字形形成处理器20然后到达步骤ST2-1-5。具体来说,如果要在显示设备5上显示相应于存储在外部存储设备4中的字形的字符或符号,字形读出单元25就从外部存储设备4读出字形并将读出的字形写入存储器3。字形提供单元26然后从存储器3读出字形并将读出的字形提供给显示设备5。显示设备5显示相应于字形提供单元26提供的字形的图象。
在步骤ST2-1-5,如下所述,字形形成处理器20的笔划数据形成单元21读出用户通过输入设备1输入的坐标点。笔划数据形成单元21读出的坐标点是如图5所示的多个坐标点(Xs,Ys)、(X11,Y11)、(X12,Y12)......(X1n,Y1n)、(X21,Y21)、(X22,Y22)......(X2n,Y2n)、(Xe,Ye)。如果画在纸上的字符或符号在步骤ST2-1-2被显示在显示单元5上,或者如果相应于已有字形的字符或符号在步骤ST2-1-4被显示在显示设备5上,则用户在参看被显示在显示单元5上的字母或符号的同时通过输入设备1输入笔划数据。显示处理单元211在显示设备5上显示相应于输入坐标点的点或互连这些输入坐标点的线段,以便使用户能够用眼睛容易地识别输入坐标点。
在步骤ST2-1-6,笔划数据形成单元21根据在步骤ST2-1-5读出的坐标点形成由第一轮廓数据和第二轮廓数据组成的笔划数据,第一轮廓数据由坐标点(Xs,Ys)、(X11,Y11)、(X12,Y12)、......(X1n,Y1n)和(Xe,Ye)组成,第二轮廓数据由坐标点(Xs,Ys)、(X21,Y21)、(X22,Y22)、......(X2n,Y2n)和(Xe,Ye)组成。第一和第二轮廓数据的前坐标点(Xs,Ys)规定开始点,第一和第二轮廓数据的后坐标点(Xe,Ye)规定结束点。在此时,笔划数据形成单元21使相应于该笔划数据的点和线被显示在显示单元上。
接着在步骤ST2-1-7中,笔划数据形成单元21根据输入设备1输入的命令判断是否已形成了所需字形全部笔划数据。如果尚有笔划数据需形成(“否”),处理器20就返因到步骤ST2-1-5。如果全部笔划的数据已被形成(“是”),处理器就到达步骤ST2-1-8。
如果处理器20为了产生新笔划的数据而返回到步骤ST2-1-5,笔划数据形成单元21就在显示单元5上显示相应于以前形成的笔划数据的坐标点的点和互连这些点的线段。就是说,如果用户希望检查以前形成的笔划的排列和要被形成的笔划的排列之间的平衡,用户就只有通过显示处理器211显示相应于预先形成的笔划的坐标点的点或互连这些坐标点的线段。如果在显示单元5上相应于预先形成的笔划的坐标点的点或者互连这些坐标点的线段的输入导致了难于输入在新形成笔划的轮廓上的坐标点,就如上所述地不显示相应于预先形成的笔划的坐标点的点或互连这些坐标点的线段也是足够的。
在步骤ST2-1-8,笔划顺序设定单元22设定笔划数据形成单元21在步骤ST2-1-6形成的单笔划或多笔划数据的顺序。如果提供了指定输入设备1的数据的笔划数据顺序,笔划顺序设定单元22就按照指定的顺序重排笔划数据来设定各个笔划数据的顺序。如果没有提供指定输入设备1的数据的笔划数据顺序,笔划顺序设定单元22就按照笔划数据形成单元21形成笔划数据的顺序排列笔划数据来设定各个笔划数据的顺序。
利用上述操作顺序,字形形成处理器20形成了由单笔划或多笔划数据构成的、设定了各个笔划数据的顺序的字形“+”。
当在步骤ST2-1-5输入在笔划轮廓上的坐标时,用户根据图12所示流程图输入以下坐标点。
在步骤ST2-2-1中,用户利用输入设备1将启动坐标点的输入的命令输入给笔划数据形成单元21,并启动在笔划轮廓线上的坐标点的输入。在步骤ST2-2-2,用户利用输入设备将规定笔划开始点的坐标点(Xs,Ys)输入给笔划数据形成单元21。在步骤ST2-2-3,用户利用输入设备1顺序地将在第一轮廓线上的坐标点(X11,Y11)、(X12,Y12)、......(X1n,Y1n)输入给笔划数据形成单元21。然后,用户在步骤ST2-2-4利用输入设备1将规定笔划结束点的坐标点(Xe,Ye)输入给笔划数据形成单元21。在步骤ST2-2-5,用户利用输入设备顺序地将在第二轮廓线上的坐标点(X2m,Y2m)、(X22,Y22)、......(X21,Y21)输入给笔划数据形成单元21。在步骤ST2-2-6,用户利用输入设备1将规定坐标点输入结束的命令输入给笔划数据形成单元21,结束在笔划轮廓上的坐标点的输入。
因此,当在步骤ST2-2-2至ST2-2-5输入坐标点时,用户在其输入在笔划轮廓上的坐标点时利用显示处理器211在显示单元5上显示相应于输入坐标点的点和互连各个坐标点的线段。如果需要的话,用户可以在其输入在笔划轮廓上的坐标点时利用编辑处理器212来增加、移动或删除坐标点,对坐标点进行编辑。(3)纸纤维结构数据参看图13至28描述纸纤维结构数据处理单元30的实例。在以下描述中,直角坐标系统被设置在一区域内以显示图象且表示最小图象单位的象素被排列在该直角坐标系统的各个整数坐标(X,Y)上。据以形成纸纤维结构数据的区域是由在直角坐标系统中的多个象素构成的区域。(3-1)纸纤维结构数据首先描述纸纤维结构数据形成处理器30形成的纸纤维结构数据。
纸是由按网状结构分布的多根互连纤维组成的。用墨水画在纸上的图画是由贮存在纤维之间的墨水量形成的。纤维之间截留的墨水量、即被吸收的墨水量依赖于纤维结构。因此,为了形成较真实地模仿了用墨水画在纸上的图画的图象数据,必须提供模仿纸纤维结构的数据。
因为在用墨水在纸上画图时墨水流过纤维,所以出现了渗开。渗开的程度依赖于墨水流过的纤维之间的间隙。这一间隙以后称为毛细管。因此,为了产生较真实地表示被用墨水画在纸上的图象的图象数据,需要提供模仿纸张的毛细管的数据。
出于这种考虑,在纸纤维结构数据形成处理器30中形成的纸纤维结构数据是以表示构成纸张的多根纤维的纤维数据为基础的,多根纤维排列在由多个象素组成的区域内。就是说,如图13所示,象素P的纸纤维结构数据是由穿过象素P的纤维的数目M、穿过象素P以及还穿过与象素P相邻的8个象素P1、P2、P3、P4、P5、P6、P7、P8的纤维的数目M1、 M2、M3、M4、M5、 M6、M7、M8和毛细管的数目S1、S2、S3、S4、S5、S6、S7、S8组成的。8个象素P1-P8、8个数M1-M8和8个数S1-S8分别表示为Pi,Mi和Si,i=1,2,3,......8。纤维数目M、纤维数目Mi和毛细管数目Si都是不小于0的整数。对在相应于纸纤维结构数据的区域中的所有象素,设定纤维数目M、纤维数目Mi和毛细管数目Si来构成纸纤维结构数据。
纤维数目Mi是穿过象素P和象素Pi的纤维的数目。因此,在象素P的纤维的数目Mi中,表示穿过象素P6、P5、P和P2(按这一顺序)的纤维的数目是数字M5和M1,纤维数目M6或M2不相关。
因为纤维数目M被确定,所以利用模仿细微的纸纤维结构的纸纤维结构数据就能够计算被吸收的墨水量。另一方面,由于纤维数目Mi被确定,所以就可以计算沿象素的各种方向形成的毛细管的数目Si,同时由于毛细管的数目Si被确定,所以能够计算从一象素流至相邻象素的墨水的数量和方面。因此,通过利用这样的纸纤维结构数据,就能够在形成被墨水画在纸上的图象的图象数据时将墨水的渗开或吸收考虑进去,所以就能够作出较真实地表示图象的图象数据。
毛细管是在纤维之间形成的墨水导管,毛细管的数目Si依赖于纤维的数目Mi。但是,如果毛细管数目很大,则每根毛细管的宽度就减小,如果毛细管数目很小,则每根毛细管的宽度就变大。因此,如果改变毛细管的数目,可以认为在毛细管中流动的墨水的总量基本上不变。所以,为了简化数据,对于不小于2和小于2的纤维数目Mi,可以分别将毛细管的数目Si设定为1和0。
具体来说,纸纤维结构数据是这样的,即如果如图14所示地对于象素P和Pi排列了5根据纤维FI1、FI2、FI3、FI4和FI5,则象素P的纸纤维结构数据的各个值就是这样的纤维数目M、M1、M2、M3、M4、M5、M6、M7和M8分别是5、1、1、2、1、2、0、3,毛细管数目S1、S2、S3、S4、S5、S6、S7和S8分别是0,1,1,0,1,0,1,0。
纸纤维结构数据还可以包括光透射率I,该光透射率I作为表示利用纸纤维结构数据作为图象来模仿纸的纸的数据。对各个象素设定光透射率I,该光透射率I代表每一象素的光透射率。光透射率I的值依赖于纤维数目M,随着纤维数目M的增大和减小而分别变低和变高。通过根据光透射率I对被纸纤维结构数据包围的象素设定各个象素的亮度,以及在显示单元5上显示这些象素的亮度,就可以利用纸纤维结构来表示模仿纸的图象,这样就能够用眼睛来识别模仿或模拟纸结构数据的状态。(3-2)纸纤维结构数据形成处理器的结构现在描述纸纤维结构数据形成处理器的说明性结构。
参看图15,纸纤维结构数据形成处理器30包括产生表示构成纸张的许多纤维之一的纤维数据的纤维数据形成单元31和在包括多个象素的区域中排到由纤维数据形成单元31产生的多个纤维数据以便形成表示纤维分布的纤维分布数据的纤维分布数据形成单元32。纸纤维结构数据形成处理器30还包括根据在纤维分布数据形成单元32中形成的纤维分布数据对与象素P相邻的8个象素Pi的每一个计算穿过象素P的纤维的数目M的纤维数目计算单元33,以及计算穿过象素P和还穿过与象素P相邻的8个象素Pi的纤维的数目的相邻纤维数目计算单元34。纸纤维结构数据形成处理器30还包括根据在纤维数目计算单元34中计算的纤维数目Mi计算从象素P出发沿象素Pi的方向形成的毛细管的数目Si的毛细管数目计算单元35。
纸纤维结构数据形成处理器30利用纤维数目计算单元33计算的纤维数目M、相邻纤维数目计算单元34计算的纤维数目Mi和毛细管数目计算单元35计算的毛细管数目Si来形成作为纸纤维结构数据的纸纤维结构数据。
纸纤维结构数据形成处理器30形成的纸纤维结构数据通过写入存储器3或外部存储设备4进行存储。当模糊图象要由模糊处理器40来画出或渗开图象要由渗开处理器来画出时,就从存储器3或外部存储设备4读出纸纤维结构数据来形成表示被用墨水画在纸上的图象的图象数据。
纤维数据形成单元31形成的纤维数据是表示构成纸张的许多纤维之一的数据,该数据由表示纤维形状的数据、纤维位置数据和纤维方向数据组成。
规定纤维形状的数据是图16所示余弦函数的一部分,可用公式(3-1)表示Y=acos(X-b)o≤X≤c,a,b和c是常数,c表示纤维长度。应当指出a表示纤维弯曲程度,a的值越小,纤维弯曲程度越轻,反之,a的值越大,纤维弯曲程度越严重。a、b和c的值可预定固定,或者可在预定范围内变化,以便根据纤维数据的不同被随机地设定。a,b和c的值还可被设定为用户通过输入设备1输入的所需任选值,或者可根据纤维数据的不同被随机地设定,以便被设定为用户通过输入设备1的输入的所需任选值。
通过将纤维形状表示为如公式(3-1)所表示的余弦函数的一部分,就能够表示接近实际纸纤维形状的形状。但是,纤维形状的表示不限于此,而是可被表示为例如正弦函数的一部分,或者可被表示为n次曲线的一部分,例如二次或三次曲线的一部分。
表示纤维位置的数据可以是表示纤维末端的坐标值(X1,Y1),而表示纤维方向的数据是表示纤维排列方向的角度θ。坐标(X1,Y1)和角度θ是被纤维数据形成单元31随机设定的值。
通过按照公式(3-2)和(3-3)变换公式(3-1)的(X,Y)、使用坐标值(X1,Y1)-它是如图17所示表示数据的纤维位置、按照公式(3-4)和(3-5)旋转公式(3-1)的(X,Y)并使用角度θ-它是如图18所示表示纤维方向的数据就能够获得纤维数据X=X+X1......(3-2)Y=Y+Y1......(3-3)X=Xcos(θ)+Ycos(θ)......(3-4)Y=-Xsin(θ)+Ycos(θ) ......(3-5)纤维数据形成单元31形成的这些纤维数据被纤维分布数据形成单元32排列在一区域中来形成纸纤维结构数据,以便形成纤维分布数据。
为了把纸纤维的均匀分布和局部分布考虑进去,如图19所示,纤维分布数据形成单元32包括在由被纸纤维结构数据包围的多个象素的组成的区域中随机地排到多个点的点排列单元321和利用张驰处理均匀化由点排列单元321排列的多个点的均匀化单元322。纤维结构数据形成单元32还包括形成以被均匀化单元322均匀化的各个点为中心的多个子区域的子区域形成单元323和在由子区域形成单元323形成的每一个子区域中随机地排列相同数目的纤维数目的随机排列单元324。
为了在纤维分布数据形成单元32中产生纤维分布数据,多个点被点排列单元321随机地排列在由被纸纤维结构数据包围的多个象素组成的区域中。点排列单元321排列的多个点被均匀化单元322利用张驰处理进行均匀化。然后,子区域形成单元323形成多个子区域,各个子区域以被均匀化单元322均匀化的各个点为中心。相同数目的纤维数据被随机地排列在由子区域形成单元323形成的每一子区域中以便形成纤维分布数据。
参看图20的流程图描述纤维分布数据形成单元32的例示性操作。
在步骤ST3-1,如图21所示,点排列单元321在由被纸纤维结构数据包含的多个象素组成的区域RI中随机地排列n个点TN。不小于2的整数的值n可以预先设定或者由用户利用输入单元1按所需值进行输入。
然后在步骤ST3-2,点排列单元321计算在由被纸纤维结构数据包围的多个象素组成的区域RI内形成的子区域的半径R0。半径R0的值可以预先设定、由用户利用输入单元1按所需值进行输入或者根据在步骤ST3-1排列的点的数目n的值进行计算。如果要根据在步骤ST3-1排列的点的数目n计算半径R0的数值,就按照公式(3-6)对其进行计算R20=2.0×(X·Y/n)1/2......(3-6)其中X和R表示由被纤维结构数据包围的多个象素组成的区域RI的横向长度和纵向长度。然后在步骤ST-3中,均匀化单元322执行移动各个点的张驰处理来均匀化在步骤ST3-1被排列的n个点的位置。
作为张驰处理的一实例,描述对具有当前位置(X,Y)的点TNa进行的张驰处理。
在步骤ST3-3-1,均匀化单元322从在步骤ST3-1被随机排列的点TN中检测位于以(X,Y)为中心、半径为R0的圆内的m个点TNj(j=1,2,3,......m)。半径R0的值已在步骤ST3-2确定。应当指出m<n而点TNa不被包括在点TNi中。
在步骤ST3-3-2,均匀化单元322求出从点TNa至点TNj的j矢量(Xj-X,Yj-Y)。
在步骤ST3-3-3,均匀化单元322求出从点TNa至点TNj的j矢量(Xj-X,Yj-Y)的和(Xf,Yf),(Xf,Yf)用以下公式(3-7)来表示(Xf,Yf)=(X1-X,Y1-Y)+(X2-X,Y2-Y)+......
(Xm-X,Ym-Y)......(3-7)然后在步骤ST3-3-4,均匀化单元322如公式(3-8)和(3-9)所表示的那样将点TNa(X,Y)的位置变换成为(X′,Y′)X′=X+d·Xf.......(3-8)Y′=Y+d·Yf.......(3-9)d是预定的比例常数。
对点TNa进行的张驰处理在上述步骤ST3-3-1到ST3-3-4完成。因此,通过对n个点TN顺序地执行步骤ST3-3-1至ST3-3-4,则n个点TN就被张驰,因此如图22所示,排列在由被纤维结构数据包围的多个象素组成的区域RI中的n个点TN就被均匀化了。
只要多个点的位置可被均匀化,则张驰处理不限于上述处理。因此可以采用任何已知的张驰处理操作。
如果步骤ST3-3结束,均匀化单元322就在步骤ST3-4判断张驰处理是否要被重复。张驰处理操作的次数的改变只依赖于构成所需纸张的纤维的分布状态。如果构成纸张的纤维的分布在整个区域内呈现局部集中,就减少张弛处理的重复次数,如果纸张在整个区域内呈现较轻微的局部集中,就减少重复次数。张弛处理的重复次数可以预先设定或者通过输入设备1进行输入,以便用户可自由地设定重复次数。如果张驰处理要被重复(“YES”),处理就返回到步骤ST3-3,如果张驰处理已结束(“NO”),处理就到达步骤ST3-5。
在步骤ST3-5,如图23所示,子区域形成单元323形成n个圆形子区域MR,各个圆形子区域MR以n个被均匀化的点TN之一为中心。子区域MR的半径R0的值是在步骤ST3-2求出的值。
然后在步骤ST3-6,随机排列单元324在各个子区域MR中随机地排列纤维数据,以便如图24所示地在这些小的子区域中排列与这些小区域MR的数目相同数目的纤维FI。
利用上述步骤ST3-1至ST3-6,纤维数据形成单元31形成的纤维数据就均匀地和局部均匀地分布在区域中来形成纸纤维结构数据。
如果以这种方式形成了纤维数据,就能够获得在整个区域中具有均匀纤维数据分布以及在小的区域中具有局部纤维数据分布的纤维分布数据。就是说,通过利用均匀化单元322来均匀化点的位置以便在某种程度上遗留部分点的位置,就可以使纤维数据在小的区域具有局部分布。相反地,通过在这些子区域中设定与小区域形成单元323形成的各个小区域的数目相同的纤维,就可以使纤维数据在整个区域中具有均匀分布。
纤维数目计算单元33根据如此形成的纤维分布数据求出与象素P相关的纤维数目。就是说,纤维数目计算单元33根据纤维分布数据形成单元32形成的纤维分布数据求出穿过象素P的纤维数目M。对每一象素求出这一纤维数目M,作为纸纤维结构数据。具体来说,如果如图25所示对于象素P排列了纤维FI1、FI2、FI3和FI4,则象素P的纤维数目M就等于4。另一方面,相邻纤维数目计算单元34根据纤维方向求出象素P的纤维数目。即单元34根据纤维分布数据形成单元32形成的纤维分布数据求出穿过象素P和与象素P相邻的8个象素Pi的纤维数目Mi。
如果纤维穿过象素P和穿过与该象素P相邻的8个相邻象素Pi中的两个或两个以上的象素,就假定该纤维沿从象素P发出的纤维最初横贯的纤维Pi的方向排列,因此从象素P发出的纤维最初横贯的象素pi的纤维数目Mi增加1。具体来说,如果纤维按这样的顺序穿过象素P6、P5、P、P1、P2,则纤维数目M5和M1增加1,而纤维数目的M6和M2不增加1。
逐个象素地求出纤维数目Mi来提供纸纤维结构数据。具体来说,如果如图14所示对于象素P和Pi排列了5根纤维FI1、FI2、FI3、FI4和FI5。则象素P的纤维数目M是5,而纤维数目M1、M2、M3、M4、M5、M6、M7和M8分别等于1、1、2、1、2、0、3和0。
毛细管数目设定单元35按照方向对象素P求出毛细管的数目。就是说,计算单元35根据相邻纤维数目计算单元34计算的纤维数目Mi求出沿与象素P相邻的8个象素的各个方向形成的毛细管的数目Si。在象素的基础上求出毛细管的数目Si来提供纸纤维结构数据。
由于在纤维间隙中形成的墨水导管就是毛细管,所以毛细管数目Si依赖于纤维数目Mi。但是,如果毛细管数目增大,毛细管的宽度就减小,如果只有少量的毛细管,则毛细管的宽度就增大。因此可以假定即使毛细管数目发生变化,流过这些毛细管的墨水总量基本上保持不变。为了数据的简化,可以将毛细管数据Si简化成为只规定毛细管的存在或不存在的数据。就是说,可以根据Mi根纤维构成或者没有构成毛细管而分别将毛细管数目设定为1或0。
在确定Mi根纤维是否构成毛细管时,假定对于等于2或2以上的纤维数目Mi形成了毛细管,如果纤维数目Mi小于2就没有形成毛细管。就是说,对于不小于2或小于2的纤维数目Mi,分别将毛细管数目Si设定为1或0。具体来说,如果如图14所示的地对于象素P和象素Pi排列了纤维FI1、FI2、FI3、FI4和FI5,则毛细管数目S1、S2、S3、S4、S5、S6、S7和S8就分别是0、0、1、0、1、0、1和0。
为了更准确地模仿纸结构,可以在设定毛细管数目Si时把Mi根纤维的交叉角考虑进去。理由是如果相邻象素的交叉角较大,纤维间隙就增大,纤维间隙就不再起毛细管的作用,因此墨水就不能够流过纤维间隙。
如果要在考虑Mi根纤维交叉角的条件下设定毛细管数目Si,则毛细管计算单元35就将如图26所示地由随机地设定相邻纤维的交叉角的交叉角设定单元351和设定毛细管数目Si的毛细管数目设定单元352组成。在利用交叉角设定单元351沿与象素P相邻的象素Pi的方向随机地设定Mi根纤维的相邻纤维的交叉角之后,如果交叉角设定单元351设定的交叉角的至少一个在预定角度内,则毛细管数目设定单元3 52将毛细管数目Si设定为1,如果交叉角设定单元351设定的交叉角的全部都不在预定角度内,则毛细管数目设定单元352就将毛细管数目Si设定为0。具体来说,如果象素P的纤维数目Mi是5,则交叉角设定单元351就如图27所示地随机地设定5根纤维FI1、FI2、FI3、FI4和FI5中各相邻纤维之间的交叉角Δθ1、Δθ2、Δθ3和Δθ4。如果交叉角设定单元351设定的交叉角Δθ1、Δθ2、Δθ3和Δθ4中的至少一个在预定角度内,毛细管数目设定单元352就将毛细管数目Si设定为1,如果交叉角设定单元351设定的全部交叉角都不在预定角度内,毛细管数目设定单元352就将毛细管数目Si设定为0。
如果光透射率I也作为纸纤维结构数据被设定,则纸纤维结构数据形成处理器30就包括求出表示在象素中的光秀射率的基于象素的光透射率I的光透射率计算单元36,根据纤维数目计算单元33计算的纤维数目M在该象素中排列了纤维。
光透射率计算单元36根据纤维数目M计算基于象素的光透射率I并将计算的光透射率I作为纸纤维结构数据。因为光透射率I是根据纤维数目M进行计算的,所以纤维数目M越大,通过象素的光透射就越少,纤维数目M越小,通过象素的光透射就越多。
参看图28的流程图描述光透射率计算单元36的说明性操作。在以下的描述中,假定光透射率I的值越大,光透射就越少,光透射率I的值越小,光透射就越多。
在步骤ST3-11,光透射率计算单元36将光透射率I的值设定为(d×e)作为初始值,d和e为预定常数,0<d<1......。
在步骤ST3-12,光透射率计算单元36将处理操作次数的标记f的值设定为0。
在步骤ST3-13,光透射率计算单元36将规定处理操作次数的标记的值递增为1来设定处理操作的次数。
在步骤ST3-14,光透射率计算单元36将f的值与M的值进行比较,以便重复处理等于象素P的纤维数目M的次数。如果f≤M,光透射率计算单元36到达步骤ST3-15,否则就结束处理。
在步骤ST3-15,光透射率计算单元36将光透射率I的值设定为(d×e+(1-d)×I)作为由单根纤维造成的光透射率的变化。光透射率计算单元36然后返回到步骤ST3-13,将处理重复等于象素P的纤维数目M的次数。
通过根据如此设定的光透射率I设定各个象素的亮度并在显示单元5上显示该亮度,就可以显示被纸纤维结构数据模仿的纸的图象,用户就能够用肉眼来检测模仿纸纤维结构数据的状态。(4)模糊处理器参看图29至87详细描述模糊处理器40的说明性实施例。
如果在将毛笔从开始点移向结束点来画图象时毛笔所含的墨水量较少、毛笔移动速度较快或毛笔压力较低,就会因渗开而产生此后称作模糊区域KS的无墨水的区域。模糊处理器40主要形成图象数据来显示模糊图象。将这样的数据提供给显示单元5,以便在显示单元5的显示平面上画出模糊图象。
模糊处理器40处理的图象是如图30所示由互连包括开始点PS和结束点pe的多个点pa的第一轮廓rn1和互连包括开始点ps和结束点pe的多个点pb的第二轮廓rn2所包围的图象ZK。具体来就,模糊处理器40处理的图象是由上述字形形成处理器20形成的字形的笔划数据所表示的图象。
模糊处理器40执行的基本处理是将规定有墨水状态的有墨水数据设定为在此后称为绘图区域的非模糊区域内的图象象素的图象数据,和将规定无墨水状态的无墨水数据设定为在模糊区域KS内的图象象素的图象数据,以便形成表示模糊图象ZK的图象数据。(4-1)模糊处理所使用的数据首先说明全轮廓数据、模糊区域数据、模糊参数、形状数据、图象数据以及毛笔数据,这些都是模糊处理器40在进行模糊处理时使用的主要数据。(4-1-1)全轮廓数据全轮廓数据是规定图象的轮廓和绘图方向的数据。例如,如图31所示,全轮廓数据由第一轮廓数据和第二轮廓数据组成,第一轮廓数据包括互连图象的开始点和结束点的轮廓和绘图方向,第二轮廓数据包括互连图象的开始点和结束点的另一轮廓和绘图方向。
如图31所示,第一轮廓数据是沿绘图方向排列的在图象的第一轮廓上的m个坐标点Ai(i=1,2,3,......,m)的数组,m是不小于1的整数。第一个坐标点A1和最后的坐标点Am分别表示图象的开始点和结束点。类似地,如图31所示,第二轮廓数据是沿绘图方向排列的在图象的第二轮廓上的几个坐标点Bj(j=1,2,3,......,n)的数组,n是不小于1的整数。第一个坐标点B1和最后的坐标点Bn分别表示图象的开始点和结束点。因此,坐标点A1和B1代表相同的点,坐标点Am和Bn代表相同的点。
如随后所述地对上述全轮廓数据进行补充,以便给第一轮廓数据和第二轮廓数据增加坐标点来进一步平滑图象的轮廓。因此,为了使图象的近似轮廓能被理解,最初设定的第一和第二轮廓数据已经足够。如以下将说明的那样,通过补充给第一和第二轮廓数据增加坐标点,以便第一轮廓数据坐标点的数目m和第二轮廓数据坐标点的数目n将彼此相等。因此最初设定的第一和第二轮廓数据不必彼此相等。
具体来说,这些全轮廓数据是字形形成处理器20形成的字形的笔划数据。因此,模糊处理器40对字形形成处理器20形成的字形的笔划数据进行模糊处理。
如果有多个要画的图象,例如,如果字符或符号由多个笔划组成、每一笔划都是要画的图象,就提供多组全轮廓数据来对应各个笔划。设定各组全轮廓数据,使全轮廓数据按照各个图象的绘图顺序排列,以便知道各个图象的绘制顺序。具体来说,该多组全轮廓数据是由字形形成处理器20形成的、由多个笔划的数据组成的字形。就是说,对于由字形形成处理器20形成的、由多个笔划的数据组成的字形,各相应于全轮廓数据的各个笔划的数据按照书写顺序排列,以便设定各个笔划的数据顺序。模糊处理器40对字形形成处理器20形成的字形进行模糊处理。(4-1-2)模糊区域数据模糊区域数据是表示模糊区域位置的数据,由表示沿着在图象内从开始点延伸至结束点的第一或第二轮廓的m根轨迹的长度的数据组成的。这些轨迹以后称为绘图轨迹。具有模糊区域的图象内的位置由这m个轨迹的长度来表示。
如图32所示,绘图轨迹BK是从开始点ps延伸到结束点pe的m根线,这些线沿着图象ZK的宽度以相同的间距彼此间隔开来。两根边缘绘图轨迹分别相当于图象ZK的第一轮廓线rn1和第二轮廓线rn2。虽然为容易理解起见在图32中的绘图轨迹的数目m很小,但为了较准确地表示模糊,绘图轨迹BK的数目m实际上是很大的。
模糊区域数据由在m根绘图轨迹BK上的、开始于开始点ps而终止于模糊开始点KPS的m个模糊开始长度数据和在m根绘图轨迹BK上的、开始于开始点PS而终止于模糊结束点KPE的m个模糊长度数据组成,由此规定了在绘制具有模糊区域KS的ZK时的位置。
如果在给定的绘图轨迹BK中没有模糊区域KS,就将在该绘图轨迹上的模糊开始长度数据和模糊结束长度数据设定为相等值。就是说,将在绘图轨迹上的模糊开始长度数据和模糊结束长度数据都设定为0或1。
模糊开始长度数据是在0和1范围内的值,通过归一化从开始点ps到模糊开始点KPS的长度来获得,开始于开始点ps而结束于结束点pe的图象ZK的长度(例如第一轮廓的长度和第二轮廓的长度的平均值)被设定为1。类似地,模糊结束长度数据是在0和1范围内的值,通过归一化从开始点ps到模糊结束点KPE的长度来获得,图象的长度被设定为1。这简化了渗开开始长度数据和渗开结束长度数据。当然,可以分别将渗开开始长度数据和渗开结束长度数据设定为等于从开始点ps到渗开开始点KPS的实际长度和从开始点ps到渗开结束点KPE的实际长度。
利用模糊区域数据,在具有模糊区域的图象内的位置就可以单独用渗开开始长度数据和渗开结束长度数据来表示,即用两个一维阵列数据来表示。换句话说,利用这样的模糊区域数据,模糊区域位置就可以用简化数据来规定。此外,如果根据图形长度归一化渗开开始数据和渗开结束数据,则规定模糊区域位置的数据可进一步简化。
模糊区域数据是为相应的单个模糊区域设定的数据,因此,如果在图象中有多个模糊区域,就可以在每一模糊区域中设定模糊区域数据。
图33表示上述模糊区域数据的实例。图33所示的模糊区域数据是这样的数据,即对于具有两个模糊区域KS的图象,提供了8根模糊轨迹BK1、BK2、BK3、BK4、BK5、BK6、BK7和BK8,模糊区域数据被归一化,图象长度被设定为1。应当指出,为说明起见简化了图33所示的模糊区域数据,为了更准确地确定模糊区域KS,绘图轨迹的数目、即渗开开始长度数据和渗开结束长度数据的数目被设定为较大的值,同时渗开开始长度数据和渗开结束长度数据的有效数位也被设定为较大的值。
参看图34,由图3 3所示模糊区域数据表示的模糊区域KS由第一模糊区域KS1和第二模糊区域KS2组成,第一模糊区域KS1的四周环绕着在绘图轨迹BK2上的渗开开始点KP1和渗开结束点KP2、在绘图轨迹BK3上的渗开开始点KP3和渗开结束点KP4、在绘图轨迹BK4上的渗开开始点KP5和渗开结束点KP6、在绘图轨迹BK5上的渗开开始点KP7和渗开结束点KP8、以及在绘图轨迹BK6上的渗开开始点KP9和渗开结束点KP10,第二模数据区域KS2的四周环绕着在绘图轨迹BK4上的渗开开始点KP11和渗开结束点KP12、在绘图轨迹BK5上的渗开开始点KP13和渗开结束点KP14、在绘图轨迹KB6上的渗开开始点KP15和渗开结束点KP16、在绘图轨迹BK7上的渗开开始点KP17和渗开结束点KP18、以及在绘图轨迹BK8上的渗开开始点KP9和渗开结束点KP20。
如果图象长度定为1,则在绘图轨迹BK2、BK3、BK4、BK5和BK6上从开始点直到渗开开始点KP1、KP3、KP5、KP7和KP9的长度就分别是0.12、0.31、0.25、0.14和0.20,而从开始点直到渗开结束点KP1、KP3、KP5、KP7和KP9的长度分别是0.51、0.60、0.69、0.42和0.55。另一方面,在绘图轨迹BK4、BK5、BK6、BK7和BK8上从开始点直到渗开开始点KP11、KP13、KP15、KP17和KP19的长度分别是0.71、0.84、0.82、0.78和0.73,而从开始点直到渗开结束点KP12、KP14、KP16、KP18和KP20的长度分别是0.92、0.93、0.91、0.95和0.94。(4-1-3)模糊参数模糊参数是用于形成模糊区域数据的参数,由以下参数组成用于设定模糊区域数据的渗开开始长度数据以便规定沿着图象长度的渗开开始位置的参数C1,用于设定模糊区域数据的渗开结束长度数据以便规定沿着图象长度的渗开结束位置的参数C2,用于规定沿着图象宽度的渗开的上缘的参数C3,用于规定沿着图象宽度的渗开的下缘的参数C4,用于规定沿着图象长度的渗开开始位置变化范围的参数C5,用于规定沿着图象长度的渗开结束位置变化范围的参数C6,以及规定沿着图象宽度的模糊密度的参数C7。如以下所说明的那样,这些参数C1至C7规定了模糊区域KS在图象中的位置。
如图36所示,将参数C1至C3设定指定的值来规定模糊区域KS在图象ZK中的位置。
就是说,将按图象长度为1进行归一化得到的、表示从开始点PS直到渗开开始位置的长度的、在0至1范围内的值作为参数C1,将按图象长度为1的进行归一化得到的、表示从开始点PS直到渗开结束点的长度的、在0至1范围内的值作为参数C2。参数C1和C2的关系自然是C1≤C2。
只要被提供了渗开开始位置或渗开结束位置,就可以用不同的方式来设定参数C1和C2。例如,可将参数C1设定为表示在绘图轨迹BK上的渗开开始位置KPS的平均位置,将参数C2设定为表示在绘图轨迹BK上的渗开结束位置KPE的平均位置。参数C1和C2都可以是实际长度,不必被利用被设定为1的绘图长度进行归一化。
将参数C3和C4设定为与对被绘图轨迹BK的数目m归一化的模糊的上端部和下端部分界的、绘图轨迹BK的数目对应的、在0至1范围内的值。就是说,在m根绘图轨迹BK中,第(C3×m)根绘图轨迹表示模糊区域KS上端部,第(C4×m)根绘图轨迹表示模糊区域KS的下端部。参数C3和C4分界了将沿图象ZK的宽度的模糊范围。
这些参数C3、C4的值被设置为使得对于模糊区域KS的较宽和较窄的宽度来说|C3-C4|将分别为较大和较小。如果模糊区域KS在一个或其它方向上沿着图形ZK的宽度被偏移,则参数C3、C4的值设置为接近0或1的值。
只要沿图形的宽度的上面和下面位置已知,就可以以不同的方式设置参数C3和C4。例如,参数C3和C4的设置使得分别等于从该图形ZK的一轮廓到该模糊区域的上端部的长度和等于从该图形ZK的另外轮廓到该模糊区域的下端部的长度。虽然参数C3、C4用绘图轨迹BK的数目m归一化,但绘图轨迹BK的实际数目可自然地使用而无须归一化。
为了确定由被置为1的图象长度归一化的模糊开始点位置的变化范围,参数C5被设置为在从0到0.5×(C2-C1)范围内的一个值。类似地,为了确定由被设置为1的图象长度归一化的模糊开始部分的变化范围,参数C6被设置为从0到0.5×(C2-C1)范围内的一个值。
参数C5、C6可以以所知的在模糊开始点位置或模糊结束位置的变化的一不同方式而被置位。虽然参数C5、C6由置为1的图形长度归一化,但实际的长度可被自然地使用而无须归一化。
表示模糊浓度被归一化的参数C7设置为在从0到1的范围内的一值以便在由参数C3和C4所规定的范围内不存在模糊而在分别由0和1表示的整个范围内存在模糊。例如,如果参数C7是0.4并且由参数C3、C4所规定的绘图轨迹BK横过的区域数为K,则在所绘图轨迹之中(0.4×K)绘图轨迹和((1-0.4)×K)绘图轨迹分别表示模糊的部分(也就是在该部分中没有墨水)和非模糊的部分(也就是在该部分中有墨水)。
参数C7可以以所提供的沿已知图形宽度的模糊浓度的任何不同方式而被设置。例如,参数C7可被设置为在模糊的部分所出现的绘图轨迹BK的一实际数目。
应提及的是,当在纸上用一毛笔实际地绘制一图形时,可能产生模糊范围较大,从而使该模糊部分出现的墨水的数量较小。这种模糊类型后面称之为强模糊。在该强模糊的情况中,在模糊开始部分和模糊结束部分中的变化趋于减小。相反,在图38所示的模糊的情况中,该模糊的范围小,从而在模糊部分所出现的墨水的数量就大。这种类型的模糊后面称之为线性模糊。在线性模糊的情况中,在模糊开始部分和模糊结束部分中的变化趋于增加。
因此,为了表示强模糊,对于参数C7设置为0.8到1.0序列中的一较大值,同时对于参数C5和C6设置为0.4到0.7序列中的一较小值。另一方面,为了表示线性模糊,对于参数C7设置为0.4到0.7序列中的一较小值,同时对参数C5和C6设置为1/6到1/8序列中的一较大值。
从一个模糊区域到另一模糊区域设置这些参数,这样一来,如果存在有多个模糊区域,为了复制各自的模糊区域则设置多个模糊参数。基于从一个模糊区域到另一个模糊区域设置的模糊参数而产生用来复制各自模糊区域的模糊区域数据。(4-1-4)形状数据如图39中的例子所示,形状数据是规定图形形状的数据,并且形状数据包括长度数据、宽度数据、曲率数据和弯曲点数据。基于所补充的全轮廓数据计算这些数据值,这样,第一轮廓数据坐标点的数与第二轮廓数据坐标点的数会彼此相等。
长度数据是规定从一图形的开始点到结束点长度的数据,并且如图39所示包括有一长度L。这个长度L等效于上述图形长度。对于这个长度L,设置自第一轮廓数据所求得的第一轮廓的长度和自第二轮廓数据所求得的第二轮廓的长度的平均值。具体说,第一轮廓的长度是第一轮廓数据的相邻坐标点Aj和Aj+1之间距离的顺序计算的值之和,同时第二轮廓的长度是第二轮廓数据的相邻坐标点Bj和Bj+1之间距离顺序计算的值之和。也就是,如果坐标点Ai的X坐标和Y坐标分别为XAi和YAi,坐标点Ai+1的X坐标和Y坐标分别为XAi+1和YAi+1,坐标点Bi的X坐标和Y坐标分别为XBi和YBi,坐标点Bi+1的X坐标和Y坐标分别为XBi+1和YBi+1时,则长度L从等式(4-1)求得L=12×Σi=1n-1(XAi-XAi+1)2+(YAi-YAi+1)2+Σi=0n-1(XBi-XBi+1)2+(YAi-YAi+1)2···(4-1)]]>宽度数据是表示图形宽度的数据,并且包括作为对第一或第二轮廓数据的每个坐标点设置的坐标点Ai和坐标点Bi之间的W个宽度Wi(i=1,2,3,......,W),如图39所示,W是第一或第二坐标点的数。
曲率数据是表示图形的弯曲度的数据,并且包括作为对第一或第二轮廓数据的每个坐标点设置的W个弯曲曲率ri(i=1,2,3,......,W)。具体说,为了求得曲率ri,求出坐标点Ai-1和坐标点Bi-1之间的一中间点的坐标点Ci-1坐标点Ai和坐标点Bi之间的一中间点的坐标点Ci以及坐标点Ai+1和坐标点Bi+1之间的一中间点的坐标点Ci+1并且计算连接坐标点Ci-1和坐标点Ci的一线和连接坐标点Ci和坐标点Ci+1的一线之间的角度θ,这个角度θi是一用于坐标点Ai或坐标点Bi的弯曲曲率ri。对于该弯曲曲率来说该角度的范围是从0°到180°并且该角度越小或越大,该图形的弯曲就越大或越小。应注意的是,为了规定自由弯曲状态,对于开始点A1或B1的曲率ri和对于结束点Aw和Bw的曲率rw预置到180°。
弯曲点数据是用于弯曲点的数据,在那里该曲率ri表明弯曲超过了一预置角度。该弯曲点数据由弯曲点位置r_p和弯曲点数r_n组成。弯曲点位置r_p规定了超过一预定值(例如115°)的曲率ri的数i,同时弯曲点r_n的数是这种曲率ri的数。还有可能只设置弯曲点位置r_p来作为曲率数据和从设置的弯曲点位置r_p的数求出弯曲点数r_n。(4-1-5)图形数据如前所述,图形数据是为了在显示器件5上显示一图形的从象素到象素设置的数据。对于一给定的象素该图形数据包括在该象素中指定墨水的状态的墨水数据和指定该象素亮度的亮度数据,如图41所示。墨水数据包括有指定在该象素中墨水的存在和不存在的有墨水/无墨水数据、指定在该象素中墨水浓度的墨水浓度数据和指定在该象素中墨水量的墨水量数据。(4-1-6)毛笔数据毛笔数据是模拟一毛笔的数据,如图42所示,它包括与设置的m绘图轨迹有关的墨水量和墨水浓度IOk(k=1,2,3,......,m)和墨水浓度IDk(k=1,2,3,......,m)。基于墨水水量IQk和墨水浓度IDk,将接着说明用于所设置的图形数据的上述墨水量数据和墨水浓度数据。(4-2)模糊处理器的结构现在说明模糊处理器40的结构。
参见图43,模糊处理器40包括一用来设置毛笔数据的一毛笔数据设置单元41和用来读取例如来自外部存贮器件4或存贮器3的由字形构成处理器20所构成的字形的全轮廓数据的一数据读出单元42。模糊处理器还包括基于自数据读出单元42所提供的全轮廓数据用来设置模糊参数的一模糊参数设置单元43和基于由模糊参数设置单元43所置的模糊参数用来构成模糊区域数据的一模糊区域数据形成单元44。该模糊处理器类似地包括基于自数据读出单元42所提供的全轮廓数据用来在一图形中的一象素上设置墨水数据、在毛笔数据设置单元41中设置毛笔数据和设置由模糊区域数据形成单元44所形成的模糊区域数据的墨水数据设置单元45,和用来对具有墨水数据设置单元45中所设置的墨水数据的象素中设置亮度数据的一亮度数据设置单元46。
由亮度数据设置单元46所设置的亮度数据被提供给显示器件5并且相应于该亮度数据的图形在显示器件5上被显示以使在显示器件5上显示一模糊图形。(4-2-1)毛笔数据设置单元如图44所示例子,毛笔数据设置单元41包括一用来从多个预形成的毛笔数据中选择毛笔数据的毛笔选择单元411,和用来基于来自输入器件1的输入数据形成毛笔数据的一毛笔数据形成单元412。由毛笔数据选择单元411选择的毛笔数据或由毛笔数据形成单元412所形成的毛笔数据被提供给墨水数据设置单元45。
毛笔选择单元411从存储器3或外部存储器件4中读出多个毛笔数据并且选择响应于由应响于该用户启动的用户写入的一信号的多个毛笔数据中的一个,特别是,如果由各自的毛笔要绘制的图形被显示在显示器件5上,并且借助于诸如鼠标器之类的输入器件,从在显示器件5中所显示的多个图形中通过选择所希望的图形而使用户选择毛笔数据,基于自输入器件1的相应于用户启动的一信号该毛笔选择单元411选择毛笔数据。毛笔选择单元411将所选择的毛笔数据传送到墨数据选择单元45。其结果是可以容易地由用户选择所希望的图形绘制所需的毛笔数据。
毛笔形成单元412基于自输入器件1所输入的数据而形成毛笔数据。具体说,如图45的例子所示,基于在由输入器件1所输入的毛笔上的各个点上的墨水量值,该毛笔数据形成单元412计算在该毛笔上每个点的墨水量。如图46的例子所示,基于在该毛笔的各个点上的墨水浓度值,毛笔数据形成单元412计算毛笔上每个点的墨水浓度。以这种方式通过仅仅输入在该毛笔中所包含的墨水浓度或墨水水量的近似分布并通过在毛笔输入器件处形成新的毛笔数据可以简化该输入器件1的数据输入。
为了进一步简化,如图47所示的例子,还可以基于在由输入器件1所输入的毛笔中的完整的墨水量由毛笔形成单元412计算在该毛笔中的每点上的墨水量。如图48的例子所示,相类似地可以基于在由输入器件1所输入的毛笔中的整个墨水浓度,由该毛笔形成单元412计算在该毛笔中每个点上的墨水浓度。(4-2-2)数据读出单元如图49中的例子所示,数据读出单元42包括有用来从输入器件1、存储器3或外部存储器件4读出一个或多个全轮廓数据的多个轮廓数据读取单元421,用来按照一预定的规则相应于来自多个轮廓数据读取单元421的全轮廓数据的模糊图形而选择全轮廓数据的轮廓数据选择单元422、以及用来选择由多个轮廓数据读取单元421所提供的一个或多个全轮廓数据的一轮廓数据补充单元423如图49所例示。
多个轮廓数据读取单元421从输入器件1、存储器3或外部存储器件4读取一个或多个全轮廓数据。具体说,是读取一个或多个表示具有至少一笔划的模糊字符或符号的全轮廓数据,也就是由上述字形形成单元20所制备的字形。
如果由多个轮廓数据读取单元421读取的表示一字符或符号的一个或多个全轮廓数据,也就是如果读取相应于构成该字符或符号的笔划的各自全轮廓数据,则轮廓数据选择单元422根据预置的规则从全轮廓数据中间选择相应于模糊图形的全轮廓数据。由轮廓数据选择单元422所选择的全轮廓数据所表示的图形是一该模糊图形的目标,同时由未选择的全轮廓数据所表示的图形不是模糊图形目标。轮廓数据选择单元422将该信息作为模糊图形的一目标的全轮廓数据转送到模糊参数设置单元43和墨水数据设置单元45。
其原因是,如果一字符是用一毛笔在纸上实际的书写,则没有必要在构成字符的所有笔划中产生模糊从而使得在该字符中通常共同存在有一模糊笔划和一非模糊笔划。如下面将要说明的,在模糊笔划和非模糊笔划之间存在有一定的统计规则。根据预置规则轮廓数据选择单元422选择构成该模糊图形的目标的全轮廓数据。
具体说,这个预置规则规定所选择的全轮廓数据数与整个轮廓数据数的比不大于一预定值,例如三分之一。也就是,该轮廓数据选择单元422从被提供到轮廓数据选择单元422的所有全轮廓数据中首先选择具有由该全轮廓数据所表示的最长笔划的全轮廓数据。该轮廓数据选择单元422还从在上述选择最长全轮廓数据之前和之后直接地排除全轮廓数据的全轮廓数据之中选择由全轮廓数据所表示的具有一较长笔划的全轮廓数据。该轮廓数据选择单元422重复上述操作直到所选择的全轮廓数据数直至达到整个全轮廓数据的三分之一为止。预置规则还可以是这样一种规则,即从提供给该轮廓数据选择单元422的一个或多个全轮廓数据中选择全轮廓数据以便使得所选择的全轮廓数据对全轮廓数据的总数的比不大于该预置比,例如三分之一,并且仅仅一个全轮廓数据从剩余全轮廓数据中随机地被选择。
按照预置规则从一个或多个全轮廓数据中选择作为模糊图形的一目标的全轮廓数据并绘制该字符,这样在由所选择的全轮廓数据所表示的笔划中产生模糊而由未选择的全轮廓数据所表示的笔划中未产生模糊,从而该字符可以被绘制得更为美观。
但是,如果由多个全轮廓数据读取单元421读取表示除字符或符号之外的一图形一个或多个全轮廓数据,则轮廓数据选择单元422选择由多个全轮廓数据读取单元421所读取的所有全轮廓数据作为该模糊图形目标的全轮廓数据。
另一方面,如图49中的例子所示,轮廓数据补充单元423包括有一用来向由多轮廓数据读取单元421所提供的全轮廓数据的第一轮廓数据和第二轮廓数据补充坐标点的轮廓数据增补单元424和一用来将自多个轮廓数据读取单元421所提供的第一轮廓数据的坐标点数与第二轮廓数据的坐标点数相一致的轮廓数据调整单元425。
轮廓数据补充单元423通过轮廓数据补充单元424向第一轮廓数据和第二轮廓数据补充坐标点以便在该坐标点之间产生具有较小数的新坐标数据并且通过轮廓数据调整单元425向新的全坐标点进一步补充坐标点以便构成新的全轮廓数据,在其中第一轮廓数据的坐标点数等于第二轮廓数据的坐标点数。
具体地说,如果第一轮廓数据的相邻坐标点Ai和Ai+1之间的距离是大于一预置值,则轮廓数据补充单元424在相邻坐标点Ai和Ai+1之间补充坐标点以便构成新的第一轮廓数据,这样相邻坐标点之间的距离将小于一预置值。另一方面,如果第二轮廓数据的相邻坐标点Bi和Bi+1之间的距离是大于一预置值,则轮廓数据补充单元424在相邻坐标点Bi和Bi+1之间补充坐标点以便形成新的第二轮廓数据,这样相邻坐标点之间的距离将小于一预置值。被选择的预置值使得由新的第一和第二轮廓数据所表示的第一和第二轮廓将呈现平滑。
轮廓数据补充单元424补充坐标点使得使用样条曲线或Bezier曲线在顺序连接坐标点Ai所产生的第一轮廓和顺序连接坐标点Bj所产生的第二轮廓将变得平滑。具体说,轮廓数据补充单元424将在开始点的坐标点A1所设置的切线方向作为从坐标点A1向坐标点A2的前进方向以便设置一横越坐标点A1的样条曲线,并且在样条曲线上将该坐标点补充到第一轮廓数据。轮廓数据补充单元424还将在开始点的坐标点B1所设置的切线方向作为从坐标点B1向坐标点B2的前进方向以便设置横越坐标点Bj的样条曲线,并且在样条曲线上将该坐标点补充到第二轮廓数据。
通过在轮廓数据补充单元424中补充坐标点,第一和第二轮廓变为平滑,因而能使一被绘制的图更为美观。
轮廓数据补充单元424将全轮廓数据发送到轮廓数据调整单元425,在其中坐标点之间的距离变得较小于预置值并且第一和第二轮廓变得平滑。
如果,在从轮廓数据补充单元424所提供的全轮廓数据中,第一轮廓数据的坐标点数和第二轮廓数据的坐标点数互相不同时,轮廓数据调整单元425向第一轮廓数据或第二轮廓数据补充坐标点,从而使得第一和第二轮廓数据的坐标点数变成相等,以便形成新的第一和第二轮廓数据。
具体说,轮廓数据调整单元425选择从具有较少坐标点的第一和第二轮廓数据中的一个开始的在坐标点之间具有一较宽距离的两个相邻坐标点。如果在该坐标点之间的距离全都相同,则轮廓数据调整单元425随机选择二个坐标点。轮廓数据调整单元425补充的一坐标点是在连接这些两个坐标点的一直线、Bezier曲线或样条曲线上并且与这些坐标点有相等的间隔。这样使补充的坐标点能够使得第一和第二轮廓平滑并且降低了坐标点之间距离的变化。
因此,轮廓数据增补单元423向由多个轮廓数据读取单元421所提供的全轮廓数据补充新的坐标点以形成新的全轮廓数据。全轮廓数据补充单元423向模糊参数设置单元43和墨水数据设置单元45提供新的全轮廓数据。(4-2-3)模糊参数设置单元参见图50,模糊参数设置单元43包括有一为了响应于用户启动的输入器件1的信号而从多个模糊参数中选择模糊参数而用来从存储器3或外部存贮器件4读取多个预形成的模糊参数的模糊参数选择单元431,和一用来基于从输入装置1输入的作为从开始点到结束点绘制图形的毛笔的运笔速率和毛笔压力分布而计算模糊参数的第一模糊参数计算单元432。该模糊参数设置单元还包括有基于由自数据读出单元42所提供的全轮廓数据所表示的图形形状用来计算模糊参数的第二模糊参数计算单元433,和用来由通过输入器件1所输入的参数C1至C7来形成模糊参数的一模糊参数输入器件434。
模糊参数选择单元431向模糊区域形成单元44传送所选择的模糊参数,同时第一模糊参数计算单元432向模糊区域形成单元44传送所计算的模糊参数。第二模糊参数计算单元432向模糊区域形成单元44传送所计算的模糊参数。模糊参数输入器件434向模糊区域形成单元44传送所形成的模糊参数。
模糊参数选择单元431从具有由存储器3或外部存贮器件4所提供的参数C1至C7的值的不同组合的多个预形成模糊参数中选择模糊参数。具体说,利用模糊参数所得到的典型模糊例子被显示在显示器件5上。如果用户通过诸如一鼠标器之类的输入器件从在显示器件5上所显示的多个模糊例子中选择所期望的模糊例子,从而选择模糊参数,则模糊参数选择单元431基于来自响应于用户启动的输入器件1的信号而选择模糊参数。模糊参数选择单元431将所选择的模糊参数传送到模糊区域数据形成单元44。其结果是用户可以容易地选择用来绘制所期望图形所需的模糊参数。
第一模糊参数计算单元432基于自输入器件1输入的速率分布数据和毛笔分布数据而计算参数C1至C7,并将包括这些参数C1至C7的模糊参数传送到模糊区域数据形成单元44。该速率分布数据是规定在从开始点到结束点之间绘制图形期间毛笔传送速率的分布数据,并且如图51所示包括有在该图形中的各个g位置上规定毛笔传送速率的g个速率Vi(i=1,3,......,g)。该毛笔分布数据是规定在从开始点到结束点绘制图形期间毛笔压力的分布的数据,并且如图51所示包括有在图形的各个g位置上规定毛笔压力的g个压力Pi(i=1,2,3,......,g)。
对于用来输入速率分布数据和毛笔压力分布数据的输入器件1采用了一输入板。也就是,用户将该输入板输入的笔移动速率作为速率分布数据,同时输入笔压力作为毛笔分布数据。这就能够更容易地输入速率分布数据和毛笔分布数据。
第二模糊参数计算单元433基于由从后面说明的数据读出单元42所提供的全轮廓数据所表示的图形形状而计算参数C1至C7,并且向模糊区域数据形成单元44传送包括参数C1至C7的模糊参数。
模糊参数输入单元434将自输入器件1所输入的参数C1至C7作为模糊参数传送到模糊区域数据形成单元44。
基于响应于由用户操作的来自输入装置1的信号,模糊参数设置单元43确定模糊参数选择单元431、第一模糊参数计算单元432、第二参数计算单元433和模糊参数输入器件434中的那一个单元被用于设置该模糊参数。如果用户希望观察该模糊方式时设置模糊参数,则他或她选择模糊参数选择单元431。如果用户希望基于实际毛笔运送速率或实际书写压力来设置模糊参数,则他或她选择第一模糊参数计算单元432。如果用户希望用来产生通常的模糊,则他或她选择一模糊参数计算单元432。最后,如果用户希望自由地设置模糊参数,则他或她选择模糊参数输入器件434。(4-2-4)模糊区域数据形成单元如同下面将要说明的,模糊区域数据形成单元44基于自模糊参数设置单元43所提供的模糊参数来形成模糊区域数据。该模糊区域数据形成单元44将所形成的模糊区域数据传送到墨水数据设置单元45。(4-2-5)墨水数据设置单元参见图52,该墨水数据设置单元45包括有一用来基于自数据读取单元42所提供的全轮廓数据来检测该象素的第一象素检测单元451,和用来在由第一象素设置单元451所检测的象素上设置图象数据的第一图象数据设置单元452。该墨水数据设置单元45还包括有基于由第一象素检测单元451所检测的象素来检测该象素的第二象素检测单元453以及在由第二象素设置单元45所检测的象素上用来设置图象数据的一第二图象数据设置单元454。
基于自数据读取单元42所提供的全轮廓数据,第一象素检测单元451检测在连接第一轮廓数据的坐标点Ai和第二轮廓数据的坐标点Bi的线段Li上的象素。在这种方式中一个或多个象素(通常为多个象素)被检测。i的范围是从1到W。对于i=1所检测的象素是在开始点的象素,同时对i=W所检测的象素是在结束点的象素。
第一图象数据设置单元452包括有一墨水/无墨水设置单元455,一第一墨水浓度设置单元456和一第一墨水量设置单元457。第一图象数据设置单元452基于自毛笔数据设置单元41所提供的毛笔数据、自数据读取单元42所提供的全轮廓数据和自模糊区域数据形成单元44所提供的模糊区域数据,在由第一象素检测单元451所检测的象素中设置墨水数据,并且将该墨水数据传送到第二图象数据设置单元454和亮度数据设置单元46。
基于全轮廓数据和模糊区域数据,该墨水/无墨水数据设置单元455判断由第一象素检测单元451所检测的象素是否在模糊区域KS之内。如果该象素是在模糊区域KS之内,则墨水/无墨水设置单元455设置用来规定在该象素内不存在墨水的状态的墨水/无墨水数据。如果该象素不在该模糊区域KS之内,则墨水/无墨水设置单元455设置用来规定在该象素内存在墨水的状态的墨水/无墨水数据。如果存在有由第一象素检测单元451所检测的多个象素,则墨水/无墨水设置单元455通常判断这些象素是否单独地在该模糊区域中以便设置墨水/无墨水数据。
如果由与横越该象素的图形绘制轨迹有关的模糊区域数据的模糊开始长度数据和模糊开始数据所表示的模糊开始长度和模糊结束长度分别由Ks和Ke表示,并且从开始点直到线段li的图形长度是Li,则分别对于Ks<Li<Ke和Li≤Ps或Ke≤Li该墨水存在/墨水不存在数据设置单元455判断该象素是在该模糊区域Ks的内部和外部。但是,如果设置了多个模糊区域数据,这个判断是对于每个模糊区域KS而给出的。也就是,如果被判断的象素是出现在由任何模糊区域数据所表示的模糊区域KS,则该象素被判断为是在模糊区域KS之内。反之,如果被判断的象素是出现在由所有模糊区域数据所表示的模糊区域KS之外,则该象素被判断为是在模糊区域KS的外部。
另一方面,基于与第一象素检测单元451所检测的横越象素的图形绘制轨迹有关的毛笔数据,第一墨水浓度设置单元456在由第一象素检测单元451所检测的象素中设置墨水浓度,这样从开始点直至线段li的较短的图形的长度上墨水浓度较高。第一墨水浓度设置单元456将墨水浓度数据传送到第二图象数据设置单元454和亮度数据设置单元46。
基于与由第一象素检测单元451所检测的横越该象素的图形绘制轨迹有关的毛笔数据,第一墨水量设置单元457在由第一象素检测单元451所检测的象素中设置墨水量数据,这样从开始点直至线段li的图形的长度越短,墨水量越大。第一墨水量设置单元457将墨水量数据传送到第二图象数据设置单元454和亮度数据设置单元46。
但是,如果为了规定墨水不存在对该象素设置墨水存在/墨水不存在数据,则第一墨水浓度设置单元456将墨水浓度数据置为0,同时第一墨水量设置单元将墨水量数据置为0。如果存在有多个由第一象素检测单元451所检测的象素,则第一墨水浓度设置单元456和第一墨水量设置单元457通常分别基于所设置的墨水浓度数据和墨水量数据计算在该象素中的墨水浓度和墨水量。
第二象素检测单元453检测处在线段li上的象素之间的象素(如由第一象素检测单元451所检测的那样)和检测在相邻于线段li的线段li+1上的一象素(如由第一象素检测单元451所检测的那样)。通常,多个象素是由第二象素检测单元453所检测。如果在线段li上的象素和相邻于线段li的线段li+1上的象素是相互邻接的象素,则由第二象素检测单元453检测零象素。
第二图象数据设置单元454包括有一用来在由第二象素检测单元453所检测的象素中设置墨水浓度数据的第二墨水浓度设置单元458和用来在由第二象素检测单元453所检测的象素中设置墨水量数据的第二墨水量设置单元459。
第二墨水浓度设置单元458基于在由第一图象数据设置单元452所提供的线段li的象素中所设置的墨水浓度数据来计算在线段li中的象素和由第二象素检测单元453所检测的象素之间的距离,在由第一图象数据设置单元452所提供的线段li+1的象素中所设置的墨水浓度数据、以及在线段li+1中的象素和由第二象素检测单元453所检测的象素之间的距离、由第二象素检测单元453所检测的象素中的墨水浓度在由第二象素检测的单元453所检测的象素中设置的墨水浓度并将该墨水浓度传送到亮度数据设置单元46。
基于在由第一图象数据设置单元452所提供的线段li上的象素中所设置的墨水量数据,第二墨水量设置单元459计算在线段li上的象素和由第二象素检测单元453所检测的象素之间的距离、在由第一图象数据设置单元452所提供的线段li+1上的象素中所设置的墨水量数据、以及在线段li+1上的象素和由第二象素检测单元453所检测的象素之间的距离、由第二象素检测单元453所检测的象素中的墨水量、由第二象素检测单元453所检测的象素中所设置墨水量数据并将该墨水量数据传送到亮度数据设置单元46。(4-2-6)亮度数据设置单元基于由上述纸纤维结构数据形成单元所形成的纸纤维结构数据和在第一和第二图象数据设置单元中所设置的图象数据,亮度数据设置单元46计算在每个象素中的亮度并对每个象素设置亮度数据。
基于由纸纤维结构数据所表示的纤维M的数和在第一图象数据设置单元452及第二图象数据设置单元454中设置的墨水浓度和墨水量数据,如像接着说明的那样,亮度数据设置单元46计算每个象素的亮度数据。但是,对于在第一图象数据设置单元452或在第二图象数据设置单元454中不设置图象数据的象素,设置缺省数据(指定纯白色数据或指定纯黑色数据)。
亮度数据设置单元46计算在构成纸纤维结构数据的数据中仅纤维数M的数据使用的亮度。因此具有至少纤维数M的纸纤维结构数据是足够的,同时它对于具有毛细管数的数据是必须的。(4-3)模糊处理下面说明模糊处理器40的操作。
如果模糊选择单元431或第一模糊参数计算单元432用于设置模糊参数,则模糊处理器40通过以下步骤(a)到(d)来执行模糊操作(a)由毛笔数据设置单元41设置毛笔数据的步骤;(b)利用模糊参数选择单元431或第一模糊参数计算单元432通过模糊参数设置单元43设置模糊参数和接着基于由模糊参数设置单元43设置的模糊参数通过模糊区域数据形成单元44形成模糊区域数据的步骤;(c)由数据读取单元42从输入器件1、存储器3、外部存贮器4或字形形成处理器20读取一个或多个全轮廓数据并由轮廓数据选择单元422选择该全轮廓数据作为模糊绘制的目标;和(d)基于自数据读取单元42所提供的全轮廓数据,由墨水数据设置单元45在图形的象素中设置墨水数据,由毛笔设置单元41和由模糊区域数据形成单元44所形成的模糊区域数据设置毛笔数据并随后对在由墨水数据设置单元45所设置了墨水数据的象素中设置亮度数据。
步骤(a)到(c)可以任何顺序被执行并且这些步骤是在步骤(d)之前执行。
如果第二模糊参数计算单元43 3用来设置模糊参数,则模糊处理器40由下述步骤(e)到(h)来执行模糊绘制(e)由毛笔数据设置单元41设置毛笔数据的步骤;(f)由数据读出单元42从输入器件1、存储器3、外部存贮器件4或字形形成处理器20读出一个或多个全轮廓数据并由轮廓数据选择单元422选择该全轮廓数据作为模糊绘制的目标;(g)基于模糊数据选择单元422所选择的作为模糊绘制的目标的全轮廓数据,利用第二模糊参数计算单元43,由模糊参数设置单元43设置模糊参数,并且随后基于由模糊参数设置单元43所设置的模糊参数由模糊区域数据形成单元44形成模糊区域数据;和(h)基于由数据读取单元42提供的全轮廓数据、由毛笔设置单元41设置的毛笔数据和由模糊区域数据形成单元44所形成的模糊区域数据而由墨水数据设置单元45在图形的象素中设置墨水数据,并且随后在已由墨水数据设置单元45设置了墨水数据的象素中设置亮度数据。
在步骤(h)被执行之前步骤(e)可在所执行的任何阶段被设置。
下面将详细说明模糊绘制处理步骤、由模糊参数设置单元43执行的模糊参数的设置、由模糊区域数据形成单元44执行的模糊区域数据的形成、由轮廓数据选择单元422执行的全轮廓数据的选择和由墨水数据设置单元45执行的墨水数据的选择。(4-3-1)由模糊参数设置单元的模糊参数的设置现在参照图53到57的流程图说明模糊参数设置单元43的工作例子。
在步骤ST-4-1-1,有关模糊参数选择单元431、第一模糊参数计算单元432或第二模糊参数计算单元43 3所采用的一命令从输入器件1被输入到模糊参数设置单元43。
然后,在步骤ST4-1-2、ST4-1-3、ST4-1-4和ST4-1-5中,基于在步骤ST4-1-1中所输入的命令,模糊参数设置单元43判断模糊参数选择单元431、第一模糊参数计算单元432、第二模糊参数计算单元433或模糊参数输入器件434中的哪一个单元被采用。如果模糊参数选择单元431被使用,则模糊参数设置单元43被转移到步骤ST4-1-21,反之,如果第一模糊参数计算单元432被使用,则模糊糊参数设置单元43被转移到步骤ST4-1-31。如果第二模糊参数计算单元433被使用,则模糊参数设置单元43转移到步骤ST4-1-41,反之,如果模糊参数输入器件434被使用,则模糊参数设置单元43被转移到步骤ST4-1-51。
参见图54,在步骤ST4-1-21,如果利用模糊参数选择单元431设置了该模糊参数,则模糊参数设置单元将一使用在先形成的多个模糊参数的命令从输入器件1输入到模糊参数选择单元431。具体说,通过使用在显示器件5中的每个预形成的多个模糊参数而产生模糊的显示例子,以及通过用户使用诸如鼠标器之类的输入器件在显示器件5上所显示的模糊例子中选择一个所期望的模糊例子,一个有关采用哪一模糊参数的命令被输入到模糊参数选择单元431。因而用户就能容易地命令需要用来产生所希望模糊的模糊参数。
然后,在步骤ST4-1-22,基于在步骤ST4-1-21中所输入的命令,模糊参数选择单元431选择以前形成的多个模糊参数中的一个参数,并设置所选择的模糊参数以完成该处理。
在步骤ST4-1-31,如果使用第一模糊参数计算单元432来设置模糊参数,则第一模糊参数计算单元将从诸如输入板之类的输入器件输入速率分布数据和毛笔压力分布数据转移到第一模糊参数计算单元432。但是,如果输入板被用作为输入器件1,则在输入时间由于笔的摆动而发生意外的情况下输入数据会发生波动。因此,如果在一短期间内速率分布或毛笔压力分布有明显的变化,则把在输入时间里由于笔的摆动而引起的速率分布或毛笔压力分布的这些变化归于意外的变化并且基于速率分布或毛笔分布的之前和之后的瞬间来进行数据修正。
然后,在步骤ST4-1-32,第一模糊参数计算单元432将在步骤ST4-1-31中所输入的速率分布数据和毛笔压力分布数据变换成双电平信号。然后将第一模糊参数计算单元432转移到步骤ST4-1-33。也就是,第一模糊参数计算单元432处理该速率分布数据以便使得在毛笔运送方向上的各自点上的速率Vi(i=1,2,3,......,g)随着毛笔运笔速率较高和较低而分别地高于预置值和不高于预置值而分别设置为1和0。类似地,第一模糊参数计算单元432处理毛笔压力分布数据以便使得在毛笔传送方向上的各自点上的毛笔压力Pi(i=1,2,3,......,g)随着该毛笔压力较高和较低而分别高于预置值和不高于预置值分别被置为1和0。
具体说,如果如图58中例子所示所馈送的速率分布数据和毛笔分布数据也被转换为自输入器件1输入的双电平信号,则第一模糊参数计算单元432设置该预置值为0.5,并且如图59所示以双电平形式形成速率分布数据和毛笔分布数据。在图59和60中所示的速率分布数据和毛笔分布数据是为了说明起见而被简化的,实际上,在有效数字数或在全部数据容量中还有更多的被转换成双电平信号的数据。
在步骤ST4-1-33,基于在步骤ST4-1-32中被转换成双电平信号的速率分布数据和毛笔分布数据,第一模糊参数计算单元432形成模糊毛笔运笔数据。然后由第一模糊参数计算单元432转到步骤ST4-1-34。
具体说,第一模糊参数计算单元432形成模糊毛笔运笔数据制成的g个模糊数据ti(i=1,2,3,......,g)规定了在该图形中在各自的g个位置上在毛笔运笔期间模糊的状态。在这些g个点上的模糊数据ti的值是在从0到1的范围内。模糊方式的较强和较弱分别对应模糊数据ti的值分别较大和较小。
也就是,如果速率Vi为0和毛笔压力Pi为0,则速率为低和毛笔压力也为低,这样假定不明显地出现模糊,并且因此模糊数据ti被置为例如0.3的较小值。如果速率Vi是1和毛笔压力Pi为0,则速率为高而毛笔压力为低,这样假定出现了模糊并且因此模糊数据ti被置为最大值,即1。如果速率为0和毛笔压力Pi为1,则速率为低而毛笔压力为高,这样假定不出现模糊并且因此模糊数据ti被置为最小值,即0。如果速率Vi为1和毛笔压力Pi为1,则速率为高和毛笔压力也为高,这样假定模糊出现在某种些范围内并且因而模糊数据ti被置为一较大值,例如0.5。
基于在图59中所示的速率分布数据和毛笔压力分布数据,图60中所示的的模糊毛笔运笔数据是形成典型的模糊毛笔运笔数据的数据。
在步骤ST4-1-34,基于在步骤ST4-1-33所形成的模糊毛笔运笔数据,第一模糊参数计算单元432计算该模糊参数,并且设置所计算的数作为该模糊参数以终止该处理。
在图56中的步骤ST4-1-41,当是利用第二模糊参数计算单元433来设置模糊参数时,该处理进行转移,第二模糊参数计算单元433形成由轮廓数据读出单元42所提供的全轮廓数据所表示的图形的形状所表示的形状数据。然后第二模糊参数计算单元433转移到步骤ST4-1-42。
在步骤ST4-1-42,基于在步骤ST4-1-41中所形成的形状参数第二模糊参数计算单元433计算该模糊参数,并且将所计算的参数作为模糊参数而设置,以终止处理。
在图57中所示的步骤ST4-1-51,当该模糊参数是利用模糊参数输入器件434而被设置时处理进行转移,将自输入器件1所输入的参数C1到C7送到模糊参数输入器件434。
然后,在步骤ST4-1-52,模糊参数形成单元将在步骤ST4-1-51中所输入的参数C1到C7直接作为模糊参数而设置以终止该处理。
如果在一图形中重新设置了多个模糊区域,也就是如果设置了多个模糊区域数据,则相应于各自的模糊区域数据设置多个模糊参数。(4-3-2)由模糊区域数据形成单元进行的模糊区域数据的形成参照图61的流程图说明模糊区域数据形成单元44的具体操作。
在步骤ST4-2-1,模糊区域数据形成单元44对模糊区域数据初始化并将所有模糊开始长度数据和所有模糊结束长度数据设置为1。然后该模糊区域数据形成单元44转移到步骤ST4-2-2。
在步骤ST4-2-2,模糊区域数据形成单元44参照参数C7的值并且如果该参数C7的值分别为1(是)和不是1(否)时则分别转移到步骤ST4-2-3和ST4-2-4。
在步骤ST4-2-3,模糊区域数据形成单元44向模糊开始长度数据和模糊结束长度数据设置与由参数C3和C4所设置的被安置在宽度方向范围内的所有绘图轨迹有关的数值。即,如果C7的值为1,则由参数C3和C4所规定的宽度方向范围表示该模糊区域。模糊区域数据形成单元44设置模糊开始和结束数据数值以结束该处理。
特别是,模糊区域数据形成单元44随机设置从C1到(C1+C5)范围的一数值作为模糊开始长度数据,同时随机设置从C2到(C2+C6)范围的一数值作为模糊结束长度数据。因此,与由参数C3、C4所规定的被安装在模糊宽度方向范围内的绘图轨迹有关的模糊开始长度数据和模糊结束长度数据分别地在从C1到(C1+C5)的范围内和从C2到(C2+C6)的范围内波动。
在步骤ST4-2-4,模糊区域数据形成单元44计算有多少被安置在由参数C3和C4所规定的宽度方向模糊范围之内的绘图轨迹是与该模糊区域有关。然后模糊区域数据形成单元44被转移到步骤ST4-2-5。即,如果C7值的数据不是1,则由参数C3和C4所规定的整个宽度方向模糊范围不是模糊区域。特别是,与该模糊区域有关的绘图轨迹的数目n由n=m×|C3-C4|×C7来计算,其中m是绘图轨迹的总数。
在步骤ST4-2-5,模糊区域数据形成单元44随机选择被安装在由参数C3和C4所规定的宽度方向模糊范围内的绘图轨迹中的一条轨迹,并在与该绘图轨迹有关的模糊开始长度数据和模糊结束长度数据中设置数值。然后,模糊区域数据形成单元44转移到步骤ST4-2-6。
特别是,模糊区域数据形成单元44对于模糊开始长度数据随机设置从C1到(C1+C5)范围的一数值,同时对模糊结束长度数据随机设置从C2到(C2+C6)范围的一数值。因此,与由参数C3、C4所规定的被安装在模糊的宽度方向范围内的绘图轨迹有关的模糊开始长度数据和模糊结束数据分别在从C1到(C1+C5)的范围内和从C2到(C2+C6)的范围内波动。
同时,如果在模糊开始长度数据和模糊结束长度数据中与所选择的绘图轨迹有关的除初始值以外的值被设置,也就是如果相应于步骤ST4-5-2的处理已被在先执行时,模糊区域数据形成单元44选择下一个绘图轨迹,而无须更新与被选择之前的绘图轨迹有关的模糊开始长度数据和模糊结束长度数据的值。
在步骤ST4-2-6,模糊区域数据形成单元44时步骤ST4-2-5的处理操作次数,即除初始值外的值已被设置的模糊开始长度数据和模糊结束长度数据的数目与在步骤ST4-2-4中所计算的与模糊区域有关的绘图轨迹数目n进行比较。如果结果是NO,即如果在步骤ST4-2-5中的处理次数小于在步骤ST4-2-4中所计算的绘图轨迹数目n时,则模糊区域数据形成单元44返回到步骤ST4-2-5重复该处理。如果结果是YES,即如果在步骤ST4-2-5中处理次数达到在步骤ST4-2-4中所计算的绘图轨迹数n时,则该处理结束。
如果存在有多个模糊区域,即如果设置有多个模糊参数,则设置多个与各自模糊参数相关的模糊区域数据。(4-3-3)由轮廓数据选择单元进行的全轮廓的选择参照图62的流程图说明轮廓数据选择单元422的具体操作。
在步骤ST4-3-1,轮廓数据选择单元422从所有的全轮廓数据中选择具有由该全轮廓数据所表示的图形的最长长度的全轮廓数据。然后轮廓数据选择单元422转移到步骤ST4-3-2。
在步骤ST4-3-2,全长度数据选择单元422根据所有的全轮廓数来判断所选择的全轮廓数据的数目。如果所选择的全轮廓数据的数目不多于三分之一(YES)时,则全长度数据选择单元422转移到步骤ST4-3-3。如果所选择的全轮廓数据的数目超过了三分之一(NO)时,则全长度数据选择单元422转移到步骤ST4-3-4。
在步骤ST4-3-3,全长度数据选择单元422从在步骤ST4-3-1中被选择的全轮廓数据之前和之后直接排除的全轮廓数据之中选择一末被选择的全轮廓数据,它具有由该全轮廓数据所表示的图形的最长的长度。然后该全长度数据选择单元422返回到步骤ST4-3-2去重复该处理。
另一方面,全长度数据选择单元422随机从未选择的全轮廓数据之中选择一全轮廓数据,以结束该处理。(4-3-4)由墨水数据设置单元进行的墨水数据的选择参照图63的流程图说明墨水数据设置单元45的具体操作。
在步骤ST4-4-1,第一象素检测单元451将被传送到步骤ST4-4-2之前的处理特征位次数i的值设置为0。
在步骤ST4-4-2,第一象素检测单元451将传送到步骤ST4-4-3之前的处理特征位次数i的值增1。
在步骤ST4-4-3,第一象素检测单元451将第一或第二轮廓数据的坐标点的数W与处理特征位次数i的值进行比较。如果i≤W(YES),则处理转移到步骤ST4-4-4。如果i>W(NO),则处理转移到步骤ST4-4-8。
在步骤ST4-4-4,第一象素检测单元451检测在连接第一轮廓数据的坐标点Aj和第二轮廓数据的坐标点Bi的线段li上的象素,其中i表示处理特征位次数的值。
然后,在步骤ST4-4-5,为了判断在步骤ST4-4-4中所检测的象素是否是在模糊区域之中,该墨水存在/墨水不存在设置单元455涉及模糊区域数据。如果该象素是在模糊区域之中,则设置墨水存在/墨水不存在数据以指明在该象素中墨水不存在的状态。如果未发现该象素是在模糊区域中,则设置用来指明在该象素中墨水存在的状态的墨水存/墨水不存在数据。
如果存在有多个模糊区域,即如果存在有多个模糊区域数据的设置,则该墨水存在/墨水不存在设置单元455基于所有所设置的模糊区域数据判断在步骤ST4-4-4中所检测的象素是否在该模糊区域之内。
然后,在步骤ST4-4-6,第一墨水量设置单元457涉及用来对在步骤ST4-4-4中所检测的象素设置墨水量的毛笔数据,从而自开始点的图形长度使线段li越短墨水量就更多。但是,如果墨水存在/墨水不存在数据规定在步骤ST4-4-5中所设置的象素为墨水不存在状态,则第一墨水量设置单元457设置墨水量数据为0。
然后,在步骤ST4-4-7,第一墨水浓度设置单元456涉及用来对在步骤ST4-4-4中所检测的象素中设置墨水浓度数据的毛笔数据,以便就线段lj而言自开始点起的图形的长度越短墨水浓度更高。但是,如果在步骤ST4-4-5中所设置的墨水存在/墨水不存在数据规定了在该象素中处于墨水耗尽状态时,则第一墨水浓度设置单元465将该象素的墨水浓度数据设置为0。在步骤ST4-4-7完成之后,处理返回到步骤ST4-4-2去重复该处理。
但是,如果存在步骤ST4-4-4中所检测的多个象素时,则在骤ST4-4-5到ST4-4-7中从象素到象素设置墨水存在/墨水不存在数据、墨水浓度数据和墨水量数据。
另一方面,在步骤ST4-4-8,第二象素检测单元453检测连接在步骤ST4-4-5至ST4-4-7中设置了墨水数据的线段li上的象素和在步骤ST4-4-5至ST4-4-7中设置了墨水数据的线段li+1上的象素的线段l上的象素。为了在所检测的象素上设置墨水浓度数据和墨水量数据,第二图象数据设置单元454基于在线段li上的象素中设置的墨水数据、在线段li+1上的象素中设置的墨水数据、被检测象素和线段li上象素之间的距离以及被检测象素和线段li+1上象素之间的距离来计算在被检测象素中的墨水浓度和墨水量。在对线段l上的所有象素设置了墨水浓度数据和墨水量数据之后,第二象素数据设置单元454结束该处理。
因为通常检测在线段l上的多个象素,所以为了设置墨水浓度数据和墨水量数据,第二象素数据设置单元454对于每个被检测的象素计算墨水浓度和墨水量。
如果在线段li或在线段li+1上存在有多个象素,则第二象素检测单元453设置连接在线段li上的象素和在线段li+1上的象素的多条线段l,使得这些线段沿该图形的轮廓从象素到象素地伸长,并且对这些线段l的每一条检测在线段l上的象素。如果在线段li上的象素数不同于在线段li+1上的象素数,则该线段被设置得使得沿该图形的宽度的线段li上的象素位置对应于沿该图形的宽度线段li+1上的象素的位置。
上述说明是针对于表示一模糊绘图对象而设置全轮廓数据的情况,即由该轮廓数据选择单元422所选择的作为一模糊绘图对象的全轮廓数据。如果对于全轮廓数据所设置的墨水数据不表示模糊绘图的对象,即模糊数据选择单元422未选择全轮廓数据作为模糊绘图的对象,则在设置墨水浓度数据和墨水量数据中,墨水数据设置单元45无视墨水存在/墨水不存在数据,或假设该墨水存在/墨水不存在数据为墨水存在数据。(4-4)设置数据值的方法下面说明在模糊图象处理器40中设置各种数据值的情况。(4-4-1)由第一模糊参数计算单元进行的模糊参数的设置第一模糊参数计算单元432提出了模糊参数的二个设置。该模糊参数按二个设置的原因是当一字符随着毛笔在纸上实际书写时每笔划上最经常产生的是二个模糊部分,这样设置二个模糊区域来表示一模糊字符是足够了。但是,该模糊参数的设置的数目并不限于二个而是可根据所产生的图形而有所变化。
在下面的说明中,如图64中A所示的模糊毛笔携带数据的模糊数据ti的部分中ti的数值是连续地为“1”,这部分称之为“具有ti=1.0的一区域”。类似地,如图64中B所示的模糊数据tj的部分中tj的数值是连接地为“0.5”,这部分称之为“具有ti=0.5的一区域”,同时如图64中C所示的模糊数据ti的部分中tj的数值是连续地为“0.3”,这部分称之为“具有ti=0.3的一区域”。
第一模糊参数计算单元432根据图65至67的流程图进行操作以便基于模糊毛笔携带数据设置模糊参数。
在步骤ST4-5-1,第一模糊参数计算单元432对传送到步骤ST4-5-2之前的模糊参数的二个设置进行初始化。特别是,将参数C1至C7全部置为0。
在步骤ST4-5-2,第一模糊参数计算单元432提取具有t1=1.0的区域。如果存在有一个或多个具有ti=1.0的区域(YES),则第一模糊参数计算单元432转移到步骤ST4-5-3。如果不存在有具有ti=1.0的区域(NO),则第一模糊参数计算单元432转移到步骤ST4-5-13。
在步骤ST4-5-3,第一模糊参数计算单元432提取具有ti=1.0的区域。如果存在有二个或多个具有ti=1.0的区域(YES),则第一模糊参数计算单元432转移到步骤ST4-5-4。如果仅存在有一个这样的区域,则第一模糊参数计算单元432转移到步骤ST4-5-6。
在步骤ST4-5-4,第一模糊参数计算单元432选择二个具有ti=1.0的区域并转移到步骤ST4-5-5。这些具有ti=1.0区域的二个区域以具有ti=1.0的区域的长度递减的顺序被选择,即以在具有ti=1.0的区域中ti的数递减的顺序被选择。
在步骤ST4-5-5,第一模糊参数计算单元432根据等式(4-2)按照在步骤ST4-5-4中所选择的二个具有ti=1.0的区域设置二个模糊参数的置位,以结束该处理。
C1=Tis-|Ti-1|×Ti-1C2=Tie+|Ti+1|×Ti+1|C3-C4|=23]]>C5=e+|Ti+1|×(1-Ti+1)C6=e+|Ti-1|×(1-Ti-1)C7=1-0.08×(C2-C1)...(4-2)在上述等式中,Ti表示在作为模糊参数的设置的一对象的一区域中ti的值,即对具有ti=1.0、ti=0.5和具有ti=0.3的区域分别为1.0,0.5和0.3,且|Ti|表示该区域长度。该区域的长度由被设置为1的图形长度归一化并且因此假设该值从0到1。对该图形的长度亦如此,后面将要说明。
另一方面,Ti-1代表在相邻于设置了模糊参数的区域一侧的具有ti=0.5或0.3的区域中ti的值,同时|Ti-1|表示该区域的长度。类似地,Ti+1代表在相邻于设置了模糊参数的区域的另一侧的具有ti=0.5或0.3的区域中ti的值,同时|Ti+1|表示该区域的长度。
Tis表示为了设置模糊参数而选择具有的ti=1.0、0.5或0.3的区域自该图形的开始点到起的该图形长度,同时Tie表示就为了设置模糊参数所选择的具有ti=1.0、0.5或0.3的区域的结束点的该图形长度。
在上述等式中,e是表示沿该图形的长度模糊开始位置和模糊结束位置的波动的一初始值的一系数,并被预置为约为1/20的值。
在步骤ST4-5-6,第一模糊参数计算单元432根据等式(4-2)针对具有ti=1.0的区域设置一模糊参数的置位。第一模糊参数计算单元432随后转移到步骤ST4-5-7。
在步骤ST4-5-7,第一模糊参数计算单元432提取具有ti=0.5的区域。如果存在有一个或多个具有ti=0.5的区域(YES),则该处理转移到步骤ST4-5-8。如果反之(NO),则该处理转移到步骤ST4-5-10。
在步骤ST4-5-8,第一模糊参数计算单元432在转移步骤ST4-5-9之前选择一个具有ti=0.5的区域。在选择的具有ti=1.0的该区域中,选择这种区域具有区域ti=0.3的最长的长度,即在具有ti=1.0的区域中具有最大的ti数。
在结束该处理之前,在步骤ST4-5-9,第一模糊参数计算单元432根据下面的等式(4-3)结合在步骤ST4-5-8中所选择的具有ti=0.5的区域设置一模糊参数的置位。
C1=Tis-|Ti-1|×Ti-1C2=Tie+|Ti+1|×Ti+1|C3-C4|=12]]>C5=e+|Ti+1|×(1-Ti+1)C6=e+|Ti-1|×(1-Ti-1)C7=0.6...(4-3)在步骤ST4-5-10,第一模糊参数计算单元432提取具有ti=0.3的区域。如果存在有一个或多个具有ti=0.3的区域(YES),则处理转移到步骤ST4-5-11。如果反之(NO),则处理结束。
在步骤ST4-5-11,在传送到步骤ST4-5-12之前第一模糊参数计算单元432选择一具有ti=0.3的区域。在所选择的具有ti=0.3的区域中,这种具有ti=0.3区域的最长长度,即具有在ti=0.3区域中ti的最大数的区域被选择。
在步骤ST4-5-12,第一模糊参数计算单元432根据下面等式(4-4)结合在步骤ST4-5-11中所选择的具有ti=0.5的区域设置一模糊参数的置位。
C1=TisC2=Tie|C3-C4|=13]]>C3=Cx=1C7=0.4...(4-4)另一方面,在图66所示的步骤ST4-5-13中,第一模糊参数计算单元432提取具有ti=0.5的区域。如果存在有一个或多个具有ti=0.5的区域(YES),则该处理转移到步骤ST4-5-14,如果反之(NO),则该处理转移到步骤ST4-5-21。
在步骤ST4-5-14,第一模糊参数计算单元432提取具有ti=0.5的区域。如果存在有二个或多个具有ti=0.5的区域(YES),则该处理转移到步骤ST4-5-15,如果反之(NO),则该处理转移到步骤ST4-5-17。
在步骤ST4-5-15,在传送到步骤ST4-5-16之前第一模糊参数计算单元432选择二个或多个具有ti=0.5的区域。按照具有ti=0.5区域的长度递减的顺序选择具有ti=0.5的这些区域中的二个区域。
在步骤ST4-5-16,在结束该处理之前第一模糊参数计算单元432根据上述等式(4-3)结合二个具有ti=0.5的区域设置二个模糊参数的置位。
在步骤ST4-5-17,在传送到步骤ST4-5-18之前第一模糊参数计算单元432根据上述等式(4-3)结合ti=0.5区域设置一个模糊参数的置位。
在步骤ST4-5-18,第一模糊参数计算单元提取具有ti=0.3的区域。如果存在有一个或多个具有ti=0.5的区域(YES),则该处理转移到步骤ST4-5-19,如果反之(NO),则处理结束。
在步骤ST4-5-19,在转送到步骤ST4-5-20之前第一模糊参数计算单元432选择一个具有ti=0.3的区域。在所选择的具有ti=0.5的区域中,具有ti=0.5区域的最大长度,即在具有ti=0.5区域中具有ti的最大数的这种区域被选择。
在步骤ST4-5-20,在结束该处理之前第一模糊参数计算单元432根据上述等式(4-4)结合在步骤ST4-5-19中被选择的具有ti=0.3的区域设置一个模糊参数的置位。
在图67所示的步骤ST4-5-21,第一模糊参数计算单元432提取具有ti=0.3的区域。如果存在一个或多个具有ti=0.3的区域(YES),则该处理转移到步骤ST4-5-22,如果反之(NO),则第一模糊参数计算单元432结束该处理。
在步骤ST4-5-22,第一模糊参数计算单元432提取二个具有ti=0.3的区域。如果存在有二个或多个具有ti=0.3的区域(YES),则该处理转移到步骤ST4-5-23,如果反之(NO),则该处理转移到步骤ST4-5-25。
在步骤ST4-5-2 3,在转移到步骤ST4-5-24之前第一模糊参数计算单元432选择二个具有ti=0.3的区域。具有ti=0.3的这些区域的二个区域是按照具有ti=0.3的区域的递减长度的顺序,即按照在具有ti=1.0的区域中ti的数的递减顺序来选择的。
在步骤ST4-5-24,在结束该处理之前第一模糊参数计算单元432根据上述等式(4-4)并结合在步骤ST4-5-23中所选择的两个具有ti=0.3的区域来设置二个模糊参数的置位。
在步骤ST4-5-25,第一模糊参数计算单元432根据上述等式(4-4)并结合ti=0.3的区域来设置模糊参数的一置位,以结束该处理。(4-4-2)由第二模糊参数计算单元设置模糊参数现在说明由第二模糊参数计算单元433设置模糊参数的实施例。
在由第二模糊参数计算单元433设置模糊参数中,如表1和2中的例子所示,基于形状数据而对这些图形分类表1
(表1续)
表2
(表2续)
在表1和2中,D1、D2、D3、D4、D5和D6表示用于对图形分类的预置值。
在表1和2中,弯曲点的数是基于弯曲点数据并且表示在多于一个预置角中弯曲处部分的数。图形的长度基于长度数据并且L表示该图形的长度。图形的弯曲基于弯曲数据,r_avg表示弯曲数据的平均值。图形宽度基于宽度数据并且W_min表示由宽度数据所示的图形宽度的最小值,同时W_max表示由宽度数据所表示的图形宽度的最大值。
在两弯曲点之间的长度是基于弯曲点数据和长度数据并表示该图形长度是在两弯曲点之间的图形长度。应注意的是L表示该图形从开始点到结束点之间的长度并且Li表示从第(i-1)弯曲点到第i弯曲点之间的图形长度。也就是,L1表示从开始点到第一弯曲点之间的图形长度和如果弯曲点数为1时L2表示从开始点到结束点之间的图形长度,如果弯曲点数为2时表示从开始点到第二弯曲点之间的图形长度。另一方面,如果弯曲点数为2时L3表示从第二弯曲点到结束点之间的图形长度,如果弯曲点数为3时表示从第二弯曲点到第三弯曲点之间的图形长度,同时如果弯曲点数为3时L4表示从第三弯曲点到结束点之间的图形长度,如果弯曲点数为4时表示从第三弯曲点到第四弯曲点之间的图形长度。
两弯曲点之间的平均宽度是基于弯曲点数据和宽度数据的一数值并表示两弯曲点之间的平均图形宽度。应注意的是Wi表示从第(i-1)弯曲点到第i弯曲点之间的图形的平均宽度。也就是,W1表示从开始点到结束点之间的图形的平均宽度,同时如果弯曲数为1和不小于2时,W2分别表示从该弯曲点到结束点之间的图形平均宽度和从第一弯曲点到第二弯曲点之间的图形平均宽度。另一方面,如果弯数为2和3时,W3分别表示从第二弯曲点到结束点之间的图形的平均宽度和从第二弯曲点到第三弯曲点之间的图形的平均宽度,同时W4表示从第三弯曲点到结束点之间的图形平均宽度。
第二模糊参数计算单元433根据表1和2中所示的图案分类来设置模糊参数以便使该模糊具有表3和4所示的特征。图68到87表明了当模糊参数被设置时该模糊将具有表3和4所示特征的模糊的例子。
表3
表4
在表3和4中,模糊区域的位置指明了沿该图形长度的该模糊区域的位置。“前一半”表示该模糊出现在开始点侧区域和“后一半”表示该模糊出现在结束点侧区域。开始点侧区域表示沿它的长度将一图形等分为二个相等部分所得到的开始点侧区域,同时一结束点侧区域表示沿它的长度将一图形等分为二个相等部分所得到的结束点侧区域。开始部分、中部和尾部表示模糊分别出现在开始区域、中部区域和结束区域的情况。该开始区域表示沿它的长度将一图形三等份为三部分所得到的一开始点侧区域。该中部和尾部表示沿它的长度将该图形三等份为三部分而分别得到的中间点侧区域和结束点侧区域。
模糊区域的长度意指相对于置为1的图形长度的模糊区域的一平均长度,同时模糊区域的宽度意指相对于置为1的图形宽度的模糊区域的一宽度。W1、W2和W3意指在两个弯曲点之间平均宽度的值并与表1和表2中所示的这些值相同。
模糊的方式意指该模糊浓度。因此,“强烈的”意指严重的模糊,在其中仅很少的墨水出现在该模糊部分;同时“线性的”意指弱的模糊,在其中有相当数量的墨水出现在该模糊部分;而“局部强烈的和局部线性的”意指在强烈模糊和线性模糊之间适中的模糊,在其中一定数量的量出现在该模糊区域。(4-4-3)由第一墨水浓度设置单元设置墨水浓度数据现在说明由第一墨水浓度设置单元456设置墨水浓度数据的具体例子。
当在第i线段li上的一象素p上的设置墨水浓度数据Idp时,第一墨水浓度设置单元456基于与通过象素p的绘制轨迹有关的毛笔的墨水浓度IDp按照下述等式(4-5)计算和设置墨水浓度数据IdpIdp=IDp=a×i ......(4-5)这里a是用来表明在其中该墨水浓度从该开始点开始逐渐变低的方式的一预置值的系数。特别是,它被置为约0.2的一个值。
但是,如果由等式(4-5)所计算的Idp的值小于一预置值,则第一墨水浓度设置单元456将该墨水浓度数据Idp置为0。如果该墨水浓度在这种方式中变为低于该预置值,则不再绘制该图形以便使得该模糊绘制接近该图形的结束部分的模糊。
另一方面,为了在图形绘制期间将毛笔内的墨水流考虑在内,第一墨水浓度设置单元456逐步顺序地修正该毛笔数据的墨水浓度。特别地,如果相应于第K′、(K-1)和(K+1)个绘制轨迹的毛笔数据的墨水浓度值分别为IDK、IDK-1和IDK+1时,第一墨水浓度设置单元456在该线段Lj的象素p上设置墨水浓度数据Idp之前,根据等式(4-6)来更新毛笔数据的墨水浓度值IDK=IDK+b×(IDK+1-IDK)+(IDK-1-IDK)......(4-6)这里b是表示在毛笔内墨水流的预置值的一系数。如果在等式(4-6)中不存在IDK-1,也即如果该墨水浓度是第一墨水浓度,则IDK-1被置为IDK(IDK-1=IDK)。如果在等式(4-6)中不存在有IDK+1,也即如果该墨水浓度是最后墨水浓度,则IDK+1被置为IDK(IDK+1=IDK)。
当在第i线段li的象素p上设置墨水量数据Iqp时,第一墨水量设置单元457基于与通过象素P的书写轨迹有关的毛笔数据的墨水量数据IQp按照等式(4-7)计算和设置墨水量数据IqpIdq=IQp×exp(c×i) ......(4-7)这里c是用来表示在从开始点墨水量逐渐变薄的方式的一预置值的系数。特别是,它被设置为约-0.03的值。
但是,如果由等式(4-7)所计算的Idp低于一预置值时,第一墨水浓度设置单元457将该墨水浓度数据Idp设置为0。因此,如果该墨水浓度变得低于该预置值时,不再绘制该图形以便使得该模糊绘制接近该图形的结束部分。
另一方面,为了在图形绘制期间将毛笔内的墨水流考虑进去,第一墨水量设置单元457逐渐顺序地修正毛笔数据的墨水量。特别是,如果相应于第K、(K-1)和(K+1)绘图轨迹的毛笔数据的墨水量值分别为IQK、IQK-1和IQK+1时,第一墨水设置单元457在线段li的象素P上设置墨水量数据Iqp之前根据等式(4-8)更新毛笔数据的墨水量值IQK=IQK+d×(IQK+1-IQK)+d×(IQK-1-IQK)......(4-8)这里b是用来表示毛笔内墨水流的一预置值的系数。如果IQK-1在等式(4-8)内不存在,也即如果该墨水量是第一墨水量时,IQK-1被置为IQK(IQK-1=IQK)。另一方面,如果IQK+1在等式(4-8)中不存在,也即如果该墨水量是最后墨水量时,IQK+1被置为IQK(IQK+1=IQK)。(4-4-5)由第二墨水浓度设置单元设置墨水浓度。
现在说明由第二墨水浓度设置单元495设置墨水浓度数据的具体例子。
当基于在线段li上的象素P的墨水浓度数据Idp、在线段li上的象素Q的墨水浓度数据Idp、在线段li上的象素Q和R之间的距离PR以及在线段li+1上的象素Q和R之间的距离QR而设置墨水浓度数据Idr时,第二墨水浓度设置单元458例如根据等式(4-9)计算和设置墨水量数据Idr
Idr=Idp×(PR/PQ)+Idp×(QR/PQ)......(4-9)这里PQ表示象素P和Q之间的距离。(4-4-6)由第二墨水量设置单元设置墨水量现在说明由第二墨水量设置单元459设置墨水量数据的具体例子。
当基于在线段Li的象素P的墨水量数据Iqp、在线段li+1上的象素Q的墨水量数据Iqp、在线段Li上的象素Q和R之间的距离PR以及在线段li+1上的象素P和Q之间的距离QR而设置墨水量数据Iqr时,第二墨水量设置单元459例如根据等式(4-10)来计算和设置墨水量数据IqrIqr=Iqp×(PR/RQ)+Iqq×(QR/PQ)......(4-10)这里PQ表示象素P和Q之间的距离。(4-4-7)由亮度数据设置单元设置亮度数据现在说明由亮度数据设置单元46设置浓度数据的具体例子。
基于由纸纤维结构数据形成处理器30所形成的纸纤维结构数据和由第一及第二图形数据设置单元454所置的图形数据,亮度数据设置单元46在象素P中设置亮度I。也就是,亮度数据设置单元46根据等式(4-11)和(4-12)在每个象素中计算并设置亮度II=1-f×Idp×Iqp(对于M>6) ......(4-11)I=1(对于M≤6) ......(4-12)这里Idp、Iqp和M分别表示在象素P中的墨水浓度数据、墨水量数据和纸纤维结构数据的数。随着亮度I的初始值为1,该亮度范围的值是从0到1。
在上述等式(4-11)和(4-12)中,f是预置为一适当值的一系数。在等式(4-12)中,如果I的值超过1,则将I的值置为1。
通过在这种方法设置亮度I,使得在模糊中考虑纸纤维结构的效果变成可能的并且因而更逼真地表示了一模糊图形。
在以上的说明中,墨水浓度数据和墨水量数据被作为墨水数据而被设置。但是,为了简化数据,可以仅仅设置墨水浓度数据或墨水量数据。在这种情况中,可以用对等式(4-11)作简单修正而得到的下面等式(4-13)或(4-14)来计算在象素P中的亮度II=1-f×Iqp(对于M>6) ......(4-13)I=1-f×Idp(对于M>6) ......(4-14)(5)渗开图形绘制处理器现在参照图88到111说明渗开图形绘制处理器的一最佳实施例。
如果在一张纸上用墨水来绘制一图形,就会在图形周围产生渗开。基于按渗开现象所做的模型,渗开图形绘制处理器50形成用来表示自表示一图形经受了渗开的图形数据的一渗开图形的图象数据。因此由渗开图形处理器作出的渗开图形的图象数据被馈送到显示单元1用来在显示器件1的显示屏上绘制一渗开图形。
为了作出该渗开现象的模型,需要诸如在图形经受渗开中的墨水水量或浓度之类的信息。因此,在制定渗开图形绘制处理器中的渗开图形图象数据中,经受渗开的图形的图象数据包括有关在该图形中墨水量和墨水浓度的数据。这种图象数据可以通过在模糊图形绘制处理器40中形成的图象数据来举例说明。(5-1)制作渗开现象的模型在一纸张上用墨水绘制一图形所产生的渗开是由于墨水流在构成纸张的纤维的间隙中产生扩散而形成的。墨水流通过的纤维的间隙以后称之为毛细管。图形的渗开部分中色彩的浓度取决于纸张对墨水的吸收,也就是在构成纸张的纤维的间隙中附着的墨水的量或浓度。因此,为了作出渗开现象的模型,必须要作该墨水流方式的模型并计算在该纤维间隙中所附着的墨水的量和浓度。下面将要说明墨水流的模型、在纤维间隙中附着的墨水量的计算和在纤维间隙中附着的墨水量浓度的计算。(5-1-1)在其中有墨水流的方式的模型首先说明墨水流的模型。
如上所述,渗开是由于墨水流在毛细管中的扩散而形成的。这样的墨水流的模型可以假定该纸张是由若干微尺寸区域组成(后面称之为象素),如果这些象素由毛细管连接起来则在相邻象素之间就产生墨水流,并且如果这些象素不是由毛细管连接起来的则在相邻象素之间就没有墨水的流动。
该模型可以这样来执行,即当墨水流入一给定的象素时,墨水就附着在该象素中的纤维的间隙中并在其内被吸收,并且墨水被吸收使得墨水不会由前面所述的象素通过毛细管与下面象素相连而流向下面的象素所吸收。
通过墨水流的模型假定墨水流流经与各象素相连的毛细管并且在有墨水流的象素中被吸收而且在不同象素中墨水被吸收而产生渗开,因此这种模型使渗开更为逼真地表示出来。(5-1-2)在纤维间隙中附着的墨水量参照附图来说明在纤维间隙中附着的墨水量。在下面的说明中,在一给定象素的纤维间隙中附着的墨水量是在下面基于上述的墨水水流模型和纸张由多纤维构成的假定来计算的。
假定构成纸张的纤维是二维或平面结构的并假定在一给定象素的纤维间隙中附着的墨水量正比于在该象素的纤维中附着墨水所占的区域。
如图88所示,还假定存在有二个夹角为θ的纤维FI1和FI2。需要考虑在纤维FI1和FI2之间的间隙中附着墨水所占区域的表面量度。在纤维FI1和FI2之间的间隙中附着的墨水量是在如图88中由阴影线指明的纤维FI1和FI2之间的相交区域内被俘获的。未与墨水相接触的纤维部分在墨水的表面张力作用下被弯曲。
因此在纤维FI1和FI2的间隙中附着墨水的区域可由纤维FI1和FI2所围绕的区域和具有写有纤维FI1和FI2的一半径R1的两个环形来近似表示。半径R1是取决于墨水的表面张力的一个常数。
如果这种近似被采纳,则纤维FI1和FI2之间的夹角越小,则在纤维FI1和FI2之间的间隙中保持墨水所占的区域就变的越大。但是,事实上如果纤维FI1和FI2之间的夹角θ小于一预置值时,则在纤维FI1和FI2的间隙中保持墨水所占的区域就变得更小。因此做出这样一样近似,即如果纤维FI1和FI2之间的夹角θ小于一预置角θa,则在纤维FI1和FI2之间的间隙中保持墨水的所占区域就变大。如果在FI1和FI2之间的间隙中俘获有墨水所占区域近似如上述那样,则在纤维FI1和FI2之间的间隙中俘获有墨水所占的区域的表面量度是由等式(5-1)和(5-2)的角度θ的一函数给出s(θ)=2×R2×{cos(θ/2)/sin(θ/2)+(θ-π)/2} (θ≥θa)...(5-1)s(θ)=2×R2×{cos(θa/2)/sin(θa/2)+(θa-π)/2}/θ(θ<θa)...( 5-2 )
如图90所示,如果在象素P中存在有n个纤维FI1,FI2,......,FIn-1,FIn。按下面的方式求出在象素P中n个纤维FI1,FI2,......,FI,FI之间的间隙中俘获有墨水所占的区域的表面量度。如图90的例子所示假定n个纤维FI1,FI2,......,FIn-1FIn的角度为θi,这里i是1,2,3,......n-1,以纤维FI1作为一参考,相邻纤维的夹角为Δθi,这里i为1,2,3,......,n-1。之后,通过等式(5-1)和(5-2)求解函数S(θ),按照求出的S(θ)函数由下面等式(5-3)求解在n个纤维FI1,FI2,......,FIn-1,FIn之间的间隙中俘获的墨水所占的面积q(n)q(n)=π-n×∫0π∫0π···∫0πΣi=1n-1s(Δθi)dθ1dθ2···θn-1···(5-3)]]>因此由等式(5-4)给出在具有n个纤维的象素中被吸收的墨水量U为U=α×q(n)]]>U=α×π-n×∫0π∫0π···∫0πΣi=1n-1s(Δθi)dθ1dθ2···θn-1···(5-4)]]>其中α是墨水吸收量U和墨水所占的区域的表面量度q(n)的恒定比值。
也就是,如果求出在该象素中的墨水吸收量U,就可能求出在该象素中的纤维数n和相邻纤维之间的夹角Δθi。(5-1-3)在纤维间隙中俘获的墨水的厚度参照


在该纤维间隙中所俘获的墨水的浓度(厚度)。在下面的说明中,毛细管MO的形状假定是一圆筒而墨水在圆筒的内侧流动。流经毛细管MO的圆筒的墨水流方向由X表示,以毛细管MO的中心作为原点在该毛细管MO中的径向为r并且时间为t。毛细管MO的半径是r0。
墨水是一种在诸如水之类的溶剂中将墨水粒扩散的物质,墨水厚度由墨水粒子数来设置。如果墨水流经毛细管的内侧,则墨水粒子朝向该流动的末端逐渐被耗尽。也就是,当墨水流经毛细管的内侧时,朝向它的末端该墨水流变得稀薄。为了计算在毛细管内经受了起伏波动的墨水厚度,要考虑在毛细管中墨水粒子是否充分地扩散。
如果在时间t和位置(x,r)上墨水粒子扩散的数由n(x,r,t).表示,在x方向墨水流的速率是V(r)和表示在墨水粒子的方向上扩散程度的一常数是D0,则在毛细管中墨水粒子的扩散可由下面的偏微分方式表示∂n(x,r,t)∂t=D0×▿2n(x,r,t)-v(r)×▿n(x,r,t)···(5-5)]]>在上述方程中,墨水速率V(r)不取决于在x方向上的位置而仅取决于在r方向上的位置,这样朝毛细管的中央和毛细管壁附近的墨水速率分别较快和较慢。如果在r=0的一位置处的速率为Vmax,则墨水速率V(r)可以例如由下等式(5-6)来表示V(r)=Vmax×{1-(r/r0)2}......(5-6)用t、x和r的小变量Δt、Δx和Δr可将偏微分方程(5-5)变换为下面不同的等式(5-7)
n(x,r,t+Δt)=n(x,r,t)-Δt/Δx×v(r)×n(×-Δx,r,t)+Δt/Δx×v(r)×n(x-Δx,r,t)+Dx×Δt/Δr2×n(x,r+Δr,t)+D0×Δt/Δr2×n(x,r-Δr,t)-2×D0×Δt/Δr2×n(x,r,t)...(5-7)在等式(5-7)中,等式左侧表示在时间t+Δt和位置(x,r)时的墨水水粒子数。等式右侧的第一项、第二项、第三项、第四项、第五项和第六项分别表示在时间t和位置(x,r)处的墨水粒子数,在时间t+Δt沿x方向上从位置(x,r)流出的时间t和位置(x,r)的墨水粒子数,在时间t+Δt朝向位置(x,r)流出的在时间t和位置(x-Δx,r)处的墨水粒子数,在时间t+Δt朝向位置(x,r)被扩散的时间t和位置(x,r+Δr)处的墨水粒子数,和在时间t+Δt在上方向从位置(x,r)被扩散的时间t和位置(x,r)处的墨水粒子数。
如果对等式(5-7)设置了初始条件,则可顺序地求出在时间t和位置(x,r)处的墨水粒子数n(x,r,t)。在顺序地计算墨水粒子数n(x,r,t)时,可假定n(x,r0,o)=0,这是因为墨水粒子到达毛细管的壁表面则假设变为附着在该毛细管的壁表面上而不再进一步被扩散的原因。
用来求解等式(5-7)的初始条件可被设置得当墨水开始流出时,也就是在t=0时,墨水粒子仅出现在位置x=0并且在上方向上均匀被扩散。也就是对于x>0,则n(x,r,o)=0和n(o,r,o)=n0,这里n0是一常数。
应注意的是,在r方向上时间t和位置x处的墨水粒子之和可由在时间t和位置x处流动的墨水粒子R(x,t)的数与在时间t和位置x处变为附着到毛细管的壁表面的墨水粒子数之和来表示,如同由等式(5-8)所示那样V(x,t)=R(x,y)+Q(x,t)......(5-8)因此如等式(5-9)所示,在时间t和位置x处流动的墨水粒子R(x,t)的数可以基于n(x,r,t)来计算R(x,y)=2∫0r0πr×n(x,r,t)dr···(5-9)]]>另一方面,在时间t和位置x处变为附着在毛细管的壁表面的墨水粒子Q(x,t)的数可以基于n(x,r,t)并由等式(5-10)来计算Q(x,y)=-2πr0×∫0τD0∂∂rn(x,r,τ)dτ···(5-10)]]>通过上述计算,可以求得在时间t和位置x处在r方向上墨水粒子数之和V(x,t)。在时间t和位置x处的墨水厚度正比于V(x,t)。因此在时间t和位置x处的墨水厚度可由V(x,t)与一适当的系数相乘而预以表示。(5-2)渗开图形绘制处理器的结构下面说明用来形成渗开图形的图象数据的渗开图形绘制处理器50的一个具体结构。
参见图92,该渗开图形绘制处理器50包括有一用来检测在一也将被渗开的图形的轮廓上的象素P的轮廓象素检测单元51,和一用来在由轮廓象素检测单元51所检测的象素P上预置一初始墨水量U0的初始墨水量设置单元52。该渗开图形绘制处理器50还包括有一用来在图形轮廓的象素P上预置一作为图象数据的初始墨水厚度V0的初始墨水浓度设置单元53,和一用来对于由轮廓象素检测单元51所检测的象素P基于由前述纸纤维数据形成处理器30所形成的纸纤维结构数据的毛细管Si(i=1,2,3,4,5,6,7,8)数来检测通过毛细管连接到象素P的象素的连接象素检测单元54。该渗开图形绘制处理器50还包括一用来对于由连接象素检测单元54所检测的象素用来设置作为图象数据的规定墨水存在的数据的图象数据设置单元55和用来控制连接象素检测单元54和图象数据设置单元55的操作重复的控制器56。还被渗开的图形是一由模糊图形绘制处理器40所形成的图象数据所表示的图形。也就是,该渗开图形绘制处理器50读出由模糊图形绘制处理器40所形成的图象数据并暂时存贮在存贮器3中以便在该读出的图象数据中执行渗开图形绘制处理。
具体说,被渗开的图形的图象数据是从输入器件1、存储器3和外部存贮装置4读取的以便输送到渗开图形绘制处理器50的轮廓象素检测单元51。
轮廓象素检测单元51基于也将被渗开的图形的图象数据来检测在该图形的轮廓上的象素P。如果在该图形的轮廓上存在有多个象素,则轮廓象素检测单元51顺序检测这些象素。同时,将被渗开的图形的这些图象数据是足以允许该轮廓象素的检测。也就是,该图象数据可以是仅包含轮廓信息的这样的图象数据,例如基于由字形形成处理器20所形成的字形来规定一笔划的轮廓的图象数据。
初始墨水量设置单元52对于由轮廓象素检测单元51所检测的象素P设置作为图象数据的初始墨量U0。类似地,初始墨水浓度设置单元53对于由轮廓象素检测单元51所检测的象素P设置作为图象数据的初始墨水浓度V0。初始墨水量U0值或初始墨水浓度V0值可以是预存贮在外部存贮器件4中的预置值或来自输入装置1的输入值。对于初始墨水量U0或初墨水浓度V0的信息还可能预先包括在也被渗开的一图形的图形数据中,同时类似地对于初初始墨水量U0和初始墨水浓度V0还可能基于这个信息由初始墨水量U0或初始墨水浓度设置单元53来设置。另一方面,该初始墨水量U0或初始墨水浓度V0还可预置在要被渗开的图形的图形数据中而无须使用初始墨水量设置单元52或初始墨水浓度设置单元53。
在这种方式由轮廓象素检测单元51检测并具有初始墨水量U0和初始墨水浓度V0这样被设置的象素P被从轮廓象素检测单元51提供给连接象素检测单元54。
连接象素检测单元54根据与所述象素相关的毛细管Si(i=1,2,3,4,5,6,7,8)的数量检测通过所述毛细管连接到由所述轮廓象素检测单元51检测到的象素P上的象素。特别是,所述毛细管的数量Si是一个包括在由纸纤维结构数据形成单元30形成的纸纤维结构数据中的数据,且特别是一个不小于0的整数。
若所述象素P毛细管的数量Si不小于1,连接象素检测单元54检测与所述毛细管数量Si对应的象素Pi以作为连接到象素P上的象素。特别是,作为与和象素P相邻的象素P1、P3和P5的方向相关的象素P的毛细管S1、S3和S5的数量是1,并且与和象素P相邻的象素P2、P4和P6的方向相关的象素P的毛细管S2、S4、S6、S7和S8的数量为0,那么,连接象素检测单元54检测象素P1、P3和P5,以作为通过所述毛细管连接的象素,如图93所示。
另外,若象素P毛细管Si的数量不小于1且与数量Si对应的象素Pi的毛细管Sj(j=1,2,3,4,5,6,7,8)的数量不小于1,那么,连接象素检测单元54检测作为连接到象素P的象素P。特别是,若与和象素P相邻的象素P1、P3和P5的x方向相关的象素P的毛细管S1、S3和S5的数量是1,与和象素P相邻的象素P2、P4、P6、P7和P8的方向相关的象素P的毛细管S2、S3、S6、S7和S8的数量是0,与和象素P的方向对应的象素P1的毛细管数量S5是1,与象素P的方向对应的象素P3的毛细管的数量S7是1,且与象素P的方向对应的象素P5为毛细管的数量S1是0,那么,连接象素检测单元54检测作为通过所述毛细管连接到象素P的象素的象素P1和P3,如图94所示。
由连接象素检测单元54和所检测的毛细管连接到象素P的多个象素被从连接象素检测单元54发送给图形数据设定单元55。
图形数据设定单元55设定表示用于通过毛细管连接到象素P的象素的墨水存在的数据。若在象素P上设定为最初墨水量U0不大于0,那么,图形数据设定单元55假定没有墨水从象素P扩散,并结束与象素P相关的渗开图画的绘图处理,而不设定表示用于通过所述毛细管连接到象素P上的象素的墨水存在的数据。
另外,图形数据设定单元55为已经设定了表示墨水存在的数据的每个象素计算由象素吸收的墨水量U,并将数量U设定为图形数据。若吸收墨水的数量超过0,可以假定墨水存在,然后,墨水吸收量Q被同时用于设定墨水存在规定数据。如结合渗出现象模型所解释的,可根据等式(5-11)发现吸收墨水的数量UU=α×π-n×∫0π∫0π···∫0πΣi=1n-1s(Δθi)dθ1dθ2···dθn-1]]>其中,若Q≥Qa则s(Δθ)=2×R2×(cos(θa2)sin(θa2)+θa-π2)]]>且若θ<θa则s(Δθ)=2×R2×(cos(θa2)sin(θa2)+θa-π2)1θ···(5-11)]]>在等式(5-11)中,n表示通过访问纸纤维结构数据可以获得的象素纤维M的数量,角度Δθi是两个相邻纤维间的间隙的角度,即第i个纤维和与其相邻的第(i+1)个纤维间的间隙角度,并且该角度Δθi以从θ≤Δθi≤π的角度范围任意随机设置在被图形数据设定单元55之中,所以,(Δθ1+Δθ2+......+Δθn-1)的值不会大于π。得自于墨水表面张力的常数R可以是预定的或通过输入器件1输入的,从而可以由用户随意设定。所吸收的墨水量较大或较小,那么可选设定的成正比常数a的值也分别变得较大或较小。另一方面,θa是一个在计算纤维间隙中墨水吸收量的方法中使用的常数,并且例如可以是π/4。
U(n)的值是一个根据等式(5-11)在先计算的值,用于n是一个不小于0的情况,并且该值被在先设定为n的一维阵列。当计算吸收的墨水量U时,图形数据设定单元55访问这个预定一维阵列,以便获得与所述象素纤维数量M相对应的吸收墨水量U的值。由于在每次设定吸收墨水量U时不再需要根据等式(5-11)去计算吸收的墨水量U,这就有效地减少了处理时间。
根据等式(5-11)计算的吸收墨水量U是由象素所吸收的最大墨水量,即最大墨水吸收量Umax。若在所述象素之后的墨水量少于这个最大吸收墨水量Umax,则图形数据设定单元55自然在图形数据中设定跟随所述象素的墨水量,即少于最大吸收墨水量Umax的墨水量作为吸收墨水量U。
图形数据设定单元55还为已经设定了墨水存在表示数据的每个象素计算所述象素中的墨水浓度V,并把所述墨水浓度V设定为图形数据。根据等式(5-12)可以获得墨水浓度VV=V0×V(x,t)......(5-12)根据上述的模拟渗开现象来计算在时间t、位置x处的墨水颗粒的数量V(x,t)。
在上述等式中,V0表示为处于将要被渗开的一幅图画轮廓上的象素设定的最初墨水浓度,x表示毛细管的长度,在墨水到达来自所述图画轮廓的象素,特别是通过所述毛细管互联并随后由连接象素检测单元54检测到的一定数量的一串象素之前,所述墨水流过该毛细管。另一方面,t表示所述墨水到达来自所述图画轮廓的所述象素之前所经过的时间,特别是由连接象素检测单元54和图形数据设定单元55执行的处理操作所花费的时间。
另外,在上述等式中,V(x,t)是根据等式(5-8)到(5-10)的计算预先设定的x和t的两维阵列,用于x和t都是不小于0的整数的情况。当要获得墨水浓度V时,图形数据设定单元55执行等式(5-12)的计算,以便通过访问与在获得由毛细管互连、随后由连接象素检测单元54检测到的一定数量的一系列象素和所述象素墨水浓度V之前重复连接象素检测单元54和图形数据设定单元55的操作次数相对应的位于预定两维阵列V(x,t)中的V(x,t)的值去获得所述墨水浓度V的值。由于这不再需要在每次设定墨水浓度V时去根据等式(5-8)至(5-10)来计算V(x,t),所以有效地减少了处理时间。
图形数据设定单元55将吸收的墨水量U和为此获得的墨水浓度V相乘,以获得也被设定为图形数据的象素的亮度。
渗开图画绘图处理器50将已经为其在图形数据设定单元55中设定了图形数据的象素传送给连接象素检测单元54,以作为由轮廓象素检测单元51检测到的象素P,并重复连接象素检测单元54和图形数据设定单元55的操作,以连续设定模拟在渗开期间墨水逐渐扩散离开的图形数据。
在重复连接象素检测单元54和图形数据设定单元55的操作期间,对于根据先前已经自墨水流入的象素不再流入新的墨水的假定已经设定的图形数据的象素不设定新的图形数据。即,对于位于被将要进行渗开处理的图画占据的区域中的象素或已经在图形数据设定装置55中为其设定了图形数据的象素,图形数据设定装置55不再为其设定图形数据。
连接象素检测单元54和图形数据设定单元55的重复操作是由控制器56控制的。
就是说,控制器56根据当通过渗开以扩散的墨水量达到了担负渗开的墨水量的最初墨水量U0时渗开停止的假定控制连接象素检测单元54和图形数据设定单元55的重复操作。
特别是,控制器56以为下方式管理所述控制,即由图形数据设定单元55计算的吸收墨水量被求和,以用于连接象素检测单元54所检测到的所有象素,并且为其和值达到最初墨水量U0时,终止连接象素检测单元54和图形数据设定单元55的重复操作。
另外,控制器56以为下方式管理控制,即从由连接象素设定单元52所设定的最初墨水量U0中连续减去由图形数据设定单元55计算的吸收墨水量U,以用于由连接象素检测单元54检测到的每个象素,从而连续获得剩余墨水量Urest,这个新的墨水剩余量Urest在由轮廓象素设定单元51检测到的象素P中被设定为新的最初墨水量U0且当这个新的最初墨水量U0变得不大于0时,终止连接象素检测单元54和图形数据设定单元55的重复操作。
如果在两个由轮廓象素检测单元51检测到的相邻象素间最初墨水量U0不同,考虑到在将被渗开图画轮廓上的墨水流动,在例如减少了具有较大最初墨水量U0的象素的最初墨水量U0和增加了具有较小最初墨水量U0的象素的最初墨水量U0以后控制器56控制连接象素检测单元54和象素设定单元55进行重复操作。由于墨水是随着时间的消失而逐渐流动的,所以,利用控制器56如上所述地减少或增加所述最初墨水量的操作是在重复连接象素检测单元54和象素数据设定单元55操作的时间过程中逐渐执行的。
在上述实施例中,利用图形数据设定单元设定墨水浓度V和亮度I是在重复连接象素检测单元54和图形数据设定单元55的操作时执行的。但是,如果只是渗开图画被显示在显示装置5上,那么,只要知道由于渗开所引起的墨水扩散结束处的墨水浓度V和亮度I就足够了,这样,只要在最后一次重复连接象素检测单元54和图形数据设定单元55的操作时设定墨水浓度V和亮度I就足够了。
假如只是渗开图画被显示在显示装置5上,从图形数据设定单元55向显示装置5传送图形数据是在终止连接象素检测单元54和图形数据设定单元55的重复操作时执行的,这是在由渗开图画绘图处理器50形成图形数据之后发生的。但是,如果在渗开期间墨水从将要被渗开的图画渗散开的方式顺序被显示在显示装置5上,那么,每重复一次连接象素检测单元54和图形数据设定单元55的操作,即每在图形数据设定单元55中设定一次图形数据,图形数据设定单元55都要将图形数据传送给显示装置5。就是说,每重复一次连接象素检测单元54和图形数据设定单元55的操作,图形数据设定单元55都要把亮度I的数据传送给显示装置5,以连续的在显示装置5上显示得自于亮度I的图画。由此,在渗开期间墨水从将被渗开的图画逐渐渗散开来的方式被连续显示在显示装置5上。(5-3)渗开图画绘图处理下面来解释渗开图画绘图处理器50。在下面的描述中,参考示出操作的流程图,首先解释在渗开图画绘图中所使用的术语和在渗开图形绘图处理中使用的数据,然后解释渗开图画绘图处理器50的操作。(5-3-1)在渗开图画绘图处理中使用的术语在下面的描述中,与图形轮廓相对应的象素称作“轮廓象素”。渗开是墨水通过由毛细管的互连的象素从轮廓象素扩散而产生的。在轮廓象素中,从其开始向位于沿墨水扩散通路下游侧的象素A1渗开的轮廓象素,即当墨水流从象素A1逆向流动所到达的轮廓象素被称之为“从其开始向象素A1渗开的轮廓象素”或“关于象素P的渗开开始象素”。
若在渗开图形绘图处理期间,发现有两个或更多的通过毛细管与象素A1互连的下游侧象素,那么象素A1被称之为“分流点象素”。特别是,若在象素A1下游侧上的两个象素B1、C1被检测为是通过毛细管互连的象素,则象素A1被称之为分流点象素。
若墨水流向象素A1,那么,从象素A1逆向跟随墨水流动通路所到达,并且墨水从其以除朝向象素A1的方向以外的方向流动的分流点象素被称之为“关于象素A1的墨水流分流点象素”。通过毛细管互连并位于从象素A1到关于象素A1的墨水分流点象素的墨水通路上的一系列象素被称之为“从象素A1到墨水流分流点象素的一系列象素”。如果在从象素A1逆向跟随墨水流动通路时不存在有关于象素A1的墨水流分流点象素,由毛细管互连的从象素A1到渗开开始轮廓象素的一系列象素被称之为“从象素A1到墨水流分流点象素的一系列象素”。
这样,假如存在有由毛细管理互连的一系列象素A1、A2和A3,通过毛细管互连的一系列象素C1、C2和C3,那么,象素A3通过毛细管与C3相连,且墨水在由毛细管互连的一系列象素C1到C5内流动,如图96所示。象素C3是与墨水流分流点象素有关的墨水流分支点象素,而象素A1、A2和A3是从象素A1到墨水流分流点象素的一系列象素。
假如存在有由毛细管互连的一系列象素A1、A2和A3,由毛细管互连的一系列象素C1、C2、C3、C4和C5以及一系列由毛细管互连的象素D1、D2、D3、D4和D5,那么,象素A3通过毛细管连接到象素C3上,象素C5通过毛细管连接到D3上,在象素C1和C2中的墨水流停止,墨水在由毛细管互连的一系列象素D1到D5之间流动,如图97所示。象素D3是关于象素A1的墨水流分支点象素,而象素A1、A2、A3、C3、C4和C5是从象素A1到墨水流分支点象素的一系列象素。
另外,如果存在有由毛细管互连的一系列象素A1、A2和A3、由毛细管互连的一系列象素C1、C2、C3、C4和C5以及渗开开始轮廓象素D,象素A3通过毛细管与象素C3互连,象素C5通过毛细管与渗开开始轮廓象素D相连,如图98所示,墨水没有流经象素C1和C2,所以,象素A1、A2、A3、C3、C4和C5是从象素A1到墨水流分支点象素的一系列象素。(5-3-2)在渗开图画绘图处理中使用的数据在下面的描述中,用于绘制渗开图形的区域是一个如图99所示的由多个象素P构成的平面区域。如图100所示,所使用的纸纤维结构数据具有和各象素相关的至少一定数量M的纤维和一定数量的毛细管S1、S2、S3、S4、S5、S6、S7和S8。
由渗开图画绘制处理器50所执行的渗开处理多次使用处理标记,以记录处理次数、为与要被渗开的图画轮廓上的象素(轮廓象素)相对应而设定的轮廓数据、与在给定时间点位于渗开扩散最前面处的各象素相关设置为当前数据、与跟在当前数据被写入时间后的下一个时间点处位于渗开扩散最前面处各象素相关设置的下一数据、与构成用于渗开图画绘制的区域各象素相关设定的渗开图形数据,以及与构成用于绘制渗开图画的区域各象素相关的亮度数据。
轮廓数据是由轮廓象素坐标值、每个轮廓象素的最初墨水量U0和与轮廓墨水相关的最初墨水浓度V0构成的,图101示出了它的一个例子。每个轮廓数据具有一个轮廓数据号。
当前数据具有在给定时间点位于渗开扩散最前面部分处的象素A坐标值,该值此后称作当前导引坐标值;具有与象素A相邻并作为与象素A相关的墨水开始象素而运作的象素坐标值,此值此后称作当前渗开开始坐标值;具有用于涉及到与象素A相关的渗开开始轮廓象素的轮廓数据的轮廓数据号并具有用于规定象素A中墨水状态的状态数据,图102示出了它们的例子。每个当前数据具有当前数据号。由于当前数据是一个与在给定时间点位于渗开扩散最前面部分的象素相关的数据,所以,随着渗开扩散的进展,要连续地重写当前数据。
下一数据包括在当前数据中数据被写入时间点之后的下一个时间点处位于渗开扩散最前面部分处的象素B的坐标值,该值此后称为下一引导坐标值,包括与象素B相邻并作为与象素B相关的墨水开始象素而运作的一个象素坐标值,此值此后称为下一渗开开始坐标值,包括用于与象素B相关的渗开开始轮廓象素的轮廓数据的轮廓数据号,和用于规定象素B中墨水状态的状态数据,图103示出了它们的一个例子。每一个下一数据都具有下一数据号。由于下一数据是用于在数据被写入当前数据中的时间点之后的下一时间点处位于渗开扩散最前面部分象素的数据,所以,随着渗开扩散的进展,要连续地重写当前数据。
类似于纸纤维结构数据,渗开图形数据也与构成用于写入渗开图形的一个区域的每个象素有关。用于一个给定象素P的渗开图形数据具有一个用于规定象素P处墨水状态的状态数据、用于规定从渗开扩散开始到墨水流入象素P所需处理次数的步骤数、用于与规定从渗开扩散开始到墨水停止流到象素P所需处理次数的墨水流停止相关的步骤数、与象素P相邻并作为与象素P相关的墨水流开始象素而运作的一个象素的坐标值,该值此后称为渗开开始坐标值、与用于象素P的渗开开始轮廓象素相关的轮廓数据的轮廓数据号、用于规定由象素P吸收的墨水数量的吸收墨水量U和用于规定在象素P处墨水浓度的墨水浓度V。图104示出了它们的例子。
在当前数据状态下,设置有下一数据和渗开图形数据、和用于把墨水存在状态规定为初始值的“无墨水”(no ink)、用于规定与渗开开始象素相对应的象素P的“开始”(originating)、用于规定墨水流向并流过象素P的“流动”(flowing)以及用于规定停止向象素流动的“停止”(stop)。
与纸纤维结构数据相似,亮度数据对应于构成用于绘制渗开图形的一个区域的多个象素。与象素P相关的亮度图画数据具有与象素P相关的亮度,作为例子示于图105。(5-3-3)渗开图画图处理器的操作下面参照图106至110的流程图来解释嵌入图形绘图处理器50。
首先,在步骤ST5-1,从例如存贮器3或外部存贮设备4中读出例如是由模糊图画绘图处理器40形成的图形数据的将要被进行模糊处理的一个图画的图形数据。轮廓象素检测单元51根据将进行模糊处理的图画的图形数据,将和在将被进行模糊处理的图画上所有象素对应的模糊图画数据的状态设置为“开始”(originating),随后处理进入到步骤ST5-2。
在步骤ST5-2,轮廓象素检测单元51判断是否有任一象素没有经过步骤ST5-3到5-5的处理。若有这样的象素(YES),处理进入步骤ST5-3,若相反(NO),处理进入步骤ST5-56。
在步骤ST5-3,轮廓象素检测单元51检测没有经过步骤ST5-3到ST5-5处理的轮廓象素,并形成与轮廓象素相关的轮廓数据。轮廓象素检测单元51为每个轮廓数据附加轮廓数据号,同时把使用轮廓象素坐标值的轮廓数据形成为轮廓坐标值。
在步骤ST5-4,最初墨水量设定单元52设定在由步骤ST5-3形成的轮廓数据中的最初墨水量U0。
在步骤ST5-5,最初墨水浓度设定单元53设定在由步骤ST5-3形成的轮廓数据中的最初墨水浓度V0。在步骤ST5-5之后,处理返回到步骤ST5-2,以重复所述处理。
通过重复步骤ST5-2到ST5-5,利用向每个轮廓数据附加一个唯一的轮廓数据号形成了与轮廓象素相对应的轮廓数据。这些轮廓数据可以预先设置在将被进行模糊处理的图画的图形数据之中,从而使得渗开图画处理器50可以很容易地读出预置的轮廓数据而不用执行步骤ST5-2到ST5-5的处理。
在步骤ST5-6,控制器56将处理标记f的次数值设置为0。
在步骤ST5-7,连接象素检测单元54判断是否存在没有被步骤ST5-8到ST5-10处理的任一轮廓数据,若有这样的象素(YES),处理进入步骤ST5-8,否则(NO),处理进入到步骤ST5-11,如图107所示。
在步骤ST5-8,连接象素检测单元54检测没有被步骤ST5-9到ST5-10处理的轮廓数据。由该步骤ST5-8检测到的轮廓数据此后称作“待被处理的轮廓数据”,同时,与所述待被处理的轮廓数据相对应的象素被称作“待被处理的轮廓象素”。然后,处理转入步骤ST5-9。
在步骤ST5-9,连接象素检测单元54访问纸纤维结构数据,以检测通过毛细管连接到待被处理的轮廓象素上的象素。将被检测的象素是与正在被处理的轮廓象素相邻的象素,且被检测象素的数量是0到8。其渗开数据具有“开始”(originating)状态的象素,即位于将被进行渗开处理的图画轮廓上或轮廓内的象素不被检测。当仅有一个轮廓象素时,将被检测象素的数量是8。通常,将被检测的象素数量是0到7。
在步骤ST5-10,连接象素检测单元54形成与在步骤ST5-9检测到的象素相关的轮廓数据。特别是,连接象素检测单元54形成被附加有当前数据号的当前数据,从而使具状态为“流动”(flowing),在步骤ST5-9检测到的象素坐标值是引导坐标值,待被处理的轮廓数据的轮廓象素的坐标值是墨水流开始坐标值,附加给待被处理的轮廓数据的轮廓数据号是轮廓数据号。由于在步骤ST5-9检测到的象素量是0到8,所以,在步骤ST5-10形成的轮廓数据的数量不被限制为1,而是在从0到8的范围以内。当仅有一个轮廓数据时,在步骤ST5-10检测到象素的数量同样变成8。在步骤ST5-10形成的当前数据的数量通常是0到7。在步骤ST5-10之后,处理返回到步骤ST5-7,以重复所述处理。
通过重复步骤ST5-7到ST5-10,通过为每个当前数据附加了一个唯一的当前数据号,形成了最初当前数据。
在步骤ST5-11,如图107所示,控制器56将处理标记f次数的值加1。
在步骤ST5-12,图形数据设定单元55判断是否存在没有经步骤ST5-13到ST5-27处理的任一当前数据。若存在有这样的当前数据(YES),处理进入到步骤ST5-13,反之(NO),处理进入到步骤ST5-24,如图108所示。
在步骤ST5-13,图形数据设定单元55检测没有经步骤ST5-14到ST5-27处理的轮廓数据。由这个步骤ST5-13检测的当前数据此后称作“待被处理的当前数据”,与待被处理的当前数据相对应的象素称为“待被处理的当前象素”。随后,处理进入到步骤ST5-14。
在步骤ST5-14,图形数据设定单元55计算待被处理的轮廓象素的最大吸收墨水量Umax。然后处理进入到步骤ST5-15。
在步骤ST5-15,图形数据设定单元55根据在步骤ST5-14计算的最大吸收墨水量Umax、在与待被处理的轮廓象素对应的渗开图形数据中设定的吸收墨水量U和与待被处理的当前数据的轮廓数据号相对应的轮廓数据的最初墨水量U0判断墨水流动是超过了象素所能吸收的墨水量还是没有超过象素所能吸收的墨水量。然后,在(Umax-U)<U0和(Umax-Uq)≥U0的情况下,图形数据设定单元55分别转移到步骤ST5-16和ST5-22。若在与待被处理的当前象素对应的渗开图形数据中没有设置吸收墨水量U,则吸收墨水量U的值设置为0。
在步骤ST5-16,图形数据设定单元55访问待被处理的当前数据的状态。若待被处理的当前数据的状态是“流动”(flowing),处理转入步骤ST5-17,若待被处理的当前数据的状态是“停止”(stop),处理转入步骤ST5-19。
在步骤ST5-17,图形数据设定单元55设置与待被处理的当前象素对应的渗透图形数据。特别是,图形数据设定单元55通过把状态,标记f的值、待被处理的当前数据的墨水流开始坐标值、待被处理的当前数据的当前数据号、和在步骤ST5-14计算的最大吸收墨水量Umax减去渗开图画数据当前吸收墨水量U(Umax-U)分别设定成“流动”(flowing)、步骤数、墨水流开始坐标值,轮廓数据号和新的吸收墨水量来设定渗开图形数据。
然后,在步骤ST5-18,控制器56将与待被处理的当前数据轮廓数据号对应的轮廓数据的当前初始墨水量U0减去通过从由步骤ST5-14计算的最大吸收墨水量Umax减去渗开图国数据的当前吸收的墨水量U获得的值(Umax-U),即(U0-Umax+U)设置成与待被处理的当前数据的轮廓数据号对应的轮廓数据的新的初始墨水量U0。在步骤ST5-18以后,处理返回到步骤ST5-12,以重复所述处理。
在步骤ST5-19,图形数据设定单元55设定与待被处理的当前象素对应的渗开图画数据。图形数据设定单元55把状态、标记f的值、待被处理的当前数据的墨水流开始坐标值、待被处理的当前数据的轮廓数据号、与当前数据轮廓数据号对应的轮廓数据的初始墨水量U0和渗开图形数据(U0+U)的当前吸收墨水量U分别设定为“停止”(stop)、步骤数、墨水流开始坐标值,轮廓数据号和新的吸收墨水量U。
在步骤ST5-20,如同在步骤ST5-18一样,控制器56把与待处理的当前数据的轮廓数据号对应的轮廓数据的当前初始墨水量U0减去通过从在步骤ST5-14计算的最大吸收墨水量Umax中减去渗出图形数据的当前吸收墨水量U所获得的值(Umax-U),即(U0-Umax+U)设定为与待被处理的当前数据的轮廓数据号对应的轮廓数据的新的初始墨水量。
在步骤ST5-21,图形数据设定单元55将与从待被处理的当前象素到墨水流分流点象素的一系列象素对应的所有渗出图形数据的状态设定为“停止”(stop),同时为墨水流停止步骤数设定为标识f的值。在步骤ST5-21以后,处理返回到步骤ST5-12,以重复所述处理。
在步骤ST5-22,图形数据设定单元55设定与待被处理的当前象素相对应的渗出图形数据。图形数据设定单元55把状态、标记f的值、待被处理的当前数据的墨水流开始坐标值、待被处理的当前数据的轮廓数据号、以及与待被处理的当前数据的轮廓数据号对应的轮廓数据的初始墨水量U0和渗出图形数据当前吸收墨水量U之和(U0+U)分别设定为“流动”(flowing)、步骤数、墨水流开始坐标值、轮廓数据号和新的吸收墨水量U。
在步骤ST5-23,控制器56把与待处理的轮廓数据号相对应的轮廓数据的初始墨水量U0的值设定为0。在步骤ST5-23之后,处理返回到步骤ST5-12,以重复所述处理。
通过重复步骤ST5-12到ST5-23,在由于渗出行导致的墨水流向的象素上设定了渗出图形数据。
在步骤ST5-24,如图108所示,控制器56访问轮廓数据初始墨水量U0的值。若仍然有轮廓数据超过了初始墨水量U0的值(NO),处理进入步骤ST5-25。若所有轮廓数据的初始墨水量U0的值都不大于0(YES),处理转入步骤ST5-38,如图110所示。
在步骤ST5-25,考虑在轮廓象素中的墨水流,控制器56减小在轮廓数据初始墨水量U0值中的波动。即,如果在两个相邻轮廓象素间的轮廓数据的初始墨水量U0的值不同,则控制器56管理所述的控制,以减少具有较大值初始墨水量U0的轮廓数据的初始墨水量U0的值,并增加具有较小值初始墨水量U0的轮廓数据的初始墨水量U0的值。在减小初始墨水量U0的过程中,墨水量U0的最小值被设置为0。
在步骤ST5-26,连接象素检测单元54判断是否存在任何未经步骤ST5-27到ST5-33处理的任一当前数据。若存在有这样的当前数据(YES),处理进入到步骤ST5-27,若没有这样的当前数据(NO),处理转向步骤ST5-34,如图109所示。
在步骤ST5-27,连接象素检测单元54检测未经步骤ST5-28到ST5-33处理的当前数据。然后,处理进入到步骤ST5-28。
在步骤ST5-28,连接象素检测单元54访问在与步骤ST5-27所检测到的当前数据相对应的象素中设置的渗开图形数据,以便把渗开图形数据的吸收墨水量U和象素中的最大吸收墨水量Umax相比较。若墨水能被进一步吸收、即如果U<Umax,处理进入步骤ST5-29。若墨水不能被进一步吸收,即如果U=Umax,处理转向步骤ST5-30。
在步骤ST5-29,连接象素检测单元54根据与在步骤ST5-27检测到的当前数据相对应的象素是位于渗开扩散最前面部分的假定形成下一数据。特别是,连接象素检测单元54通过把状态、在步骤ST5-27检测到的当前数据的当前坐标值和在步骤ST5-27检测到的当前数据的当前墨水流开始坐标值分别设定为“流动”(flowing)、下一数据的下一引导坐标值和用于下一数据的下一墨水流开始坐标值形成为其附加有下一数据号的下一数据。在步骤ST5-29之后,处理返回到步骤ST5-26,以重复所述处理。
在步骤ST5-30,连接象素检测单元54访问纸纤维结构数据,以检测通过毛细管连接到与在步骤ST5-27检测到的当前数据对应的象素上的象素。然后,处理进入到步骤ST5-31。将要被检测的象素是7个象素,特别是除了墨水从其流到开始考虑的象素的象素以外,还包括有与在步骤ST5-27检测到的当前数据对应的象素相邻的象素。在步骤ST5-30所检测的象素数量是0到7。但是,其渗开图形数据具有状态“开始”(originating)的那些象素、即位于图画轮廓内部并从其开始渗出的那些象素,以及其渗开图形数据具有状态“流动”(flowing)或“停止”(stop)的那些象素、即在前流过墨水的那些象素不进行检测。
在步骤ST5-31,连接象素检测单元54判断在步骤ST5-30是否检测到了象素。若检测到了象素(YES),处理进入步骤ST5-32。若没有检测到象素(NO),处理进入步骤ST5-33。
在步骤ST5-32,连接象素检测单元54根据墨水流是持续的假定形成与在步骤ST5-30检测到的象素相对应的下一数据。特别是,连接象素检测单元54通过把状态、在步骤ST5-30检测到的象素坐标值、在步骤ST5-27检测到的当前数据的当前引导坐标值以及在步骤ST5-27检测到的当前数据的轮廓数据号分别设置为“流动”(flowing)、下一引导坐标值、下一墨水流开始坐标值和轮廓数据号形成被附加有下一数据号的下一数据。由于在步骤ST5-30检测0到7个象素,所以将要在步骤ST5-32被形成的下一数据号不是被限定为1,而是在从0到7的范围之内。在步骤ST5-32之后,处理返回到步骤ST5-26,以重复所述处理。
在步骤ST5-33,连接象素检测单元54根据墨水流停止的假定形成下一数据。特别是连接象素检测单元54通过把状态、在步骤ST5-27检测到的当前数据的坐标值、在步骤ST5-27检测到的当前数据的当步墨水流开始坐标值和在步骤ST5-27检测到的步骤数据的轮廓数据号分别设置为“停止”(stop)、下一引导坐标值、下一墨水流开始坐标值和轮廓数据号形成被附加有下一数据号的下一数据。在步骤ST5-33之后,处理返回到步骤ST5-26,以重复所述操作。
通过重复步骤ST5-26到ST5-33,形成了附加适宜每下一数据下一数据号形成了下一数据,这是一个涉及到在紧跟着数据被写入当前数据中的时间点之后的一个时间点处置位于渗开扩散最前面处的象素的数据。
在步骤ST5-34,如图109所示,连接象素检测单元54判断是否存在有下一数据。下一数据的存在或不存在分别规定了渗开扩散的继续和结束。若存在有下一数据(YES),处理进入到步骤ST5-35,反之(NO),处理转入步骤ST5-38。
在步骤ST5-35到ST5-37,连接象素检测单元54拷贝当前数据中的下一数据,以更新渗开扩散的最前面部分。即在步骤ST5-35,连接象素检测单元54擦除所有的当前数据,然后,在步骤ST5-36,连接象素检测单元54直接拷贝当前数据中的所有当前下一数据。在步骤ST5-27,连接象素检测单元54擦除所有的当前下一数据。在步骤ST5-37之后,连接象素检测单元54转到步骤ST5-11,以重复渗开图形数据的设置。
另一方面,在步骤ST5-38,图形数据设定单元55根据渗开扩散已经停止的假定来设置渗开图形数据。即图形数据设定单元54设定渗开图形数据的状态,该状态被预先设定为“流动”、“停止”,并将墨水流停止步骤的数量设置为标识f的值。
而后,在步骤ST5-39,图形数据设定单元55根据墨水流停止步骤的数量和象素渗开图形数据步骤的数量计算墨水所流到的象素、即其渗开图形数据具有状态“停止”(stop)的象素的墨水浓度V,并将所计算的墨水浓度值设定为渗开图形数据的墨水浓度V。特别是,图形数据设定单元55根据等式(5-8)到(5-10)预先计算与不小于0的整数的x和t相关的墨水浓度V(x,t)以将其设置为x和t的两维阵列。图形数据设定单元55访问被如所设置为两维阵列的墨水浓度V(x,t),以获得墨水浓度V。即由于步骤数和墨水流停止步骤数分别为x和t,所以图形数据设定单元55访问被设置为两维阵列的墨水浓度V(x,t),以获得在每一个象素处的墨水浓度。
在步骤ST5-40,图形数据设定单元55根据为每个象素设定的渗开图形数据计算与多个象素相关的亮度值,以设置亮度数据。墨水所流入的象素的亮度数据,即其渗开图形数据具有状态“停止”(stop)的象素的亮度数据通过使象素所吸收的墨水量U和墨水浓度相乘来加以计算。为了计算亮度值,亮度值可以被乘以一个适当的系数以进行归一化。在待被渗开的图形上象素的亮度值,即其渗开图形数据具有状态“开始”(originating)的象素的亮度值被设置为全部亮度值范围以内的最大值,而没有墨水流入的象素的亮度值即其渗开图形数据具有状态“停止”(stop)的象素的亮度值被设置为全部亮度值范围的内的最小值。假设在前面的描述中,亮度值愈大,则墨水量和墨水浓度愈大。但是处理也可以在亮度愈小,墨水量和墨水浓度愈大的情况下顺利进行。
在步骤ST5-41,渗开图形绘画单元50将在步骤ST5-40处形成的与每个象素相关的亮度数据传送给显示装置5。根据该亮度数据,显示装置5显示渗开图画。
在上面描述的渗开图画绘制处理中,是在没有墨水从一个象素流向一个给定的其先前已经有墨水从其它象素向其流入的象素的假设前提下设定所述渗开图形数据的。就是说,当在步骤ST5-30检测由毛细管连接的象素时,先前已有墨水流入的任一象素,即其渗开图形数据状态为“流动”(flowing)或“停止”(stopped)的象素不被进行检测。
但事实上,墨水颗粒很容易被扩散到一个象素上,即从一个给定的象素、一个通过毛细管与所述象素互连的其它象互在前流入所述象素。
由此,渗开图形数据就可以在下述的前提下预以设置即如果在从其开始有墨水流向象素P的象素附近存在有一个或多个通过毛细管连接到先前已有墨水流入的象素P上的象素和墨水先前已经流向这样一个或多个通过毛细管与象素P互连的象素,即如果在象素P处的墨水流和在一个或多个通过毛细管连接到象素P上的象素处的墨水流相互底触,那么,墨水颗粒在象素P和一个或多个象素之间扩散,并因此,需要在设置渗开图形数据时加以考虑。
下面参看图111来解释考虑到在这种墨水流相底触而引起墨水颗粒扩散的情况下用于设定渗开图形数据的方法。
在图111所示的实施例中,存在有通过毛细管互连的一系列象素A1、A2、A31、A42和A52、通过毛细管互连的一系列象素B1、B2、B3、B42和B52以及通过毛细管互连的一系列象素A41、A51、A61、B51和B41。象素A3通过毛细管连接到象素A41、并且象素A3还连接到象素B41。墨水以象素A1、A2、A31、A42、A52的顺序流过A1、A2、A31、A42和A52并作为第一墨水流,这个墨水流在象素A3处被分支的流向象素A41、A51和A61。墨水还以象素B1、B2、B31、B42、B52的顺序流过象素B1、B2、B31、B42和B52并作为第二墨水流,该墨水流在象素B3处被分支以流向象素B51和B41。
在这种情况下,流向象素A61的墨水与流向象素B51的墨水相互抵触。为了在这种情况下设置与各象素有关的渗开图形数据,只要把位于朝象素A61的分流的分流点处象素即象素A3上的墨水流的压力和位于朝象素B51分流的分流点处的象素、即象素B3上的墨水压力相比较、并假定若两个压力彼此相等则没有墨水颗粒扩散,而若两个压力彼此不等,则在两个颗粒之间继续墨水扩散就足够了。
由于在两象素处的两个墨水流的压力在渗开扩散的初始阶段较大并随着渗开扩散的进展而变得较小,所以把在用于象素A3的渗开图形数据中设定的步骤数和在用于象素B3的渗开图形数据中设定的步骤数加以比较以作为在两个象素处的墨水流压力的比较就足够了。
若用于象素A3的渗开图形数据中设置的步骤数与用于象素B3的渗开图形数据中设置的步骤数彼此相等,在象素A41、A51、A61、B51和B41处就不会发生墨水颗粒的扩散。由此,对于这些象素A41、A51、A61、B51和B41来讲,就根据上述的流程设置渗开图形数据。
相反,若在用于A3的渗开图形数据中设定的步骤较小于在用于B3的渗开图形数据中设定的步骤数,那么在第一墨水流停止以前,在象素A41、A51、A61、B51和B41处就会发生从象素A41到象素B41这个方向上的墨水颗粒扩散。由此,对于与这些象素A41、A51、A61、B51和B41的渗开图形数据相关的墨水流停止步骤数量而言,设定了与作为这些象素的墨水流分流点象素的象素A3相关的墨水流停止步骤数量相同的值。
另一方面,若在用于象素B3的渗出图形数据中设定的步骤较小于在用于象素A3的渗出图形数据中设定的步骤数,那么,在第二墨水流时停止以前,在象素A41、A51、A61、B51和B41处沿从象素B41到象素A41的方向会发生墨水颗粒的扩散。因此,对于与这些象素A41、A51、A61、B51和B41的渗开图形数据相关的墨水流停止步骤数量而言,设定了与作为这些象素墨水流分流点象素的象素A3相关的墨水流停止步骤数量相同的值。
因此,在考虑不同墨水流相互抵触的情况下,通过墨水颗粒的扩散可以设定渗开图形数据。
虽然在前面描述了来自两个方向的两个墨水流为例子,但也可以通过比较在相对于墨水流发生抵触的象素是墨水流分流点的象素中设置的渗开图形数据步骤的数量类似地设置在三个来自三个不同方向的墨水流情况下的与渗开图形数据相关的墨水流停止步骤数量。
(6)图像显示例子图112示出了一个例子,在这个例子中,作为一个模糊的和渗开图画的例子在上述的图象显示系统中实际上显示了一个由10个笔划YU1到YU10构成的读作“yume”(意思是“梦”)的日文假名字符。
在图112所示例子中,纸纤维结构数据形成处理器30形成纸纤维结构数据,而字体形成处理器30形成假名字符“yume”。读作“yume”的字体是由10个笔划数据YU1到YU10相对应的笔划数据构成的。
由纸纤维结构数据形成处理器30形成的纸纤维结构数据和由字形形成处理器20形成的读作“yume”的字形被读入模糊图画绘图处理器40,该处理器40然后根据纸纤维结构数据和假名字符的字形在假名字符各笔划YU1到YU10的基础上执行模糊图形绘图处理,以设置在绘制各笔划YU1到YU10的时间点处笔划YU1到YU10中的墨水量和墨水浓度。
作为表示在写入各笔划YU1到YU10的时间点处所述毛笔状态的数据,毛笔数据的墨水浓度和墨水量与在写入刷上所有点处的相同。与笔划YU1到YU10相关的写入刷数据的墨水量和墨水浓度设置如下表5
与笔划YU1到YU10相关的模糊参数设置为下表6
表6
(表6续)
(表6续)
(表6续)
由纸纤维结构数据形成处理器30形成的纸纤维结构数据和在模糊图画绘图处理器40中设定的笔划YU1到YU10中的墨水量和墨水浓度被输入给模糊图画处理器50。模糊图画处理器50在假名字符各笔划YU1到YU10执行渗开图画处理,以在笔划YU1到YU10周围产生渗开,从而绘制被模糊和渗开的假名字符“yume”,如图112所示。由此,就可以利用本发明的图形显示系统去表示即使使用毛笔实际上去写也会出现的模糊和渗开。
另外,可能发生下述情况,即当图形被放大并显示在显示装置上时,图画轮廓变得参差不齐,如图113所示。这样,在计算机图形中执行一个去阶梯处理以平滑图画轮廓,从而在显示设备上显示一个平滑的图画。
把上述渗开图画绘图处理作为这种去阶梯处理也是有效的。即,通过利用渗开图画绘图处理对轮廓部分的附近进行处理,图画轮廓可以被平滑,如图114所示。另外,利用使用渗开图画绘图处理的去阶梯处理,在显示设备上可以显示图画轮廓,从而使得所述图画能够比利用仅能平滑图画轮廓的去阶梯处理所绘制的图画更象利用毛笔实际绘制的图形。其原因在于利用毛笔实际绘制的图的轮廓不是精确平滑的而是具有某些渗开。
权利要求
1.一种用于形成字符或符号的字形的方法,包括输入位于用于规定字符或符号一划的一种笔划轮郭上的多个坐标数据;准备包括有多个输入坐标数据的笔划数据,所述笔划数据具有一个作为用于规定所述笔划开始点的坐标数据或作为用于规定所述笔划结束点的坐标数据的一个输入坐标数据;和形成包括有一个或多个所述笔划数据的字符或符号字形。
2.如权利要求1的字形形成方法,其中,最初输入的坐标数据是用于规定所述开始点的坐标数据。
3.如权利要求1的字形形成方法,其中,最后输入的坐标数据是规定所述结束点的坐标数据。
4.如权利要求1的字形形成方法,其中,所述的字形具有用于规定笔划顺序的数据。
5.如权利要求1的字形形成方法,其中,用于规定笔划顺序的数据按笔划输入顺序形成。
6.如权利要求1的字形形成方法,包括利用一个扫描器阅读书字符或符号并将其存贮在一个存贮器内;在一个显示设备上显示所存贮的字符或符号;参考在显示设备上显示的字符或符号输入所述多个坐标数据。
7.如权利要求1的字形形成方法,包括在一个存贮器中存贮一个预先存在的字形;在一个显示设备上显示得自于存贮在所述存贮器中的字形字符或符号;和参考在所述显示设备上显示的字符或符号,输入所述多个坐标数据。
8.一种用于形成字符或符号的字形的装置,包括一用于输入位于用于规定字符或符号一划的一种笔划轮廓上的多个坐标数据的装置;一用于准备包括有多个输入坐标数据的笔划数据,该笔划数据具有作为用于规定所述笔划开始点的坐标数据或作为用于规定所述笔划结束点的坐标数据的一个输入坐标数据的装置;和一用于形成包括有一个或多个笔划数据的字符或符号的字形的装置。
9.如权利要求8的字形形成装置,其中,最初输入的坐标数据是用于规定所述开始点的坐标数据。
10.如权利要求8的字形形成装置,其中,最后输入的坐标数据是用于规定所述结束点的坐标数据。
11.如权利要求8的字形形成装置,其中,所述字形具有用于规定笔划顺序的数据。
12.如权利要求11的字形形成装置,包括有笔划顺序设定装置,用于根据所述笔划数据形成装置中的笔划数据形成顺序形成所述的笔划顺序规定数据。
13.如权利要求8的字形形成装置,包括图形续出装置,用于读出与输出图象数据相关的字符或符号;存贮装置,用于存贮来自所述图形读出装置的图象数据;和显示装置,用于根据存贮在所述存贮装置中的图象数据显示字符或符号的图形;参考在所述显示装置上显示的字符或符号,利用所述的坐标输入装置输入所述多个坐标数据。
14.如权利要求8的字形形成装置,包括图形字形存贮装置,用于存贮预先存在的字形;和显示装置,用于根据存贮在所述字形存贮装置中的字形显示字符或符号的图形;参考在显示装置上显示的字符或符号,利用所述坐标输入装置输入所述多个坐标数据。
15.一种字符或符号的字形,其中,所述字符或符号是由每个表示毛笔一划的一个或多个笔划构成,其中,所述的笔划数据由多个用于规定在轮廓上笔划位置的坐标数据和用于规定笔划开始点或结束点的坐标数据构成。
16.如权利要求15的字形,其中,用于规定所述开始点的坐标数据是最初输入的笔划坐标数据。
17.如权利要求15的字形,其中,用于规定所述结束点的坐标数据是最后输入的笔划坐标数据。
18.如权利要求15的字形,其中,具有笔划顺序规定数据。
19.如权利要求18的字形,其中,所述笔划输入顺序是笔划顺序规定数据。
20.一种用于根据一个图内多个象素中的图形数据组在显示装置上表示模糊图画的方法,包括读出包括位于从所述图画的开始点向结束点延伸的第一轮廓上一个或多个坐标点Ai(i=1,2,3......)的第一轮廓数据和包括位于从所述开始点向所述结束点延伸的第二轮廓上一个或多个坐标点Bj(j=1,2,3......)的第二轮廓数据;检测在用于使所述第一轮廓数据的第k′个坐标点Ak与所述第二轮廓数据的第k′个坐标点Bk互连的线段lk的象素P;根据用于规定所述图模糊区域的模糊区域数据,判断所述象素P是否位于模糊区域之中;若所述象素P处于模糊区域之中,将用于规定墨水耗尽状态的墨水不存在数据设定为象素p中的图形数据,若所述象素P不处于模糊区域之中,将用于规定墨水含有状态的墨水存在数据设定象素P内的图形数据;检测在用以使所述第一轮廓数据的第(k+1)个坐标点Ak+1和所述第二轮廓数据的第(k+1)个坐标点Bk+1互连的线段lk+1上象素Q;根据所述的模糊区域数据,判断所述象素Q是否位于所述模糊区域之内;若所述象素Q位于模糊区域之内,则将用于规定墨水耗尽状态的墨水不存在数据设定为象素Q中的图形数据,若所述象素Q不位于模糊区域之内,则将用于规定墨水含有状态的墨水存在数据设定为象素Q内的图形数据;检测位于使所述象素P和Q互连的线段上的象素R;和根据在所述象素P和Q设定的各图形数据在所述象素R中设定图形数据。
21.如权利要求20的模糊图形绘图方法,还包括若在所述坐标点Ai和Ai+1之间的距离大于一个预置值,那么在所述第一轮廓数据的两个相邻坐标点Ai和Ai+1之间增补一个坐标点,从而使所述两个相邻坐标点之间的距离不大于所述预置值,用以形成新的第一坐标数据,若坐标点Bj和Bj+1之间的距离大于一个预置值,则在所述第二轮廓数据的两个相邻坐标点Bj和Bj+1之间增补一个坐标点,以使所述两个相邻坐标点之间的距离不大于所述预定值,用以形成新的第二坐标数据,并使用所述新的第一和第二坐标数据来检测所述象素P和Q。
22.如权利要求20的模糊图画绘图方法,还包括如果所述第一轮廓数据坐标点的数量不同于所述第二轮廓数据坐标点的数量,则给所述第一轮廓数据或所述第二轮廓数据增补坐标点,以使得所述第一轮廓数据的坐标点的数量与所述第二轮廓数据坐标点的数量相等,用以形成新的第一轮廓数据或新的第二轮廓数据,并使用所述新的第一和第二轮廓数据检测所述的象素p和Q。
23.如权利要求20的模糊图画绘图方法,其中,所述图形数据具有用于规定墨水浓度的墨水浓度数据,在所述象素P中的墨水浓度数据被设置,从而从所述开始点到所述线段lk的图形长度愈短,墨水就变得愈浓,在所述象素Q中的墨水浓度数据被设置,从而从所述开始点到线段lk+1的图形长度愈短,墨水就变得愈浓。
24.如权利要求23的模糊图画绘图方法,还包括根据在象素P中设定的墨水浓度数据、在象素Q中设定的墨水浓度数据、象素P和R之间的距离以及象素R和Q之间的距离来设定象素R中的墨水浓度数据。
25.如权利要求20的模糊图画绘图方法,其中,所述的图形数据具有用于规定墨水数量的墨水数量数据;在所述象素P中的墨水数量数据被设置,从而从所述开始点到线段lk的图形长度愈短,墨水的数量变得愈大;在所述象素Q中的墨水数量数据被设置,从而从所述开始到线段lk+1的图形长度愈短,墨水的数量变得愈大。
26.如权利要求25的模糊图画绘图方法,还包括根据象素P中设定墨水数量数据、象素Q中设定的墨水数量数据,象素P和R之间的距离和象素R和Q之间的距离设定象素R中的墨水数量数据。
27.如权利要求20的模糊图画绘图方法,还包括访问包括一通过每个象素的纤维数量的以象素为基础的纸纤维结构数据;计算已经根据所述图形数据设定的图形数据的象素的亮度和已经设定了图形数据的象素的纤维数;和根据所述计算的亮度在一个显示装置上表示模糊图形。
28.如权利要求20的模糊图画绘图方法,其中,所述的模糊区域数据包括表示在通过所述图形从其开始点到结束点基本上平行于所述第一或第二轮廓延伸的m个轨迹上的m个模糊开始长度,所述第一或第二轮廓开始于所述开始点并在一个模糊区域开始的模糊开始点处结束,所述的模糊区域数据还包括表示在从所述开始点开始、在模糊区域结束的模糊开始点位置处结束的m个轨迹上的m个模糊结束长度。
29.如权利要求28的模糊图画绘图方法,还包括,若PS<Lk<PE时和Lk≤PS且PE≤Lk时则判断象素P分别位于所述模糊区之内和之外,以及若QS<Lk+1<QE和Lk+1≤QS且QE≤Lk+1时则判断Q分别位于所述模糊区之内和之外,其中,PS表示在通过所述象素P的轨迹上所述模糊区域数据的模糊开始长度,PE表示在通过所述象素P的轨迹上所述模糊区域数据的模糊结束长度,QS表示在通过所述象素Q的轨迹上所述模糊区域数据的模糊开始长度,QE表示在通过所述象素Q的轨迹上所述模糊区域数据的模糊结束长度;Lk和Lk+1分别表示从所述开始点到线段lk和lk+1的图形长度。
30.如权利要求20的模糊图画绘图方法,其中,在图形中具有多个模糊区域,并提供有与每个模糊区域相关的多个模糊区域数据,其中,判断所述的象素P和Q是否位于与每一个模糊区域数据相关的模糊区域内。
31.如权利要求20的模糊图画绘图方法,其中,所述的模糊参数包括参数C1,用以表示沿着从所述开始点到所述结束点的所述图画长度的模糊开始位置;参数C2,用于表示沿所述图画长度的模糊结束位置;参数C3,用于表示沿所述图画宽度的上模糊结束位置;参数C4,用于表示沿所述图画宽度的下模糊结束位置;参数C5,用于表示沿所述图画长度的模糊开始位置的波动范围;参数C6,用于表示沿所述图画长度模糊结束位置的波动范围;和参数C7,用于表示沿所述图画宽度的模糊浓度;所述的模糊区域数据被根据所述的模糊参数被在先形成。
32.如权利要求31的模糊图画绘图方法,还包括预先设定具有由所述参数C1、C2、C3、C4、C5、C6和C7相互组合而形成的不同值的多个模糊参数,和根据从所述多个模糊参数中选择模糊参数形成所述的模糊区域数据。
33.如权利要求31的模糊图画绘图方法,还包括在从其开始点到其结束点绘制所述图画期间,根据表示毛笔速度分布数据的速度分布数据和表示毛笔压力分布的毛笔压力分布数据计算所述参数C1、C2、C3、C4、C5、C6和C7,和使用计算的参数C1、C2、C3、C4、C5、C6和C7作为所述的模糊参数。
34.如权利要求31的模糊图画绘图方法,还包括根据用于规定一个图画形状并具有从所述图画的开始点到其结束点的长度数据的形状数据,用于规定所述图画宽度的宽度数据、用于规定所述画弯曲的弯曲数据和用于规定在大于预先设定角度的角度处弯曲的数量和位置的弯曲点数据计算所述参数C1、C2、C3、C4、C5、C6和C7,和使用所计算的参数C1、C2、C3、C4、C5、C6和C7作为模糊参数。
35.一种模糊图画绘图方法,其中,存在有多个如权利要求20所述的图画,还包括根据一个预定规则选择至少一个所述图画;使用的选择的图画作为将要被模糊的图画;和设定用于仅对存在于将要被进行模糊处理的图象中的象素产生模糊处理的图形数据,同时设定用于不对存在于不需要进行模糊处理的其余图象中的象素产生模糊处理的图象数据。
36.如权利要求35的模糊图画绘图方法,其中,所述的预定规则规定以如下方式从所述多个图画中选择一个图画,该方式是使所选择的被模糊图画的数量与总图画数量之化不大于一个预定值。
37.如权利要求35的模糊图画绘图方法,其中,所述的预定规则规定以如下方式从所述多个图画中选择一个图画,该方式是使所选择被模糊图画的数量与总图画数量之比不大于一个预定值,并随机选择剩余图画中的一个。
38.如权利要求36的模糊图画绘图方法,其中,所述预定比值为1/3。
39.如权利要求36的模糊图画绘图方法,其中,所述多个图画的顺序是预定的,且其中,所述的预定规则规定从所述多个图画中选择一个具有最大图画长度的图形,并随后从除位于所述最长图画前面和后面的两个图画以外的剩余图画中选择一个较长的图画。
40.一种用于根据在一个图画的多个象素中设定的图形数据在一个显示装置上表示模糊图画的装置,包括一用于读出包括有位于从所述图画的开始点以其结束点延伸的第一轮廓上的一个或多个坐标点Ai(i=1,2,3......)的第一轮廓数据和包括有位于从其开始到其结束点延伸的第二轮廓上的一个或多个坐标数据Bi(j=1,2,3......)的第二轮廓数据的装置;第一象素检测装置,用于根据由所述数据读出装置提供的第一轮廓数据和第二轮廓数据,检测在使所述第一轮廓数据的坐标点Ai和第二轮廓数据的坐标点Bj经连的线段li上的象素;第一图形数据设定装置,用于根据规定图形模糊区域的模糊区域数据判断由所述第一象素检测装置检测的象素是否位于模糊区域内;若所述的象素位于所述模糊区域之内,用于规定墨水耗尽状态的墨水不存在数据被设定为所述象素内的图形数据,并且若所述象素不位于所述模糊区域之内,用于规定墨水含有状态的墨水存在数据被设定为所述图象内的图形数据;第二象素检测装置,用于检测位于在所述线段li上由所述第一象素设定装置设定的象素和位于线段li+1上的象素中间的一个象素;和第二图形数据设定装置,用于根据由所述第一图形数据设定装置检测到的位于线段li上象素的图形数据和位于线段lj+1上象素的图形数据设定由所述第二象素检测装置检测到的象素的图形数据。
41.如权利要求40的模糊图画绘图方法,其中,所述的数据读出装置还包括轮廓数据增补装置,用于当在所述第一轮廓数据上两个相邻坐标点Ai和Ai+1之间的距离大于一个预定值时,在该两坐标点之间增补坐标点,以使相邻两坐标点之间的距离不大于所述预定值,从而产生新的第一坐标数据,当在所述第二轮廓数据上的两个相邻坐标点Bi和Bi+1之间的距离大于一个预定值时,所述轮廓数据增补装置在两个相邻坐标点Bk和Bk+1之间增补坐标点,以使相邻两坐标点之间的距离不大于所述预定值,从而产生新的第二坐标数据。
42.如权利要求40的模糊图画绘图装置,其中,所述数据读出装置包括轮廓数据调节装置,用于当所述第一轮廓数据的坐标点的数量不同于所述第二轮廓数据坐标点的数量时,向所述第一轮廓数据或所述的第二轮廓数据增补坐标点,以使所述第一轮廓数据坐标点的数量等于所述第二轮廓数据坐标点的数量,用于形成新的第一轮廓数据或新的第二轮廓数据。
43.如权利要求40的模糊图画绘图装置,其中,所述图画数据具有用于规定墨水浓度的墨水浓度数据,且其中,所述第一图形数据设定装置具有第一墨水浓度装置,用于以设定在由所述第一象素检测装置检测到的象素中的墨水浓度数据,从而从所述开始点到所述线段li的图画长度愈短,墨水浓度就愈高。
44.如权利要求40的模糊图画绘图装置,其中,所述第二图形数据设定装置用于根据由所述第一墨水浓度设定装置为两个相邻线段li和li+1上的象素设定的墨水浓度数据、所述线段li上的象素和由所述第二象素检测装置检测到的象素之间的距离以及由所述第二象素检测装置检测到的象素和线段li+1之间的距离来计算由所述第二象素检测装置检测到的象素内的墨水浓度,以设定在所述象素上的墨水浓度数据。
45.如权利要求40的模糊图画绘图装置,其中,所述的图画数据具有用于规定墨水数量的墨水浓度数据,且其中所述第一图画数据设定装置具有第一墨水浓度设定装置,用于以从所述开始点到所述线段li的图画的长度愈短墨水数量愈多的方式设定在由所述第一象素检测装置检测到的象素中的墨水浓度。
46.如权利要求45的模糊图画绘图装置,其中,所述第二图形数据设定装置根据由所述第一墨水数量设定装置为两个相邻线段li和li+1上的象素设定的墨水数量数据、直线段li上的象素和由所述第二象素检测装置检测到的象素之间的距离以及由所述第二象素检测装置检测到的象素和线段li+1之间的距离计算在由所述第二象素检测装置检测到的象素中的墨水数量以用于设定在所述象素上的墨水数量数据。
47.如权利要求40的模糊图画绘图装置,还包括亮度数据计算装置,用于访问包括有通过每一象素的纤维数量的以象素为基础的纸纤维结构数据,计算已经根据所述图形数据设定了图形数据的象素的亮度和已经设定了图形数据的纤维的数量;一个模糊图画根据由所述亮度数据计算装置设定的以象素为基础的亮度数据被表示在一个显示装置上。
48.如权利要求40的模糊图画绘图装置,其中,所述模糊区域数据包括表示在通过所述图画从其开始点到其结束点基本上平行于开始于所述开始点、结束于模糊区域开始处的模糊开始点处的所述第一或第二轮廓延伸的m个轨迹上的m个模糊开始长度和表示在开始于所述开始点、结束于所述模糊区域结束处的模糊结束点处的所述m个轨迹上的m个模糊结束长度。
49.如权利要求48的模糊图画绘图装置,其中,当PS<Lk<PE和Lk≤PS或PE≤Lk时,象素P被分别判断为处于所述模糊区域之内和之外,当QS<Lk+1和Lk+1≤QS或QE≤lk+1,象素Q被分别判断为处于所述模糊区域之内和之外,其中,PS表示在通过所述象素P的一个轨迹上模糊区域数据的模糊开始长度,PE表示通过所述象素P的一个轨迹上的模糊区域数据的结束长度,QS表示在通过所述象素Q的一个轨迹上模糊区域数据的模糊开始长度,QE表示在通过所述象素Q的一个轨迹上模糊区域数据的模糊结束长度,Lk和L1分别表示从所述开始点到线段lk和li+1的图画长度。
50.如权利要求40的模糊图画绘图装置,其中,在一个图画中具有多个模糊区域,提供了与每个模糊区域相关的多个模糊区域数据,其中,第一图形数据设定装置判断由所述第一象素检测装置检测到的与第一个模糊区域相关的象素是否处于所述模糊区域之内。
51.如权利要求48的模糊图画绘图装置,还包括有用于设定包含有参数C1、C2、C3、C4、C5、C6和C7在内模糊参数的模糊参数设定装置,所述参数C1表示沿从所述开始点到所述结束点的所述图画长度的模糊开始位置;参数C2表示沿所述图画长度的模糊结束位置;参数C3表示沿所述图画宽度的上模糊结束位置;参数C4表示沿图画宽度的下模糊结束位置;参数C5表示沿所述图画长度的模糊开始位置的波动范围;参数C6表示沿所述图画长度的模糊结束位置的波动趋势;和参数C7表示沿所述图画宽度的模糊浓度,且所述模糊区域数据形成装置根据由所述模糊参数设定装置设定的模糊参数形成所述的模糊区域数据。
52.如权利要求51的模糊图画绘图装置,其中,所述模糊参数设定装置具有模糊参数选择装置,用于从具有由所述参数C1、C2、C3、C4、C5、C6和C7的相互组合的不同值的多个预形成模糊参数中选择一个模糊参数。
53.为权利要求51的模糊图画绘图装置,其中,所述模糊参数设定装置具有第一模糊参数计算装置,用于在从开始点到结束点绘制一个图画期间,根据表示毛笔传送速度分布的速度分布数据和表示毛笔压力分布的毛笔压力分布数据计算所述的参数C1、C2、C3、C4、C5、C6和C7,以设置所述的模糊参数。
54.如图53的模糊图画绘图装置,其中,所述输入装置是一个图形输入板,并且,所述笔的运动速度和书写压力是分别作为所述的速度分布数据和毛笔压力分布数据输入的。
55.如权利要求51的模糊图画绘图装置,其中,所述模糊参数设定装置具有第二模糊参数计算装置,用于根据规定具有从所述图画开始点到结束点的长度数据的图画形状的形状数据、规定所述图画宽度的宽度数据、规定所述图画转弯的弯曲数据和规定在大于一个预定角度的角度处转弯的数量和位置的拐点数据计算所述的参数C1、C2、C3、C4、C5、C6和C7,以设定所述的模糊参数。
56.如权利要求40的模糊图画绘图装置,还包括轮廓数据读出装置,用于读出由第一轮廓数据和第二轮廓数据构成的多个全轮廓数据;和由所述轮廓数据读出装置提供数据的轮廓数据选择装置,用于根据一个预定规则从所提供的全轮廓数据中选择至少一个全轮廓数据,在图画绘制过程中,由所述轮廓数据选择装置选择的全轮廓数据的表示的一个图画被进行模糊处理,且没有由所述轮廓数据选择装置选择的全轮廓数据所表示的图画在图画绘制过程中不被进行模糊处理。
57.如权利要求56的模糊图画绘图装置,其中,所述的预定规则规定以使所述模糊图画的数量和图画总量之比值不大于一个预定值的方式从所述多个图画中选择一个图画。
58.如权利要求56的模糊图画绘图装置,其中,所述的预定规则规定以使所选择的全轮廓数据的数量和全轮廓数据的总量之比值不大于一个预定值的方式从所述多个全轮廓数据中选择所述的全轮廓数据,且随机选择剩余全轮廓数据中的一个。
59.如权利要求56的模糊图画绘图装置,其中,所述的预定比值是1/3。
60.如权利要求56的模糊图画绘图装置,其中,所述多个全轮廓的顺序是预定的,且其中,所述的预定规则规定从所述多个全轮廓中选择具有最大全轮廓数据长度的一个全轮廓,随后,从除了位于所述最大全轮廓数据之前和之后的两个全轮廓数据之外的剩余全轮廓数据中选择一个较长的全轮廓数据。
全文摘要
本发明提供一种用于形成字符或符号的字形的方法,包括输入位于规定字符或符号一划的笔划轮廓上的多个坐标数据,准备包括多个输入坐标数据的笔划数据,所述笔划数据具有一个作为用于规定所述笔划开始点的坐标数据,或作为用于规定所述笔划结束点的坐标数据的输入坐标数据,并形成包括一个或多个笔划数据的字符或符号的字形。
文档编号G06T11/20GK1140862SQ9610404
公开日1997年1月22日 申请日期1996年1月27日 优先权日1995年1月27日
发明者郭清莲, 大场公幸, 菅原靖文, 向井忠彦 申请人:索尼公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1