本发明是交互式字根模式生成、编辑和合成控制设备。目的是在一个数据显示终端上利用交互方式生成和编辑字根,其中包括如图形信息之类的标识符号;或通过合成多个字根来修正字根。 根据办公室自动化的发展,最近盛行的一个有效方法是在电子计算机系统中生成和编辑日文和英文文件,排好格式后输出到打印机和一个与计算机相连的输出设备中。在计算机上生成和编辑文件的好处是,通过大量的存贮功能,实际上实现了对文件的装入和再利用,同时由于高质量的输出装置也提高了格式输出质量。
关于日文文件处理(包括非汉字的字母数字字符),格式输出或屏幕显示的字符大小从16个打点的方阵(4点)到256个打点的方阵(64点)或更大。据此,对字符的要求应是这样大小的范围,此外,对各种字体的要求如明朝体字(Mincho-Style),黑体字(gothic Style)等也将是必需的。
通过对印在印刷纸上的字符模式进行光扫描,这些不同字体的字根在阅读器(如鼓形扫描器)上生成一个“0”,“1”点串。由于印刷纸不正确的放置造成的字符倾斜,纸面的污迹,操作阅读器不正确等,在生成字根模式地同时往往产生不希望的点串(也可称为噪音)。因此需要手工的重复操作或噪音消除。对于手工操作,“0”,“1”点串必须通过再次光扫描印刷的字符模式来获得,这是通过手工的重复来保证的,有时对一个字符的操作可能化去几个小时,效率实在太差了。
要解决上面谈的问题,到目前为止最主要的,也就是本发明的主要目的是:提供一个交互式字根模式生成、编辑和合成控制设备,使用者能够通过人机对话的过程,在一个点串显示终端上,直观地生成、编辑和合成字形模式。
为了方便直观地,通过交互式处理过程生成,编辑和合成字形模式,在本发明提供的交互式字根模式生成、编辑和合成控制设备中设有一个机构,这个机构使以较少的点数,缩尺绘制字形模式以便在屏幕上显示,为了对模式的点位进行详细描绘,放大绘制原字形模式的点位,以便根据终端的显示进行增加或删除;设备设有的另一个机构是用于缩小超过显示区的字形模式,以便在屏幕上显示,为了对模式的点位的描绘,缩尺绘制原字形模式的点位,以便根据终端的显示进行增加或删除,从而提高了终端使用者的操作效率。
本发明的交互式字根模式生成、编辑和合成控制设备包括:在鼓形扫描器或类似部件上把印刷字形转换为“0”,“1”点串,将装在字形模式文件(字根字典)里的字形的点串数据扩展到一个存贮器中,在显示终端上把它显示出来,根据终端使用者给出的命令进行噪音消除,自动对中、平移、旋转,将显示屏上给出的字形模式缩尺或放大,并可用原来展开在存贮器里的字形模式作为输入,通过合成多个字形模式生成修正字形模式,把它装到 贮器中作为现行的字形模式,并把这个现行的字形模式显示在终端显示屏上。终端使用者直观地确认了终端显示的现行字形模式,当认为编辑结束或要再显示原有字形模式时,可通过专门的命令把原字形模式显示出来,当必须对现行字形模式进行连续编辑时,设备将执行编辑和“加”的命令。
当按着终端使用者的愿望获得了字形模式时,设备即执行把光屏上显示的字形模式装入到字形字典文件中的命令,按照这个命令,字形模式的点串数据将被装到字形字典文件之中。当字形模式的点串数据被装到字形字典文件中时,既作为修正的字形模式被编目分类。即是说它还能把修正字符码加到字形模式上,并且作为一个字根记录,装入到字形字典文件中。
图1是一个解释图,表示字根数据生成过程和本发明的交互式字根模式生成、编辑和合成控制设备之间的关系;图2是一个解释图,以图解的方式表示本字明设备的配置和周围设施;图3是一个解释图,表示由本发明的交互式字根模式生成、编辑和合成控制设备实现字根模式的生成、编辑和合成的一个例子;图4是一个解释图,它详细地表述了图3所示的本发明的处理程序组和用于装载控制表字形模式的层组之间的关系;图5是一个解释图,表示装在字形字典文件里的字形记录格式;图6是一个解释图,表示当一般的图形数据按点扩展时的一个问题;图7是一个解释图,代表一个一般图形数据的缩尺绘图系统,这里的一般图形数据包括本发明设备使用的字形模式,它也代表了坐标位置的寻址方法;图8是一个解释图,代表通过合成字形模式生成修正的字形模式的构思。
现在,通过参考附图详细描述本发明的一个较佳的实施方案。
图1是一个用于描绘分别通过常规系统和本发明的系统生成字根过程的一个构思图。
一个字根的生成一般如下,首先把编目在字形字典文件504中的字打印在印刷纸511上。接着把印在印刷纸511上的字读到扫描装置512或鼓形扫描器513中。这里,扫描器装置512和鼓形扫描器513在工作中具有一种功能,就是以印刷纸511为输入生成图象灰度数据。当在印刷纸511上扫描摄取字符时,扫描装置512就像传真设备一样工作。
把通过扫描器装置512或鼓形扫描器513生成的图象灰度数据装入图象灰度数据文件516中。在图象灰度数据文件中的图象灰度数据具有一个用多个比特表示的象素,这个象素的灰度由其上面的值来表示。举例来说,如果用8比特代表一个象素,那么它含有256个层次的灰度信息。如果在印刷纸511上,印刷的字符数目大约是192,而纸的大小是B4,字符是1厘米见方大小,那么把一张印刷纸的图象数据装入到图象灰度数据文件516中,大约需要一小时。大约三十分钟用于安装印刷纸511,另三十分钟用于扫描器装置512的工作和装入图象灰度数据文件516。当扫描器512垂直地工作在每毫米十个光栅时,需要的时间是相当长的,如果要提高分辨率,还要增加操作时间。
接着,以图象灰度数据文件516作为输入,字模式抽数517根据对应的印在印刷纸511上的192个字符的图象灰度信息,把它转换为二进制的“0”,“1”信息串(点串),因而就生成了对应于单个字符的点串数据。把生成的对应于字符的点串数据装入到点串文件518中。一般来说,字形模式抽数517是在电子计算机上进行的,包括运行的等待时间在内,每张印刷纸大约需要两小时。
在通常生成字根模式的过程中,要进行人工检查519的操作。检查操作519通过下述检查来保证字根点模式的正常生成。
(1)把字根模式印在光栅型的点打印机上,或者
(2)通过激光束打印机输出点数据。人工执行的检查操作519是为检查字的倾斜、噪音、字形模式抽数等等。
在字的大小上,检查操作519涉及一个很大的范围,从4点(16打点方阵或大约1.4毫米见方)到64点(256打点方阵或大约225毫米见方),所以目测操作会有许多麻烦。熟练的检查操作一般每个字要化十分钟,如果检查操作519的结果是不好,那么过程又必须从要装印刷纸511开始,为此必须化去大约三个小时。
另一方面,如果519检查操作认为字根点串数据是正常的,接着将执行字形字典编目过程,以点串文件518为输入,字形字典编目处理520,把对应于字根的字符码编目到字形字典文件504中,成为一个增加的字根记录。
上述就是惯用的生成字根的过程,为了生成字根,需要相当多的时间和劳动。在这种情况下,本发明的交互式字根模式生成、编辑和合成控制设备产生了,它以字形字典文件图1的504作为显示终端502和交互式字根模式生成、编辑和合成控制530的输入,它能够生成、编辑和合成字根模式。如带有阴影线的箭头所示,点串文件518的点串,在不执行检查操作519的情况下,通过字形字典编目处理520,被一次编目到字形字典文件504中,保证、编辑、加入和合成字根模式的过程,将通过显示终端502来执行。于是上述的重复操作可以避免了。
现在,以图2到图8为参考详细地描述一下本发明的交互式字根模式生成、编辑和合成控制设备的构成和操作方法。
图2表示交互式字根模式生成、编辑和合成控制设备的构成。控制设备包括一个具有主存贮器和算术运算功能的中央处理单元531,用于装载字根模式的字形字典文件504和显示终端502。
图1的交互式字根模式生成、编辑和合成控制530在中央处理单元531中进行。
显示终端502包括一个显示屏幕532和键盘533,键盘533具有字母数字字符和假名键部分534,功能键(PF)组535和光标位置控制键536。图2表示通过信号电缆537把中央处理单元531和显示终端502连到一起的一个例子,然而,中央处理单元531和显示终端502也能在结构上合成一体。
中央处理单元531中的交互式字根模式生成、编辑和合成控制530包括一个终端输入/输出控制部分539,对应于来自键盘的各种命令的处理程序组538和留驻在主存贮器扩展部分的控制表541。
字形模式的编辑操作者输入一个字符码和一个字根显示命令,这个显示命令是对应于将要通过结合终端显示器502的键盘533的字母数字字符键534进行保证和编辑的字根的。终端输入/输出控制部分539解释输入的字符码和命令,从处理程序组538中选择相应的处理程序。并且对相应的处理程序给出一个控制。处理程序根据光标位置控制键的输入等来执行一个加工。
相应的处理程序把对应于字码的字形模式从字形字典文件504中读出,将其扩展到字形层组540的任意一个字形层中,并且把点模式显示在显示终端502的显示屏上。这时,控制信息,如现时处理的字码,字形层地址等已装在控制表541中了。
终端使用者以目测方式检查显示在屏幕532上的字形模式,如果需要编辑、增加或删除,则通过功能键535或字母数字字符键534发布一个必要的命令。接着,终端输入/输出控制部分539解释这个命令,从处理程序组538中选出对应的处理程序,对相应的处理程序给出一个控制。然后,对应的处理程序通过控制表541从字形层组540中选出一个字形层进行处理,对上面选出的字形层应用平移,自动对中,噪音删除等操作,并把结果显示在显示屏532上。
当直观地确认了编辑的结果以后,便获得了一个希望的字根模式,终端使用者发出一个把字根模式再装入到字形字典文件504中去的命令。根据这个命令,相应的处理程序开始工作,字形层中的字根模式被装入到字形字典文件504中。
上面的描述是交互式字根模式生成、编辑和合成控制设备的一个工作例子。由此而节省了惯用的字形生成过程所需的大量时间和劳动。
下面描述的是:处理程序组538,终端输入/输出控制部分539,控制表541和字形层组540的详细结构和工作实例。
图3表示通过本发明的交互式字根模式生成、编辑和合成控制设备进行编辑和合成字根模式的实例。参考数字800表示在图一所示的字形字典编目处理520后,把字形字典文件504中的字形模式“神”直接显示在显示屏532上的状态。在显示状态800中,542表示当把印刷字读到鼓形扫描器513上时产生的噪音。终端使用者将首先在显示状态800,删除噪音542。这命令由功能键535给出,将使用表1中的项目1和2的功能键。
表 1项目号功能键功能描述1PF1点、线和面的删除删除光标规定的点、线、面。2PF2框架之外的删除删除在光标规定的框架之外的点。3PF3自动对中自动地将字根模式对中。4PF4平移竖直和水平地平移规定的点数。5PF5点、线、面的增加把点数据加到光标规定的点、线、面。6PF6字根模式展开显示字根模式被展开显示。7PF7放大的字根模式显示把字根模式放大后显示。8PF8字根模式的合成把其它字根合成到修正的字根上。9PF9装入字根文件把显示的字形模式装入字根文件。10PF10字根编目把字码加入,产生一个字根记录,把字装入到字根文件中。11PF11字根恢复返回到一个先前的工作状态,显示。12PF12原字根模式的显示从字根文件中再读出,显示。13PF13通过比例缩放,以修正点数生成字根生成点数(打点和尺寸)不同的字根。14PF14字根的旋转逆时针旋转一个规定角度
当运用功能键PF1时,对应的处理程序被启动,删除光标规定的点、线和面。这是通过在光标规定的字形层的坐标写“0”来实现的。当运用功能键PF2时,对应的处理程序538也被启动,光标规定的框架范围之外的点被删除。这也是通过在字形层光标规定的范围之外的坐标写“0”来实现的。参考数801,表示噪音542删除后的状态显示。此时,由于印刷纸511的错位引起字根“神”向上错位,因此,终端使用者将用表1的3号功能键,执行自动对中命令。对应的处理程序被命令启动,字形模式“神”被移到框架中心,如显示状态802所示。然后,终端使用者把字根模式装入到字形字典文件504中。命令是通过表1的9号功能键完成的。
接下去,将描述一个生成修正字根的实例。显示状态803是字根模式“神”被水平移位的一个例子。
根据表1的4号功能键PF4的命令,对应的处理程序被启动,水平移位是通过按键打入一个程序要求输入的子参量来实现的。
在显示状态804,显示状态802的字根模式被放大了88%,字根模式的放大是通过表1的7号功能键来实现的。模式放大在以往描述的技术中也能实现,例如,在“Automatic Scaling Of Print Fonts”,IBM R and D R、G、Casey,Nov.1982。
进一步,显示状态805表示通过合成显示状态804的字根模式和显示状态810的字形模式“◎”生成一个特殊的字根的例子。这是通过表1的8号功能键PF8获得的。
显示状态806,是缩尺和放大的结合,它是通过功能键PF13实现的。显示状态807是把字根模式“神”反时针旋转30度,它是通过功能键PF14来实现的。通过使用功能键PF5,可将一个点数据加到由光标规定的点、线和面上。展开字根模式是通过功能键PF6实现的。加入字符码,获得一个装入到字根文件的字根记录,是通过功能键PF10来实现的。返回到一个原来的工作状态并显示是通过功能键PF11来实现的。从字根文件重新读出并显示,通过功能键PF12。功能键PF1到PF14的工作以后将详细描述。如上所述,新的字符码在显示状态803到807的分别处理,能够避免重新由印刷纸511开始生成字根点串的必要性,而生成修正的字根模式。此外点数不同的字根模式也容易产生。
图4详细地表示了处理程序组538,控制表(CTL)541,字形层组540等在图2所示的字根模式生成、编辑和合成设备中的相互关系。在图5中,参考数目200表示图2里的中央处理单元531中的一个主存贮器。因此,上面谈的处理程序组538,控制表541,字形层组540等是放在主存贮器200之中。
来自显示终端502的功能键组535的命令信息,通过数据线201被送到终端命令解释控制202。在终端命令解释控制202中,字符码、字根尺寸,命令分类等诸如此类的命令信息被解释,通过数据线203把信息装到参量表(PARM)204中,然后把控制加到字根存贮和恢复操作205。根据参量表(PARM)204,字根存贮和恢复操作205识别了字根恢复操作命令,准备从字形字典文件504中读出字符码的字形模式。即把一个固定的层号放入控制表206的层号207中,同时把控制加到字根数据输入/输出操作208。
字根数据输入/输出操作208,从字形字典文件504中读出一个对应于字符码的字形模式记录,把这个字形模式的点数据装到字形层210中。在图4中,假设控制表(PRCTB)206的层数(ENTID)207的数目是1,对应的字形层210的信息将出现在层控制表(LAYERTB)209的第一个表目中。在层控制表(LAYERTB)209的每个表目中,有层地址LnBUFAD211和LnATTR212。这里“n”代表表目号,且等于层数(ENTID)207的值。因此,如果表目号是1,“n”变为1,于是LnBUFAD,LnATTR分别为L1BUFAD,L1ATTR。L1BUFAD保存一个层地址并且指到图5例中的字形层210。
L1ATTR212装有字体类型、点数、打点数,字根模式的数据长度及其它如字码的特征值等。就是说,在字根字典文件504中的字形模式记录具有图5表示的格式,图5所示的键信息213,打点数214和数据长度215被装在L1ATTR212中。键信息213由字体类型216,标识符特征217,点数218,汉字码219等组成。这里,字体类型216是用来标志是明朝体(Mincho-Sty-le)字或黑体字,而标识符特征217用来标志字根数据220是字符还是图形。图5中字形模式记录格式的数值指出了所需的字节数。于是装在参量表(PARM)204中的字符码被设置了一个由终端使用者规定的值。
在字根模式记录中的字根数据的点数据220复盖了从点b到点c这样一个范围。在光栅单元中的装入格式如图5中参考数221表示的一样。在水平为m点,垂直为n点的字形模式情况下,每个点对应于一个比特,满足m比特的字节数是由光栅单元来保证的。这里,1个字节为8比特。
因此,在图4的字形层210中,只能展开一个m×n比特的字形模式。这时,装载字形模式所必需的字节数是存入图5的数据长度215之中了。
再次参考图4,在字形模式的点数据展开在字形层210里的同时,字形层210被复制到现行层222上。原因是,对字形模式的编辑、加入和删除操作都是对现行层222进行的。复制工作是通过数据线223实现的,控制是由终端命令解释控制202给出的。
这里,展开在现行层222中的字形模式点数据被显示到屏幕532上,然而,如果被显示在屏幕532上是8点的(32打点×32打点)的字形模式,那么,被显示的字形模式太小,终端使用者不能看出何处需要编辑。
因而,现在终端使用者很难进行目测检查,但当一个命令给出了这样的结果时,终端命令解释控制将根据显示屏幕532的显示区和字形模式的大小计算出一个比例尺值,并把这个值装入到控制表(PRCTB)206中的缩尺/放大值(MGTD)224里。于是控制转到扩展,缩小和旋转操作225。当然,如果字形模式大于532显示屏幕区,缩小的操作将被运用。
以缩尺/放大值(MGTD)224的值为标准,对现行层222运用扩展,缩小操作,并把其结果装入显示缓存器226中。于是显示操作227将把显示缓存器226的内容显示到显示终端502的显示屏幕532上。这时,终端的使用者就随时可以像图3的例子那样对被显示的字形模式进行编辑、删除、加入和合成。
下面,以图6和图7为参考,我们将描述对现行层222的点模式的扩展显示操作和点位变换方法。
图6是代表当字根字母“A”被扩展成点串时的一种情况。在图6中,1表示一个数据平面,把它称为S平面。这时S平面1对应于图5的现行层222。参考数2表示一个扩展后的平面,叫做D平面。D平面2对应于图4的显示缓存器226。3表示焦点,4表示在S平面1上的一个点位置数据,而5表示在D平面2上的一个点位置数据。还有,S平面1和D平面2的坐标原点在中心,它们可以分别表示为x-y轴和x′-y′轴。
对于扩展操作,设立焦点3,在S平面1上,每个点位置值本身的坐标值定为“1”,以点位置数据4为例,把它投射到点位置数据5,一般可以表示如下。
这里Sx是X轴的比例值,Sy是Y轴的比例值,X、Y是S平面1内的坐标值,X′,y′是D平面2内的坐标值。
表达式(1)表示从焦点3投射和扩展的模拟数据的扩展过程。相应地,当把表达式(1)应用到S平面1上的每个点位置坐标时,对于数字数据,表达式(1)也是适用的,点值的坐标值“1”也被反映到D平面2上的坐标值中。而如图6所示,如果S平面1的8×8点阵扩展到D平面2的16×16点阵,那么,点位置数据4以一点被投射到点位置数据5,在D平面2上的字母A含有的点是相互隔开的。这是由于在S平面1和D平面2之间,对于每个点位置坐标一对一地变换造成的。
因此在扩展,缩小和旋转操作225中,对应于D平面2坐标值的S平面1的坐标值被计出来了,如果在S平面1上的点位置为“1”,那么D平面2的相应坐标值上的点值应取“1”。于是图6所示的间隔开的显示被避免了。在图7所示的D平面2上,我们获得了一个扩展的点模式。这个操作叫坐标值的逆变换。在图7中,参考号数1到5在意义上与图6相同,参考数6到8代表带有值“1”的点位数据,它们每一个都是D平面2的坐标值,因为在S平面1上的点位数据值是“1”,而在D平面2上的坐标值是受逆变换规律支配的。
从D平面2到S平面1,坐标值的逆变换与表达式(1)相反。
如果在表达式(1)和(2)中的S和S值都小于1,那么对图形数据进行的是缩小操作。
对于字根模式位置计算操作229,它将计算出带有一个旋转角的坐标位置,在表达式(1)中旋转角为0。具体来说,如果终端使用者规定了图7的点位置数据5到8的任何一个,那么在S平面1的点位置4就确定。即是说,在图4显示缓存器226中的坐标地址改变成现行层222的坐标地址,于是就可以对图3所示的字形模式进行编辑,增加和删除。
现将把功能键和它的处理内容描述如下:
a)功能键PF1,2和5
用于图4所示的平面显示,删除和加入操作,如果终端使用者通过光标位置控制键536规定了一个矩形区域,同时规定了平面删除、增加等操作命令,那么对应于命令的点模式增加和删除操作将对现行层222进行。
b)功能键PF3
当功能键PF3输入时,自动对中操作231计算出字形模式的中心位置,然后,对现行层222的字形模式进行中心平移。
C)功能键PF4
对于平移逆变换,如果Dx是X轴方向的一个位移,Dy是y轴方向的一个位移,那么,将有下面表示式(3),(4)
X=X′-Dx……(3)
y=y′-Dy……(4)
字根在现行层222中的平移是通过功能键PF4输入规定的Dx和Dy完成的。这个处理是通过平移操作232实现的。
d)功能键PF6,7
在表示式(1)中,当Sx,Sy保持大于1时,将会获得扩展操作。而当Sx和Sy保持小于1时,将会获得缩小操作。
在功能键PF6,7输入后,通过输入Sx和Sy,扩展、缩小和旋转操作225将在现行层222中进行处理工作。
e)功能键PF8
下面将描述字根模式的合成操作,这个操作是通过功能键PF8启动,通过图4的字根合成操作234来实现的。字根模式的合成就是通过像图8那样把字形层210、235等多个重叠到一起,从而生成一个修正的字根。终端用户可以自己制作命令,如
CMP Ln Lm ……
△ △ △
“CMP”这里是合成命令的意思,而Ln,Lm等是层(ENTID)号207。字根合成操作234查询控制表(LAYERTB)209,找出由Ln,Lm规定的表目号,于是获得一个对应字形层的地址。接着,这些字形层将被依次复制到现行层222上。以图8为参考,我们将讨论它的操作概要。
在图8中,假如字形层210有字形模式“”,同时字形层235有一个字形模式“山”。我们将要描述产生字根模式“仙”的操作。首先把字形层210移到现行层222上。其次,在现行层222内把它向左平移。该命令可以根据表1所示的4号功能由终端使用者发出。平移结束后,现行层222上的字形模式返回到字形层210。接着,把字形层235移到现行层222上。如果必要,把它向右平移。然后,把现行层222上的字形模式送回到字形层235中。到此,字根模式合成的准备完成了。
下一步把字形层210和235的字形模式点数据移到现行层222上。
上面描述的字形模式合成的例子,是两个字形模式合成的情况,然而,三个以上的字根重叠也是可能的。
f)功能键PF9,10
把一个工作结果显示在显示终端502的屏幕532上。终端使用者将直观地检查显示在屏幕532上的字根模式。如果这个字形模式与终端使用者的要求一致,那么,就把字符码,点数等给予字形模式,该字形模式被编目到字形字典文件504中。
此时,如果没有任何对字符码的修正要做,显示中的字形模式将被以留下的字符码编目到字形字典文件中,如功能键PF9规定的那样。
g)功能键PF11
字根的扩展、缩小、合成、平移等都是在现行层222中操作的,然而,根据终端使用者的命令,执行操作之前,现行层222的点位置数据已被存到了存贮器232中。因此,当终端使用者根据表1使用功能键PF11时,在缓存器233之间进行着存贮和恢复操作,同时,在存贮层232中的字形模式的点数据返回到现行层222中。
于是,可以返回到一个先前命令工作的状态。
h)功能键PF12
当为了功能键PF11的工作,而把表1的12号功能键选定时,一个字根记录将从字形字典文件504中重新读出。
i)功能键PF13
当一个旋转操作包含在缩小和扩展操作中时,下面的(5),(6)表示式将成立。
表示式(5)是用于当Sx,Sy是在原来的图形之后被扩大时,或要对S平面1的图形数据逆时针旋转一个角时,来获得平面2上的坐标。而表示式(6)是表示式(5)的一个逆变换。
根据表达式(5)或(6),通过输入功能键PF13,规定Sx和Sy大于或小于1,给出旋转角,扩展、缩小和旋转操作225就被准备好了,这时这个修正了点数的字根被生成在现行层222上。
j)功能键PF14
根据下面的表示式执行在现行层222上字根的旋转操作228。
操作了功能键PF14,相应地规定了角,从而使启动了旋转操作228来旋转字根。
从上面的描述来看,很明显,按照此项发明,如果一个字根模式一旦生成并装入到字形字典文件中,终端使用者可以通过人机对话和直观操作,按照自己的愿望来编辑字形模式;或者通过合成多种字形模式生成一个修正的字根模式,在这里,不需要重复根据印刷字生成点串数据的过程,所以显著地节省了编辑字根的时间。