专利名称:文本处理器的制作方法
技术领域:
本发明涉及计算机辅助文本呈现(presentation)。具体地说,本发明涉及用内容特定属性来提高阅读经验(reading experience)的增强文本呈现。
背景技术:
阅读的目的在于对阅读者的思想产生影响。这种情况在所阅读的文本是否包括小说还是精彩的(heads-up)飞船显示时尤为突出。在非文本媒体中呈现的材料还传递除了相应的一维文本之外的十分适于人吸取的信息。图片呈现对象(object)属性,诸如,颜色、相关尺寸、相关位置、图案、分组(grouping)和层次结构(hierarchy)。在文本中观看对象。例如,与其他对象一起放置在角落中的小对象的图片与在中心位置上的本身放大的相同对象传递不同的信息。开始的句子和段落添加只通过它们的位置添加上下文信息。运动图片具有运动和时间改变作为附加属性。许多信息通过视觉和通过模式识别进入大脑。其他信息作为音频信息进入,通过音调(改变音调和改变音量)传递信息。
用于人们阅读的文本的计算机呈现未能大量利用人脑。结果,只用导一部分或可能的带宽,而且通常认为计算机文本呈现是不友好的、不变的、机械的和一般缺乏一些东西。当给出选择,大多数人偏好阅读打印出来的书本,而不是在计算机屏幕上的书本。当前计算机文本呈现相对于书本而言是较贫瘠的,而且相对于它的潜能发展更加贫瘠。
在计算机化的文本呈现中已做了一些工作。Huanng(美国专利号4,880,385)揭示了光机械(opto-mechanical)速度阅读装置,它允许通过视窗观看打印在纸上的文本,一次看一行,且该视窗会自动换行。
已对将自然语言计算机化语法分析成语音部分(parts of speech)的方法做出改进。Schabes等人(美国专利号5,475,588)揭示了产生语法分析树的改进语法分析系统。小Black等人(美国专利号5,331,556)揭示了将语音部分信息与原始文本一起存储在一个文本中来提高文本的后来搜索。Okamoto等人(美国专利号4,661,924)和Church(美国专利号5,146,405)揭示了澄清多个语音部分的方法。Zamora等人(美国专利号4,887,212),van Vliembergen(美国专利号5,068,789)、Hemphill等人(美国专利号5,083,268)揭示了分析自然语言文本的方法。这里引用所有上述专利作为参考资料。
阅读是个复杂的过程,而且存在多个因素,它们决定了在阅读者之间甚至是在不同场合下相同阅读者之间的阅读性能之间的差别。这些包括天生的神经生理条件,诸如朗读困难,以及年龄;行为和动机因素;教育水平以及以前阅读实践;和知觉限制。阅读者还可有不同的阅读对象,它们将影响他/她如何理解阅读材料。除了上述问题,计算机呈现的文本(最坏的,像一维的“一串珠子”,最好的,类似于由书本呈现的两维文本)。实际上,文本是打印呈现还是电子显示意义不大,因为文本呈现实际上是相同的。
文本的不变呈现的例子有很多。与段落中的其他句子相同地呈现主体句。与非技术字完全相同地呈现技术字。所呈现的形容词与名词相同。与简单的术语相同地呈现教育上困难的术语。与第一段相同地呈现章节中的最后一段。文本以左对齐方式呈现,以恒定宽度分行要求人眼以规则的间隔从远端右边快速移动到远端左边。采用古老的排版规则,文本要在句子中间、短语中间段落和思维(mid-thought)中间断开。这种文本驱使眼睛来回移动较大的距离、宛如打字机的托架。手工推进文本,将它分成块,由屏幕上可显示多少行来确定块的大小。
不在书本的每页上只放置一个增强句有几个充足的理由。可能已将这些理由不适当地用到计算机的文本显示上。那些计算机权威们忽略了通过利用数字操纵的力量来改变文本呈现以提高阅读者的阅读文本能力的可能性。
理想的是一种相对于文本位于其中的文本层次结构,显示文本位置的一种方法。在显示相对页上的文本的方法同样是理想的,其中该方法允许在无需等待页变化就能阅读文本。在观看对象时,利用人的自然能力和喜好来向前移动的文本显示系统是十分有用的。运用定量的颜色变化来清晰地表示较大句子段和其中的字之间的累积关系的方法是十分理想的。
为了保留在作者所写文本中的所有信息,文本呈现(按照定义)必须系统地表达作者以清楚的结构所写的字的序列。理想的是,应将在增强的文本呈现中要描述的用来改进阅读的附加信息加入到文本呈现本身的必要处理过程中,(即,将与背景形成对照的字符放置在空间和时间的不同位置上),而不是引入需要阅读者附加学习、阅读和理解的附加符号。
发明概述本发明的目的在于,一种用来提高人们阅读的文本呈现的文本增强方法和装置。本发明包括从机械可读文本中提取文本特定属性、根据属性改变文本呈现和产生三维(时间和阅读界面)视觉产品来增强阅读经验。本发明的较佳实施例从输入的句子中提取属性(诸如,语音部分),并往下并跨屏显示在级联文本段中的句子。采用利用语音部分、标点符号和阅读者的喜好的规则来确定分段和水平位移。根据语音部分和句子在段落中的位置以及段落在章节中的位置来改变文本和背景的颜色。
本发明附加了有意义的视觉属性来在当前系统的不变和机械文本显示的基础上增强计算机显示的文本的呈现。根据新的短语内容以及它与前一短语的关系产生有意义的视觉提示。在阅读该文本之间可获得该提示,给出该文本的上下文。句子语法分析处理用句子的标点符号和内容来产生包括不同的短语的有意义的视觉提示系统,它提高了对短语中的字的更快速识别以及它们的含义。根据文本内容和阅读者的喜好,增强句子以有意义的短语形式从页面往下级联,眼睛在短语之间移动短距离。
句子表达了完整的思维,而且段落表示离散的主体或论题。当一个句子一次呈现时,并当通过视觉对从一个段落到另一个段落的过渡发出可视信号并包括出现文本的这些元素的停顿时,提高阅读理解。本发明产生适当的视觉属性来提供这些视觉信号。视觉属性可包括文本分段、一行相对于另一行的水平位移、文本和背景颜色、文本亮度和动画。动画可包括闪光和渐亮(swiping)、与时间相关、临时、逐步加亮文本元素以及文本从标准移到级联呈现。
在示例阅读期间(session),阅读者选择要阅读的文本,并通知阅读系统文本的类型,例如,小说。阅读系统在为阅读者存储所选的文本类型之前检索适当的环境。阅读者有机会编辑阅读规则和字设置,但是这已不太重要(declines)。在一章的开始部分开始(此处阅读者从左边开始(left off)),呈现文本,一次呈现一行,往下并跨屏。当将显示的行分成有意义的文本段,而不是任意地以80个字符结束时,一次阅读和理解整段是可能的,同时眼睛在文本段的中心之间移动,往下并跨屏移动。句子背景颜色是在段落中的句子位置与在章节中的段落位置的函数。在段落中的每句可能具有相同的色度,但是递增,在句子之间的颜色饱和或暗色(darkness)有着可分辨的变化,而且递增,以及在段落之间的色度有着可分辨变化。于是,背景颜色提供非文字位置信息,对一段的开始和结束以及一个章节的开始和结束发出信号。
根据阅读者认可的规则对句子分段。每个介词以可预测方法把短语折转(fold)起来,导致两个文本段,每一段以新的一行开始。上一段的内容影响着下一段的水平偏移量。只要可能,相同的介词以相同的方法折转并水平偏移文本。结果,相同的介词导致类似的模式,由于阅读者熟悉所以长。语音部分根据阅读者认可的规则影响文本颜色。结果,向阅读者提供视觉的非文字提示,即使是在识别文本字之前,根据模式和颜色识别,立即能识别句子结构和语音部分。
句子运用前面阅读者选择的规则以一速度前进。公式是文本类型、字数、教育程度和出现在行中的音节数的函数。前进速度比阅读者感觉舒适的速度略快,从而增强理解。在句子呈现之间的较长停顿是在新的一段出现之前发出的新一段的信号。阅读者可容易地与阅读系统交互,使不同的句子在屏幕上的时间更长并对呈现的文本快速向上或缓慢向下。
上述示例阅读期间是示例,而不是限制或穷举在本发明的范围内的可能的实施例。
增强处理利用了文本元素具有非文字品质,可用来在时间和空间上产生更加有意义的文本呈现成品并将阅读者理解文本的字面意义的能力提高到高于以现有的计算机或纸张格式的程度。短语往下并跨屏级联产生如果从实际阅读聆听可能如何经历文本的视觉必然结果,而阅读者不必将它读出声来(subvocalize)。阅读这种增强的文本如同用眼睛来听,但是所经历的整个视觉信息分组几乎是同步的。
本发明的另一个方面包括大声阅读文本的阅读者一执行者(reader-performer)的记录动作并可包括说话、手动、眼睛动、头动和嘴动的记录。最好记录动作并将它们映射到文本中的相应字。文本显示可根据记录动作来变化。文本显示属性可包括文本偏移、字体高度、字体厚度、字符间的间隔、字间的间隔和行间的间隔。
本发明的另一个方面,通过改变平面或窗口平铺(tiling),相对于文本位于其中的文本单元层次结构,显示文本。根据文本单元在层次结构中的等级的函数,平铺表示各层次的窗口或平面。一个实施例水平和垂直交替地平铺对于文本单元层次结构的窗口设置。
本发明的另一个方面是在相对页上显示文本,从而可跨到相对页阅读文本,而不必等待分页。一个方法是当阅读相对页(opposed page)时替换每个相对页的文本内容,而不用等待阅读两个相对页。
本发明的又一个方面是从下往上正确地显示具有原始文本序列的文本,从而从下往上阅读文本似乎从前至后阅读文本。一个实施例平滑地向前滚动文本,从而阅读者似乎在阅读文本时一直往前翻阅文本。
本发明的再一个方面是计算字与将它们分开的较大文本段之间的关系。一个实施例以句子开始,并根据段和子段之间的关系重复将句子细分成段。将段与子段之间的关系用来计算颜色值。分段算法中的产生或分层或递归还用来确定颜色值。用计算获得的颜色值来显示颜色或每个字或短语。
图1是用于本发明的一个实施例的方法的高级(high-level)流程图;图2是示出在一句中的元素的各属性表;图3示出包括级联和右降角(cascade and right descent angle)的增强文本的例子;图4呈现图3的句子作为包括级联和左右降角的增强文本;图5详细示出步骤110;图6示出建立次级折转点(secondary folding point)的层次结构的字组;图7示出折转点在句子中的位置;图8详细示出步骤136;图9示出作为增强文本呈现的图7的句子;图10示出呈现间隔采样历史映射(Presentation Interval SampleHistorty Map),其中阅读所需时间是句子难度和复杂度的函数;和图11示出重音节的视觉发音的图7的句子;图12是用来计算水平偏移的小道(lane)和空隙的图表;图13示出适于文本弯曲的曲线;
图14示出作为段头和段尾文本属性的函数,将文本段设置在图13的曲线上的规则;图15示出文本弯曲算法的中间结果;图16示出根据图14和15在曲线上形成的几个弯曲文本段;图17示出计算机显示器,其中在打开之前在计算机显示器上已有书本;图18示出图17的书本的计算机显示器,其中在打开之后该计算机显示器显示书本中包含的章节;图19示出显示图18的章节的计算机显示器,其中在选择章节之后,该计算机显示器显示章节中所包含的页;图19A示出显示图18的章节的另一个实施例计算机显示器,其中在选择章节之后,该计算机显示器示出章节中所包含的页;图20示出显示图19的页的计算机显示器,其中在选择页之后,该计算机显示器显示页中所包含的段;图21示出具有图20的段落的计算机显示器,其中在选择句子之后,该显示器显示在段落中的句子;图22示出在图21中所选的页面上的级联句子;图23示出跨过多个显示页面显示文本的方法;图24示出跨过多个显示页面显示文本的另一种方法;图25示出能够从前至后、从下至上并能够移动向前阅读的显示文本的方法;图26示出在文本前移之后图25的文本;和图27是细划分的用于颜色分配和散文打印的句子的树形图。
较佳实施例的详细描述图1示出本发明的实施例中用到的方法的高级流程图。图1和所有附图中的步骤当然可分成附加步骤或者并入少量步骤,而且仍然描述相同的实施例。
在步骤102中,启动阅读装置,而且通过阅读者的标识(ID)和要阅读的文本文件标识。在较佳实施例中,从操作系统获得阅读者ID。在另一个实施例中,提示阅读者输入标识。在一个实施例中,假定该装置只有一个阅读者。给出阅读者ID,在步骤104中检索阅读者特定参数。下面详细描述参数。给出文本ID,在步骤104中检索文本文件和文本特定参数。在较佳实施例中,参数有默认值,而且不需要阅读者输入。在最佳实施例中,允许阅读者输入较佳的特定参数,接受值并存储参数值(在步骤108中)。在一个实施例中,允许用户下拉包括对话框、视窗默认参数(view default parameter)的菜单,运用包括数值输入、文本输入、滚动条和按钮的标准用户界面修正它们。在较佳实施例中,给出适当的访问允许,还允许对文本的所有阅读者进行全局参数的修正。允许阅读者只为当前文本、所有与当前文本相同类型的文本或者该阅读者阅读的所有文本,设定参数。
阅读者特定参数包括视野范围;背景和文本的调色板;字组规则输入;最小短语长度;最大行长度;最小和最大文本段权值(weight);降角;水平偏移规则输入;水平对齐优先(preference);短语之间间隔长度;前进速率;句子间和段落间的间隔比例;标记定义;动画说明;导出依赖内容的呈现间隔的参数定义;导出短语/文本要素(matter)、权值、密度、复杂度和内容的参数和加权的定义;和识别特定事件描述脚本。
视野范围视野范围可具体规定以X和Y方向以及第三维(时间)观看文本的窗口的大小。该视野可包括整个平面或者平面的较小部分。时间维(time dimension)可包括依赖时间的动画(诸如,闪光)发生的时间。
调色板背景和文本的调色板允许具体规定较佳背景和文本颜色,它们随着文本的变化而变化。在较佳实施例中,背景颜色的色度和亮度随着句子在段落中的位置以及段落在章节中的位置而变化。在最佳实施例中,将段落中的第一句的亮度设为一级并将在段落中的最后一句的亮度设为第二级,以及每一句在从第一级到第二级的逐渐变化之间亮度。在较佳实施例中,将在章节中的第一段的背景色度设为第一值,并将章节中的最后一段设为第二值,同时每一段的色度从第一值逐渐变化到第二值,第一色度是绿色而第二色度是紫色。
在较佳实施例中,文本颜色可随着字的类和连续属性而变化。类属性是字适合的类的函数。在最佳实施例中,类包括语言的各部分,例如,动词和技术字。连续属性包括可测量的那些属性,诸如教育程度,(例如,第十二年级),音节数和字长度。在较佳实施例中,不同的语音部分具有不同的文本颜色。在最佳实施例中,文本颜色随着背景颜色而变化,从而提供最优的阅读者喜欢的对比。
字组可用来具体规定一些语音部分、例如,“I”是代名词、“had”是动词、"a"是冠词和“farm”可以是名词、动词或形容词。图2示出在单个句子中语音部分的一个例子。示出多个可行语音部分列150如同非含义的语音部分列152。
在较佳实施例中利用两种方法输入字组。第一种方法利用结构化文本格式(诸如,通用标记语言标准(SGML)),它允许输入和输出大字组和来自不同源的字典。于是,用标准SGML语法分析程序将字组存储在适当的数据库。第二种方法允许运用下拉菜单和对话框的层次结构交互编辑字组。在较佳实施例中,将阅读者具体规定的字组存储在来自字典或词汇表字组的分开的数据库中,从而允许分开存储、编辑和更快速检索。
最小文本段长度和最大行长度较佳实施例包括阅读者特定最小文本段长度。文本段是一段文本,它在显示器上以一行表示。最小文本段长度(用文字命名)是阅读者希望在分开的一行中看到的最小长度。最大行长度是阅读者希望一行中看到的最大长度。可以字符数、字数、音节数、教育程度或这些乘积的任一和。在一个实施例中,最小行长度是10个字符,和最大行长度是35个字符。
短语权值短语权值是短语(文本段或潜在文本段)的衍生属性,它给出对短语中一些材料的一些测量。在一个实施例中,短语权值只是在短语中的字数。在较佳实施例中,短语权值包括短语密度和短语复杂度。短语密度可包括技术字的数量或者超出某一水平的字数。短语复杂度可包括在短语中字之间的拼写相似性的数量、模糊字的数量和阅读者加权特定字的总权。
最小和最大文本段权信较佳实施例包括阅读者特定的最小和最大文本段权值。文本段权值是阅读者希望在分开行中看到的文本的量。在较佳实施例中,文本段权值是在文本段中短语权值的总和。
水平对齐规则水平对齐规则具体规定一行文本相对于上一行的水平对齐、对齐可包括定位的行或短语的对齐类型,即,右对齐、左对齐或中心对齐。对齐还可包括上一行的文本部分,根据它测量该对齐,即,整行文本对于或一个短语,所用到的该部分的该点位置,例如,最左、最右或中心。在定位的该行内简单地测量在一个实施例中的水平对齐,而不是相对于上一行测量。
在较佳实施例中,中心对齐在一行中的第一个短语,根据在上一行中的最后一个短语的中心测量。在另一个实施例中,将整行文本中心调节到上一文本行的中心之下。在又一个实施例中,将运用每个字的不同点计算出的文本段“重力中心”用作文本段中心用于对齐目的。
降角降角是对于每个新行的水平偏移量,修正只由水平对齐规则要求的水平位置。按照定义,每个文本段以一新行中表示。在较佳实施例中,以字符为单位具体规定降角。在较佳实施例中,降角和水平对齐至少部分地确定了“文本级联”向下并跨屏。图3和4示出级联文本的例子。降角可以是零,意味着(不是更多(without more))只由水平对齐规定确定文本段水平位置。降角可以向左,其中相对于上行左移下行,或者降角向右,其中文本右移。图3只示出右降角。
在一个实施例中,对于每一新行,降角是不变的。在较佳实施例中,降角是上行的文本段权值的函数。在另一个较佳实施例中,当在显示器表面上从行中心到行中心,从上左到下右呈现所有文本行时,水平对齐规则要求中心对齐到每个最邻近上一行的中心,而且计算降角来呈现基本上笔直的路径。
较佳实施例中,对降角规则的输入包括在上一行中的文本属性。在一个较佳实施例中,输入包括折转上一行的理由,即,主要折转点、次级折转点或收缩(collapse)规则。在较佳实施例中,当由于主要折转点而不是次级折转点导致最邻近上行折转时,要求更加正的降角。在另一个较佳实施例中,输入包括当前行和上一行的文本段权值。
认识到水平对齐规则要求从左边缘左对齐和测量水平偏移,以及零降角,导致每一行中的左对齐文本。
还认识到以与上述例子同等的大多数方法完成水平文本定位。特别是,首先通过对齐然后移位或者首先移位然后以同等结果对齐,来完成文本定位的计算。
间隔长度在一个实施例中,间隔与已确定其位置的折转点相关,但是由于其他规则,保持在相同行中,而且不导致折转。在折转点之后添加零或更多空格的间隔,此处折转点不能导致新行产生。在较佳实施例中,间隔长度是阅读者确定的参数,其中零的间隔长度导致不产生任何间隔。间隔允许关于存在短语的视觉提示,即使在短语不导致新行信息的情况下。
前进速率前进速率特定显示持续时间以及在呈现一个文本组和下一个文本组之间的时间间隔。在较佳实施例中,在一个屏幕上显示一句。在较佳实施例中,显示持续率可以是字、教育程度、发音时间、短语数、音节数或短语权值的文本的适当加权数。时间间隔可包括在句子和段落之间的间隔。在较佳实施例中,在句子和段落之间的时间间隔是不同的。以这种方法,用与文本位于何处以及文本的内容是什么有关的速率来替换当前系统中的文本的不变到达速率。
站站是显示文本的显示表面位置。站可以是其中呈现文本的识别窗口,或者文本呈现开始的地方。较佳实施例包括活动文本站,其中呈现要阅读的文本。另一个较佳实施例包括显示要阅读的文本的预先阅读站,和显示已阅读的文本的后阅读站。在一个实施例中,由预期阅读或发音时间控制呈现在观看表面上的所有站上的全部文本。在一个实施例中,一次只允许在屏幕上显示一分钟的材料。
动画动画是依赖时间的文本呈现。动画的例子包括闪光、渐隐和渐亮,即,以特定速率加亮连续文本部分。在较佳实施例中,通过在屏幕的顶端在预先阅读站以平行堆栈在要阅读的文本、在屏幕的底部在后阅读站堆栈原先阅读的行并跨屏幕的中央在活动站级联活动句子,来完成经修正的滚动效果。在一个实施例中,预先阅读和后阅读文本和/或背景颜色与当前阅读的文本的不同。
标记标记包括指定是否通过与该字相关的定义或附图标记句子。在较佳实施例中,字组规定了用定义标记哪些字。当阅读者选择标记字时,可以显示定义、附图或其他电子显示。在较佳实施例中,标记字(当选择它时)显示包括定义或附图的弹出式窗口。选择的较佳方法包括运用鼠标和右移键。
阅读事件阅读事件包括句子的出现和消失以及在出现下一句之前的任何附加时间。阅读时间包括一系列阅读时刻。对于尝试理解文本的阅读者而言,阅读时刻是文本的冻结帧出现。对于多数阅读者,阅读时刻将发现眼睛以短语为中心,短语只在一行上,阅读者理解单个短语。
阅读速度呈现间隔是在屏幕上的句子呈现的持续时间。呈现间隔可受阅读者的控制或者自动确定。在一个实施例中,阅读者控制可以通过单击鼠标。在另一个实施例中,阅读者控制可以通过眼睛移动检测或脑波变化检测。当与阅读活动相对应的脑波改变到与已完成阅读句子相关的脑波时,脑波检测通过产生新的句子要求进行操作。
以每时间单元的文本内容,测量阅读速率。可以长度单位(诸如,字数、音节数、发音时间或前面讨论的短语长度或权值或这些乘积的任一和的任一种测量)测量这些文本内容单元。以复杂度为单位(诸如前面相对于复杂度或权值或这些乘积的任一和所述的那些)测量文本内容单元。对于呈现的句子计算在较佳实施例中的文本内容单元,并用它们来将每单位时间文本内容单元中的实际阅读速率与阅读者控制的呈现间隔相比较,并设定文本呈现间隔用于自动控制的文本呈现间隔。通过这种方法,可使呈现间隔依赖于内容,而且可使它跟踪可能的阅读者喜欢的呈现速率。
特殊事件特殊事件是依赖于时间的在阅读事件期间发生的事件。特殊事件包括给出时间剩余信号的可视或可听见提示。例如,当75%的依赖内容的呈现间隔已过去时,可视提示出现在屏幕上。可用特殊事件脚本来排列特殊时间。复杂的特殊事件包括一系列特殊事件。
视觉发音视觉发音包括时间上交错各短语、字和音节的颜色或亮度变化,虽然不是全部都需要。一个实施例表示着重于更长、更难字,通过加亮需要更长的时间来发音这些字。视觉发音是复杂的特殊事件的一个例子。
下拉级联(Cascade)在一个实施例中,在预先阅读站,在部分依赖内容的呈现间隔的一部分内显示文本,然后在句子级联中一次呈现一个文本段或一行。下拉级联是复杂特殊事件的一个例子。
非线性文本线性文本是从开始到结束呈现和阅读的文本。设计成从开始到结束阅读的书本是线性文本的一个一般例子。非线性文本包括不以线性次序呈现和阅读文本。非线性文本的一个例子是超文本,其中以指示链接的这种方法呈现某些字,例如,文本被角形括号括起或着色为蓝色。非线性文本呈现可以是阅读者指定和自动的。一个这样的例子是首先以深度优先顺序自动呈现超文本,跟随第一超文本链接,忽略循环。另一个例子是宽度优先显示,呈现文本的第一层,后跟来自主层的任何超文本链接,继续直至达到最低深度或者阅读者干涉。另一个例子是剪除深度或宽度优先呈现来只包括具有感兴趣的某些关键字部分。
神奇的阅读玻璃在一个实施例中,文本呈现可从呈现普通的未格式化的文本开始。当阅读者希望看到呈现的文本作为增强文本,那么通过在一些句子部分中设置图标(诸如“神奇的阅读玻璃图标”),阅读者指定增强的文本部分。该句子及随后的句子表现为增强的文本。该增强文本呈现继续直至阅读者去除神奇的阅读玻璃的功能。该神奇的阅读玻璃可作为进入到增强文本处理器的另一个输入点。
方法在图1中,步骤110,预处理文本。在图5中详细示出步骤110。对文本作语法分析以识别段落、句子、字和标点符号。可用空白线、段落标记、缩进符、制表符或在文本中任何其他适当的字符识别段落。运用语法规则(包括句号(period)、空格、首字大写和缩写或没有这些)可以识别句子。在较佳实施例中,阅读表现良好的(reading well behaved)文本、句号、问号或感叹号,单独或者之后跟着一个句号,跟着两个空格或段落结束,发出了句子结束的信号。
在步骤124中,将句子标记为(tokenize)字和标点符号。在较佳实施例中保留原始作者特定的强调部分(例如,斜体或下划线)。在一个实施例中用到标准词汇扫描仪(诸如,Lex(商标)),其中通过语法规则用白空格或标点符号来表示字的结束。另一个实施例用手写词汇分析器。一个实施例存储格式化字符(诸如制表符和缩进)作为标点符号。最好存储字的位置作为该字的属性来提供到原始工作(work)的链接并在其中搜索。
较佳实施例还允许字组“夹”在一起,而且标识为一组字。在一个实施例中,由词组扫描仪识别这种字组。在另一个实施例中,用在词组扫描仪之前的预处理器识别这些字,以保证识别为短语,而不仅仅是个别字。夹紧字(例如,“威尔士王子”)被识别为单个短语,而且最好不要用前置词将它们分成两个短语显示在两行中。
在步骤126中,从字典、词汇表和列表中查询字来确定字的属性。还进一步处理文本以确定类和连续属性。在较佳实施例中,重要的类属性包括语音部分,而且重要的连续属性包括字位置、教育程度、发音时间和音节数、位置、声音和元音重音级。以100%的精确度识别语音部分需要广泛的程序来确定文本的现实世界上下文。不要求以这种精确度来实践本发明,而误差只造成小的后果,因为阅读者是人,不是机器。通过在字典或词汇表中查询,首先确定可能的语音部分。该字典或词汇表只需对一个字(不是一个定义)的可能的语音部分。例如,字“farm”可以是名词、动词或形容词。较佳实施例运用位图来保存多个可能的语音部分,来存储语音属性部分。一个实施例明确地存储模糊属性,标识字仍然具有多个可能的语音部分。另一个实施例运用存在多于单个可能的语音部分作为模糊指示。
在较佳实施例中,默认的语音部分存在于字典中,而且可查询到。在最佳实施例中,可添加字组来对消或增补默认组。在另一个实施例中,由用户输入字组来指定技术字。
图6示出九个字组来具体规定以层次排列的语音部分。这种字组和层次还用作对折转规则的输入(这在下面描述)。较佳实施例检查如图6所示的字组,以类1、子类1开始和以类3、子类1结束。给出图6中的字组的有限词汇和静态特征,最佳实施例利用快速、手写语法分析程序来搜索图6中的字和短语。较佳实施例包括以C、C++、Perl、汇编AWK、AWK和AWK至C、具有正规表示函数的C或者任何适当的语言编写的语法分析程序。一个语法分析函数实施例利用YACC。
在一个实施例中,字典是在电子媒体(如CD-ROM)上运行的可商业购得的字典。语法分析标准字典的字属性,诸如语音部分和音节数。当在多数实施例中不需要字定义时,可能存储与音节数和语音部分相关的大量字。在最佳实施例中,将最常用到的最近用到的字存储在快速存取存储器中,诸如固态随机存取存储器(RAM)。在字典是手工制造的实施例中,运用散列法、冲突检测法和桶算法的快速方法是较佳的。在阅读之前固定字组的实施例中,在不用桶的完全散列法是较佳的。
在又一个实施例中,导出重音(pronunciation emphasis)级作为部分中依赖语音部分的属性。在最佳实施例中,重音分类为主要、次级和没有(none)。在一个实施例中,还从字典或词汇表中检索发音时间和实际声音(例如,在声音文件中找到的),并作为字的属性存起来。
在步骤128中,搜索阅读者和文本特定字组。在较佳实施例中,把阅读者特定字组存储在来自字典或词汇表字组的分开的数据库中,以允许分开的存储和更快速检索。在一个实施例中,在字典之前检查阅读者特定字组,而且如果在阅读者特定字组中未找到所需字和属性,那么只检查字典。较佳实施例利用数据库层次结构来查询字。
在步骤130中,要分清多个语音部分。在一个实施例中,用微语法程序(microgrammer)来确定可能的语音部分。微语法程序利用邻近或附近字来更加精确地确定对于一个字最可能的语音部分。例如,在短语“a farm in”中的字“farm”可能是名词,当它在冠词之前并在介词之后。作为另一个例子,如果一个字是名词或动词而且该字的前面是“could”、“will”、“shall”或“to”,那么该字可能是动词。如果字“farm”的前面是“will”,那么该字是动词。在另一个实施例中,通过选择统计上最可能被用到的字简单地全部澄清。在再一个实施例中,没有任何自动澄清,只有运用人编辑的人工澄清。在较佳实施例中,对于每个字存储模糊属性,表示在澄清之后仍然存在多个可能的语音部分。在又一个实施例中,不存储模糊属性,而是从为一个字存储的多个可能的语音部分的存在推导出。在一个实施例中,从与每个语音部分相关的条纹式或交替文本颜色的视觉现实推断出模糊性。例如,如果动词是橙色而形容词是黄色,那么可能的动词或形容词具有交替的黄色和橙色条纹或者文本字符。
在本发明的一个实施例中,通过搜索词素(词根(root word))并根据结束(例如,-ly,-ing),分配语音属性部分,部分确定语音部分。
在步骤132中,存储对字和短语确定的属性,产生“浓缩句”,它们可能不会应阅读者的不同而改变。例如,教育程度和字的语音部分将对不同的阅读者保持不变,尽管它们可能希望不同的文本段长度和呈现速度。在一个实施例中,把浓缩句存储在永久性存储器,诸如文件中。在另一个实施例中,把浓缩文本(enriched text)存储在CD-ROM中。在较佳实施中,实施浓缩句作为节点的链接表,每个节点具有如上所述的字和短语属性,包括字在原始文本中的位置。
在图5中,步骤134,通过采用主要折转点规则确定主要折转点。折转点是位于字母之间的文本划分点。在较佳实施例中,将折转点分成主要和次级的。运用根据标点符号来确定主要折转点位置的主要折转规则确定主要折转点。图7示出在“Africa”之后的逗号之后的主要折转点。主要折转点将文本分成了“超短语”。在较佳实施例中,主要折转点位于每个逗号、冒号、分号和左括号、方括号和大括号。可存储折转点位置作为在形成浓缩句的链接节点表中的节点属性。
采用次级折转点规则确定次级折转点。在较佳实施例中,次级折转折点规则以层次结构形式来排列,而次级折转规则接受语音部分作为输入。在最佳实施例中,次级折转规则包括要处理的文本段和短语的文本内容的属性作为规则输入。例如,文本段超出阅读者较佳最大文本段权值可要求次级折转点,即使不达到最大文本段长度。
连续属性(诸如,短语难度、密度、复杂度、势(power)和发音时间)都可用作到如图6所示的表建立的修正和等级规则的输入,其中该规则只要用语音部分来确定次级折转部分等级。例如,其权值大于高于文本平均的35%的文本段具有分配类等级(class rank)1,而与其它情景下由图6的表要求的等级无关。在一个较佳实施例中,短语权值或势用来独一地确定次级折转点等级,而不是单单语音部分。
在另一个实施例中,折转规则根据在行中的字符数要求折转,而且运用与字的语音部分相对应的颜色显示语音部分。后来的实施例没有级联的优点,但是根据文本内容提供视觉显示提示。
图6示出在较佳实施例中用来确定次级折转点的表。例如,介词确定类3、子类1、次级折转点。在图7中,在介词“in”和“of”之前存在类3次级折转点。次级折转点把超短语分成“微型短语”,如图7所示。微型短语与文本段相关,其中微型短语通常与文本段相同,而且通常显示在每一新行中。然而,一旦识别微型短语,规则命令在一行中出现多于或少于一个微型短语作为文本段。
首先采用主要折转规则,接着是次级折转规则,以折转规则的等级采用。图6示出次级折转规则等级的一个例子,由引起次级折转点的字组等级建立。一些较佳实施例用短语权值或势来确定次级折转等级,而不仅仅使用语音部分。最佳实施例允许阅读者输入确定次级折转点等级的语音部分或短语权值/势的优先级。一些阅读者根据结构选择文本段,而其他阅读者根据复杂度或阅读文本段估计所花费的时间选择文本段。
在较佳实施例中,只采用次级折转规则直至达到极限。这个极限通常是最小线长度。图5(步骤136)示出确定次级折转点的位置的一种,图8(步骤136)详细示出。在一个实施例中,其中将次级折转规则用于超短语导致微型短语长度小于最小特定线长度,不采用折转规则,而且不进一步将任何折转规则用于该超短语。相反地,当在超出最大向长度的行中不存在任何折转点时,采用收缩规则,迫使文本折转成两行。当所有超短语不要用到任何进一步的折转规则时,完成折转处理。
在图1中,步骤111,可将参数、属性和折转规则用作到水平偏移规则的输入。水平偏移规则确定文本段的水平位置。在较佳实施例中,水平偏移规则包括水平对齐规则和降角规则。在该实施例中,水平偏移是由水平对齐规则和降角规则得出的综合。容易实施实施例,水平偏移规则是简单的降角用于中心对齐文本段。当阅读句子级联时,该实施例不采用结束前面的文本段的折转规则作为输入并提供最小眼睛移动。另一个实施例添加用于前面的类3折转点的左降角和用于前面的类3折转点的右降角。较佳实施例允许阅读者特定附加的右或左偏移用于折转点,包括阅读者输入主要折转点和第二折转点的每个类和子类的值。一个实施例将附加偏移以字符为单位存储在表格中。同时确定水平偏移,保持呈现文本。
在图9的例子中,由在逗号之后的主要折转点将短语1“I had a farm inAfrica(我在非洲有一个农场)”与超短语2“at the foot of the Ngong Hills(在Ngong山脚下)”分开。由在介词“of”之前的次级折转点把超短语2分成两个微型短语。在如图9所示的实施例中,将两个微型短语作为与微型短语“inAfrica”相同的文本段呈现,其长度低于阅读者特定的三个字的最小长度。将在新一行中的第一微型短语“at the foot”中心对齐的上一文本段之下并用右降角将它向右移位。向左移位最后一个微型短语“of the Ngong Hills”,因为当前一行以次级而不是主要折转点结束时,水平偏移规则要求左移位。于是,在如图9所示的例子中,通过降角组合和行的对齐确定整个水平偏移。
包括圆括号、大括号、括号和引号的成对标点符号作为确定在较佳实施例中的主要折转点位置的标点符号。在一个实施例中,包括这种成对的标点符号作为到水平偏移规则(包括水平对齐和降角规则)的输入。例如,包括在圆括号中的长的多短语文本段可能具有减小的水平位移以及减小的垂直偏移,即,行间间隔小于在显示表面的活动显示区域中的其他文本。
在步骤112中,产生增强文本。在该步骤中,产生适当显示文本段所需的代码。例如,在阅读者说明要求技术字是红色而且浓缩文本指示字是技术字的情况下,可能产生转义符序列,这由要求红文本的显示步骤所表示。动画要求类似的编码。在这时可存储增强文本(enhanced text)以用作后来显示。
在步骤113中,把增强文本呈现在显示装置上,每一最新形成的行呈现一个文本段。增强文本还可包括上述动画、背景颜色、文本颜色、标记和呈现速率。在较佳实施例中,背景颜色作为句子和段落位置的函数呈现。
在另一个实施例中(如图11所示),最初在一个时间段内以一种颜色或亮度呈现一些文本,然后以第二种颜色或亮度呈现。在图11中,以由箭头200、202和203所示的最新形成的三行呈现该句。在那些行中,将该文本都呈现在相同行上,同时以不同行呈现图11的字以显示初始文本颜色/加亮206到文本颜色/加亮207以及初始文本颜色/加亮208到209的时间变化。在206的“Af”文本是在“Africa”中的重音节,而且出于该原因最初在颜色/加亮206中示出。“gong”文本还是在“Ngong”中的重音节,而且具有初始颜色/加亮208,之后是颜色/加亮209。
如图1所示的较佳实施例允许编辑在步骤132中的浓缩文本和在步骤113中的增强文本。在较佳实施例中,字指出(pointing)装置(诸如鼠标)被用来选择一部分要编辑的文本。内部选择与该增强文本部分相对应的浓缩句子,而且可获得属性用于编辑。这可通过下拉菜单来实施,它允许编辑浓缩文本和增强文本的每个属性。在编辑浓缩文本可影响呈现的情况下,再次根据步骤110预处理文本。在步骤114的编辑期间,接受阅读者注释(隐藏的或立即可见的),并可存储在浓缩和增强句子中。这种注释与在书本中手写注解的功能相同。可编辑特征包括语音部分、定义、颜色、文本、折转点和水平偏移。
在步骤116中,还可存储该实施例的编辑属性和显示,保留变化。在一个实施例中,只存储增强句子。在较佳实施例中,存储浓缩和增强文本。在较佳实施例中,存储浓缩和增强文本。在较佳实施例中,一些编辑作为阅读者特定或全局记录下来以呈现给所有文本的阅读者。在其他人重复观察相同的文本的情况下,人工编辑增强文本特别有用,如同电子书一样。
在图1的实施例的变化中,省略步骤113、114和116,而不用人干预和直接显示。在该实施例中,产生和存储浓缩和增强文本用于以后显示。可以标准字处理格式(诸如,Microsoft Word(商标)或Corel Word Perfect(商标)二进制)存储增强文本。在该实施例中,呈现软件相对于查询字和分析文本所需的软件可以是简单的、小型的和快速的。这种呈现是较佳实施例,用于大量分配增强文本用于作为“电子书本”阅读。
在图1的实施例的相关变化中,在步骤106中检索本身增强文本,同时不需要预处理和不允许编辑。这种呈现还是大量分配增强文本的较佳实施例以作为“电子书本”阅读。
参照图1,步骤113,可以人工触发(如用鼠标单击)呈现每屏增强文本。在较佳实施例中,由包括文本显示时间和句子间以及段落间到达时间的阅读者特定参数控制呈现速率。在最佳实施例中,测量文本内容,而且文本呈现间隔是依赖于该文本内容的。在较佳实施例中,文本的发音时间用作文本内容的测量来确定呈现间隔。在另一个实施例中,用短语权值来测量文本内容并确定呈现间隔。
较佳实施例允许阅读者延长句子的呈现时间,以及加速和降低呈现速率。可记录该速率,如与特殊呈现间隔相对应的句子长度和句子难度。图10示出例子3-D曲线,“呈现间隔采样历史图”,表示阅读所需的时间作为两个属性(句子难度和句子长度)的函数。阅读所需的时间可根据阅读者的喜好或者前面所述的眼睛移动跟踪或脑波活动来测量。可将时间与如图10所示的两个属性或者任意数量的属性互联。连续调节在较佳实施例中的呈现间隔来匹配预计的所需阅读时间。
在另一个实施例中,最适当的是紧密测量阅读速度,改变到折转规则的输入并跟踪所得阅读速度。在适于产生最佳的大量销售的阅读产品的实施例中,改变到折转规则的输入并对于一定采样人口(sample population)记录阅读速度。改变输入以最优化阅读速度和理解。例如,相对于短语权值改变次要折转规则对语音部分的重要性,以最优化阅读速度。
在另一个实施例中,对于相关的句子结构、语音部分、长度和复杂度分析阅读者对初始句子显示的人工编辑。在这种初始“调谐”或“训练”期间,在折转规则中用到类似的加权以自动文本增强。可用后来的编辑进一步精炼折转规则。
在步骤118中,当没有更多的文本或阅读者要求停止时,文本呈现停止。步骤120规定清除,包括最后浓缩和增强文本存储,以及关于阅读期间的历史存储。
方法例子举例方法的概观本发明包括文本折转和偏移的方法,申请人相信该方法是对在上面标题为“方法”所述的方法的进一步改进。
本发明的一个实施例把标点符号分成“连续”或“括号”。连续标点符号包括冒号、分号、逗号、单个双划符号(“--”)和省略号。括号或嵌套标点符号包括引号、圆括号、方括号(如[and])和一对双划符号。当带方括号段不是以一个方括号内开始并以另一个方括号段内结束时,本发明最有效。正常情况下是这样。
可用连续标点符号,进一步用内部方括号标点符号或者两者兼之,连续划分在方括号标点符号内的段。这是一种情况,其中在一段中的两个逗号产生一种方括号所形成的三个新段中的中间段被其他两段括了起来。这是通常情况,而且可将相关从句与非限制性从句分开。这也是一种“例举”,其他这样的短语嵌套较大短语中。一些加方括号的文本(例如,在引号内的文本)可跨多于一个句子。
在下述方法中,识别加括号的段。检查在加括号段之外的文本的连续标点符号。首先,它们被用来折转。然后,用折转步骤将未加括号文本和加括号文本分开,其中折转步骤将每种文本放置在分开行上。在它本身行上放置加括号文本,其中加括号标点符号在每段的开始和结束部分。按照需要,重复该循环。一段准备使算法部分处理“标点符号折转”并以“只字折转(word-only)”(基于字的折转)开始,当它不包含任何标点符号(除了在开始和结束部分之外找到的那些)。在下列算法中的步骤1至15处理标点符号折转。
只字折转以步骤16开始,并折转每一段来固定在最大和最小目标之间。“连接字(hinge word)”具体规定在文本中的折转点。连接字可由字表指定。在较佳实施例中,在字表中的字或短语与分类码或码字相关,它们包括关于该字的信息。在下面所示的例子中,分类包括字母前缀和数字等级(number rank)或层号(level number)。字母前缀包括“b”(在该字之前折转,而不是之后),“a”(留为后用,在该字之后折转),“x”(限定性主语代名词表(definitivesubjective pronoun list)),“y”(预限定词表),“z”(后限定词表)。字和相关码的例子包含在附录1中。
在下面的例子中,层号从0至99。较低层号具有较高等级,并首先用算法处理。用变量“n”来表示在下述步骤中的该值。10-39范围包括前面的“b”连接字。40-46范围包括动词,包括40(模型)、41(具有,助动词),42(动词不定式(“to be”)),43(清楚(unambiguously)及物动词、44(清楚不及物动词)、45(模糊及物动词,字不总是动词)和46(清楚不及物动词,字不总是动词)。
关于动词的字母前缀包括“c”(不定式)、“d”(过去分词)、“e”(不采用助动词的其他形式)、“f”(可以是不定式和过去分词)和“g”(动名词)。在另一个部分中所述的改进的动词处理方法中用到动词分类。
“小道(Lane)”是指水平偏移单位,将它细分成称为“空隙”的水平偏移子单元。在较佳实施例中,每个小道是4个空格宽,细分成4空隙,每1个空隙跨过1个空格。将小道标号为1至5,以及将空隙标为A、B、C和D。在较佳实施例中,小道1、空隙A,从左边缘2个空格开始,接着空隙B,然后B,然后D,之后小道2、空隙A,等等。
“X”(大写字母X)是指世代(generation)数,即,在算法中的递归级。例如,将句子细分成段1和段2,还把段2细分成段2.1和2.2,和段2.1细分成段2.1.1和2.1.2。段2.1.1和2.1.1处于第3代。通常用X来确定近似水平偏移,即,小道号。
“x”(小写x)表示在特殊字处的指标或到句子或句子分段中的偏移量(segment)。x按字数(不是字符)递增/递减。
“n”项表示连接字层号。在下列例子中,连接字的范围从1至99。
现在参照图12,表320包括标题行322,它列出了离下面每一列的左边缘的空格数。标题行324包括连接字层表。将行分成一系列小道328,再将每个小道细分成4个空隙。例如,给出连接层和小道,在330的一系列X表示文本段的开始位置。
在该表中的X示出空隙和小道,其中将一段的第一个字符设为用来折转产生的段的连接字的函数。可将每个连接字层(例如,b10、B20)设置在从小道2以上的任何一个小道中。哪代句子折转导致了段折转确定所用的小道。于是,在该小道(例如,第三代折转的小道3)内,由连接字层确定空隙,如下表所示。通过这种方法,将以b20层字(level word)产生的第三代折转设置在小道3空隙B中,而将以b70字产生的第三代折转设置在小道3空隙D。
在该表中所示的层b85同时在该字之前和该字之后处发生折转一实际上将该字本身设置在它自己的一行中。在该表中的指令表示应将b85设置在何处,而且应将b85字之后的分段设置在何处。关于b85字的准则不在连接字表中,而是被定义为超出12个字符的任一字。它在连接字表中的位置暗示着如果在插入折转的分段中没有该表时的另一些更高层,那么b85字只被用来折转。然而,这在算法中没有明确描述。
方法通过设定X=1,开始递归算法。于是,开始,用到第一小道,而且该算法是第1代。
标点符号折转1.可能在一句/段的最开始或最结尾的地方出现的除了标点符号(pms)之外的是在该句/段中的任何其他标点符号吗?是-进到步骤2。否进到步骤16。
2.在该句/段中存在括号标点符号吗?是,进到步骤3。否,进到步骤4。
3.在该句/段中用括号括起的文本之外存在连续标点符号吗?(*如果一句在没有引号的情况下开始,但具有在后一句的一对标点符号中的第二个标点符号[即,在前一句开始并在该句结束的标点符号],那么从该句开始到标点符号对的第二个标点符号之后的空格之间的分段也是“括号括起的”分段;如果一句子包括了引号对中的第一而不是第二个,那么采用类似的规则。)是-进到步骤4。否-进到步骤9。
4.在步骤3中的非括号文本中存在逗号/分号吗?是-进到步骤5。否-进到步骤6。
5.在每个逗号/分号之后折转该句/段并将在每个逗号/分号之后的文本(它可包括括号文本)设置在新的一行中,并在位置小道X,空隙A缩进每一新行;然后进到步骤6。
6.在非括号文本中存在逗号吗?是-进到步骤7。否-进到步骤8。
7.在每个逗号之后折转句子/分段并将在每个逗号之后的文本(可能包括括号文本)设置在新行上;在小道X,空隙D缩进第一逗号之后的新一行文本;在小道X,空隙B缩进第二逗号之后的新一行文本;在小道X,空隙D缩进奇数逗号之后的任何附加行文本;在小道X,空隙B缩进偶数逗号之后的任一附加行文本。然后,进到步骤15。
8.在非括号文本中存在任何单个“双划符号”(--)或省略号(…)吗?是-在每单个“双划符号”或省略号之前折转句子/分段吗把包括单个“双划符号”或省略号的每个新段以及在它之后的文本(也可能包括括号文本)设置在新一行中;在小道X,空隙C缩进每一新行。于是,进到步骤15。
9.在句子/分段的开始之间存在任何文本(它本身可以是圆括号标点符号)和第一“句子/分段内”括号标点符号吗?是-进到步骤10。否-将第一括号标点符号保留在相同的位置上(不在该括号标点符号处折转或缩进;例如,圆括号符可放在一句子或一段之前后之后,但是之后紧跟着一个引号-根据该步骤这些符号可留在一起);而且进到步骤11。
10.折转在第一括号标点符号之前紧跟着的句子/分段(每步骤9,它具有最靠近它的文本);将该第一“句子/分段内”括号标点符号和其之后的所有文本设置在一新行上;在小道X,空隙D处缩进该新行。于是,进到步骤11。
11.在该句/段中存在匹配的括号标点符号吗(即,括号对的第二个标点符号)?是-进到步骤12。否-该括号对的第二个标点符号是在后一句子中;进到步骤15。
12.在该括号对的第二标点符号(按照步骤11)之后存在任一文本吗?是-进到步骤13。否-括号对中的第二个标点符号是该句子/分段的结束部分;进到步骤15。
13.折转在该括号对中的第二个标点符号之后紧接着的句子/分段;在小道X,空隙B位置处缩进新一行文本;然后进到步骤14。
14.在前一个括号对中的第二个标点符号之后的文本中存在另一个括号标点符号吗?是-进到步骤10,并对于前一个之后(不是嵌在其中)的下一个括号段重复步骤10-14。否-进到步骤15。
15.取在步骤1至14中形成的每一新段,并回到步骤1。运用小道X+1重复折转和缩进指令。重复步骤1至15,直至所有段的标点符号都只位于每段开始或结束或两者位置上。通过这种方法,最终将所有段都送到步骤16用于“只字”折转。
只字折转16.在该步骤中开始只字折转。对于在步骤1中的X的任何值,在该步骤中回答是“否”并把该段送到步骤16,将2或X中的更大值用于一小道来开始只字折转。例如如果一个句子第一次通过该循环(其中X=1),那么在它的开始和结束部分之间不存在任何标点符号,而且对步骤1的回答是“否”;然后,不以X(等于1)而以2(更大)(即,在小道2中)开始只字折转。然而,如果要求通过步骤1-15的两个循环获得预备只字折转的分段,那么在第三循环的开始部分,其中X等于3,而且对步骤1的回答是“否”,那么在步骤16中只字折转在小道X=3开始)。这将只字折转设置成一小道在用于标点符号折转的最后小道的右边。在确定句子/分段的第一代只字折转在哪个小道缩进之后,进到步骤17。
17.句子/分段超出最大行值(例如,在每段中的字或字符数),或者它超出与右边的可用空间吗?否--停止。是-进到步骤18。
18.位于层[n]的连接字表中的分段中存在字吗(例如,当n=10时层b10)?否-进到步骤18A。是-进到步骤19。
18A.重复对于连接字表层[n+1]的问题(例如,层b20,那么b30,等等);如果在位于连接字表中的任一层的分段中不存在任何字,直至n=95,那么进到步骤29。标为99的NB字,其中在动词循环(verb loop)中用到前缀w、x、y、z,但是不直接用作连接字来折转。
19.在连接字层[n]的分段中存在多于一个字吗?是-运用出现在该段序列中出现的第一字,并进到步骤20。否-进到步骤21。
20.运用在步骤19中的字形成的分段超出最小行值吗?否-运用在处于相同连接字层[n]中的分段系列中的下一个字重复该问题;如果在连接层[n]处没有任何字产生超出最小行值的段,那么回到步骤18,并对于层[n+1]重复。是-进到步骤21。
21.在由该字指定的空间处折转(如果前缀为,之前;如果前缀为a,之后)或者之后),而且把最新形成的分段设置在小道X中的一个空隙中,或者小道2,无论哪个最大。由连接字层确定在该小道中用到的空隙(见图12,下述)。于是,进到步骤22。
22.分段超出最大行值或超出到右边的可用空间吗?否-停止。是-进到步骤23。
23.在连接字表中仍然有要检查的层次吗?检查直至n=95。在后面的步骤中所述的动词循环中运用在字表中的具有n=99的码字的字(例如,w99、x99、y99、z99),但是不直接用作折转的连接字。是-进到步骤24。否-进到步骤29。
24.在位于层[n]的连接字表中的分段中存在字(例如,当n=10时层b10)吗?否-重复对于连接字表层[n+1]的问题。如果在连接字表中的任一层处存在的分段中没有任何字,那么进到步骤29。是-进到步骤25。
25.在连接字层[n]的分段中存在多于一个字吗?是--运用在该段系列中出现的第一字,并进到步骤26。否-进到步骤27。
26.运用在步骤25中的字形成的分段超出最新小行值吗?否-运用在相同连接字层[n]中的分段系列中的下一个字重复问题;如果在连接层[n]处没有一个字产生超出最小行字的分段,那么回到步骤24,而且对于[n+1]重复。是-进到步骤27。
27.在由该字(如果前缀为b,之前,如果前缀为a,之后),而且设置在小道X+1或小道2+1(无论哪个更大(即,在用于前一个只字折转代中缩进的一个小道的右边的一个小道)中最新形成的段。形成的分段超出最大行值或者超出对右边可用的空间吗?否-停止。是-进到步骤28。
28.在连接字表中仍然存在要检查的层次吗?是-会到步骤23,并运用小道X+x或小道2+x执行任何可行的折转,根据图12中的表格缩进。否-进到步骤29。
29.把该段“弯”成两个或更多最新形成的段,从而这些最新形成的段小于最大行值以及到右边的可用空间,并将这些在中心对齐的位置上的最新形成的分段设置在该组的第一分段之下。
对于动词的附加折转该部分描述包括英语的动词的文本折转的附加处理。该附加处理适于前面所述的“经改进的折转”算法(步骤18),如下所述。需要附加处理来实践本发明,但是对下面所述的动词提供附加折转处理。
理想的是,对于文本折转处理避免断开相关动词串,它们应保留在一段中;和当识别离散的动词短语时在动词处发生折转;如此,这不要求在识别时动词必须在新一行的开始部分,包括一个或多个动词的适当短语边界的识别可能导致在动词(英语的)之后形成新一行。
对于文本折转处理理想的是避免将字“to”从在它之后的动词不定式形式中分离出去(而且只是动词不定式形式);类似链接,如果它们在动词之前,那么识别字“and”和“or”以进行折转(所有动词形式,不只是不定式形式);处理特定的动词+介词(或者动词+副词)组合作为单个字,从而后来的折转避免将这些介词或副词与它们所属的组合中分开(例如,“they broke_up thefight”v.“he walked up the hill”);而且类似地处理助动词的“not”形式作为单个字,从而在相对于其他动词的位置上可识别它们作为单个字(例如,应以与“could go”相同的方法处理“could_not go”)。理想的是,将助动词的代名词缩写标为动词(例如,“you’ll”、“we’ve”、“you’re”)。
动词是复杂的。它们在功能上可以是辅助的、情态或一般的(model orordinary)。它们的动词变化可以是规则或不规则的。它们可以是及物动词、不及物动词或它们带不带宾语的能力。在它们是否是真正的动词而不是语音的其他部分方面是含糊不清的。可将它们与特定介词或副词相结合,从而意味着与动词不同之处。它们可具有与助动词结合或不结合的几种方法来产生各种时态,并与主语的人或情况相一致。
此时,运用在所有它们的组合中的所有这些变量直接进行级联格式化。然而,可以将动词分成四个主要功能组(情态动词、have动词、be动词和一般动词(modal,have,be and ordinary));把一般再分成清楚动词、模糊动词和及物动词、不及物动词;和对于每个这样的组,识别上至五个不同形式(不及物、过去式、动名词、其他和组合不及物一过去分词)。
动词折转方法的定义“x”(小写x)表示一个句子或句子的一部分在特殊字的索引或偏移。x以字(而不是字符)为单位递增。
“n”项在动词循环算法中表示文本相对于所观察字的位置。“n”变量不指如在前一算法中的连接字层次。
介绍对于这些功能形式动词类中的每种,存在几种基本操作,它确定在动词x处是否折转(否则,识别它用于通过MIN和MAX准则折转)。这些操作针对在问题中的(x-1)动词之前的一个字并确定它是否属于特别为该功能形式组定义的一组字。根据这,或者跳过潜在的折转(并考虑该段中的下一个动词为在该连接层中折转的候选动词),或者在暂不完成(x+1)次操作的结果期间,再考虑潜在的折转。
对于(x-1)操作设定的这些内容包括将动词-名词澄清为名词的字;和对于关注的动词是适当的助动词的字、在后来的操作中,如果x+1是动词,那么延期在x之前的潜在折转。检查x+1动词来看在它之前的字(即,x)是否在它的列表中;如果x不是对于x+1的列表中,那么在x+1之前而不是在x之前(因为x+1是属于分开的动词短语)进行转折。如果x是在对于x+1动词的列表中(即,x是对于x+1的助动词),那么不在x+1处执行折转,而且检查在x+1之后的字(即,x+2)。如果在x+1之后的字不是动词,那么在现在执行x之前发生最初延期的折转。
该过程利用了折转处理的方向性现有折转过程把每个潜在动词的询问从第一移到句子序列的最后。如果两个动词相互邻近,那么对于在邻近动词对中的第二个动词执行的x-1操作(考虑该动词对的第一个动词,看它是否详细列出对于第二个动词的形成组的列表中)将确定是否在第一和第二动词之间发生折转。
对于每个动词要求x-1操作,即使它是超出最小行值的第一字。这个的原因是可以在前面的潜在折转中传递了所关注的动词x的助动词,因为它们落在最小行值内。然而,通过向后看该段的开始部分,x-1操作将检测x的助动词是否真的在它的前面(即使x-1是在最小行值内)。在这种情况下,不执行在x处的折转。
此外,即使在这种情况下,x之后紧跟着另一个动词(或者x-1是对于x的助动词的任一情况),一旦(x-1)操作确定x之前跟着对于x的助动词,不能有效地期望在x之后的该动词(在x+1位置上)。而是,仍将驱动折转处理--因为仍然由该段保持>最大行值(因为不在x处进行潜在折转)--将进到在该段中下一个可获得的动词;该处理将发现该动词已经是x+1,而且分析它是新的x(这里称为x*)。现在,X*-1操作将向后看到前一个x,并确定X*-1是否是对于X*的适当助动词。
对于层40动词的x-1操作(情态动词,参见下文)和对于层45/46动词的x-1和x+1操作(可能是及物动词[45]或严格不及物[46]的模糊动词)与对于所有其他动词所用到的那些稍有不同。在情态动词的情况下,简化算法,因为只有情态动词的不定式形式(而且仅有一个以不定式形式的情态动词,即,“do”)才可以前置另一个情态动词(例如,“could do”)。在435/46层动词的情况下,最初执行典型的x-1操作,随后执行具体的x-1和x+1操作。执行将尝试澄清x,而且将包括在x的任一侧的动词-动词界面。
关于在较低层(例如,40)的动词x处潜在折转的询问将以在其之后的更高层(例如,46)动词之前的空格处进行的折转结束,如果一个或多个动词按序跟着x之后。一旦进行折转,再次问是否>MAX。如果需要更多折转,那么处理再次首先寻找更低层动词。这首先滤出了更加基本的动词短语(例如,那些以情态动词开始的短语诸如“I could have bought some milk”);之后是包括助动词的动词时态(例如,“We have been going there for several years”);之后是清楚动词;然后是模糊动词。有希望运用其他动词层次,常常能将段降低到<MAX,不会很经常地使用对于模糊动词的步骤。在用层45/46动词来启动对折转的询问时,已全部滤出了更高层的动词。这允许对包括动词-动词界面的一些有用的假设,它发生在两个不同45/46动词之间。
除了附加的动词-动词比较之外还用到四种参照表限定性主语代名词表(它将紧随其后的多义动词作为限定性动词(definite verb),在字表中用x99表示);前限定词表(pre-determiner 1ist)(它将随后的模糊动词作为限定在非动词,在字表中用Yqq表示),后限定词表(post-deteminer list)(它将前导的模糊动词作为适当的短语界限,用在字表中的z99表示);和动名词助动词表(它将阻止在动名词形式之前折转),用字表中w99表示。
仍然可用对于最新形成的段的小道和空隙的上述算法。根据段时代“祖先”的逐步折转历史衍生出将最新形成的分段置于其中的小道X。在其中设置最新形成的段的每个小道中的空隙(a,b,c,d)到目前为止已称为字的连接字层的函数。由于在VERB LOOP中的所有这些字都是限定动词(definitionverb),所以空隙分配是相同的,例如,空隙b。
然而,为了尝试表达在动词循环折转之间的不同点,可以变更空隙分配。在询问动词x之前的空格中进行的任何折转都可以在空隙c中进行。当x之后跟着一个或多个动词时,在x之后的动词(即,x+n)之前的空格中进行的任何折转可以是空隙b,如果在x+n处的动词是清楚的(43或44)。在x之后的空格中进行任何情态折转都可以是空隙d中进行。
处理概况建立动词的词典。虽然可以人工建立,但是这里所呈现的规则使得能够通过电子字典来使这自动化。根据它的功能和形式标记每个动词。
在当前连接字表术语学中,动词可以处于“四十几层”。因此,四种功能组是情态=40;have动词=41;be动词=42;和一般动词43/44和45/46。组43/44是单义动词,即,它们通常是动词。组45/46是多义动词,即,它们不一定是动词。在每对中的奇数表示及物动词;而偶数表示严格不及物动词。与搜索折转的新候选动词同步寻找在43或44层的动词;一旦找到在43或44的动词,那么对于43和44的x-1操作将不同。类似地,最初同步寻找45和46层的动词,但是一旦识别对于潜在折转的动词就进行不同处理。
对于“开”动词,即不会有一个前导动词的那些动词,将把潜在折转识别作为功能组的数量函数,如同对于连接字表中的情态连接字所做的那样。连续动词串(或潜在动词)可在其中具有几种功能字层次“He should_not(40)have(41)bringing(43)work(43)home.”下面略述的步骤将允许(x-1)操作,然后通过该动词串继续(x+1)操作,而与该动词串中的字的连接层关。
根据每个动词的形式,较佳方法包括五种不同的动词前缀类别。因此,我将这五组中的每组称为c(对于不定示形式,即,“to walk”,以及“I walk”等等);d(对于过去分词形式,即,walked);e(对于不采取任何助动词的其他形式,包括只具有这种形式的那些情态动词,规则动词的第三人称的单数形式,例如,“he walks”,以及“he goes”);f(对于不定式和过去分词形式,如一些不规则动词,诸如,“to cut”和“have cut”);和g(对于动名词形式,例如,walking)。
下面描述如何利用这种归类标记具体的动词的例子。在附录1中包括了其他一些例子。
Do c 40,Did e 40,Does e 40,Could e 40,Might e 40,Have c 41,Had d 41,Having g 41,Has e 41,Be c 42,Been d 42,Being g 42,Am e 42,Is e 42,Were e 42,Walk c 45,Walked d 45,Walking g 45,Walks e 45,Cut f 45,Cuts e 45,Done d 45,Doing g 45,Bring c 43,Brought d 45,Bringing g 45,Go c 45,Gone d 45,Doing g 46,Goes e 44,Went e 44。
上述举例方法的综合在运用动词循环算法的实施例中,用下列步骤18和18A替换上述算法中步骤18和18A18.可在层[n](b10至b39,和b50至b99)的连接字表中找到的分段中有字吗?否-进到18A。是-进到步骤19。
步骤18A。对于连接字表层[n+1]重复这个问题。如果在层b39不再有任何连接字,那么在进到层b50之前,进到对于包括层40-49的算法的动词循环。在完成对于层40-49的动词循环之后,重新在步骤18中以层b50开始折转。如果在分段中没有可在连接字表中的任一层次上找到的任何字,那么进到步骤29。
动词循环Q1.在标为40至46的分段中存在任何字(在它们之前有任何字母c,d,e,f或g)吗?否--回到通常算法的步骤18。
是--进到步骤Q2。
Q2.在分段中(或剩余分段)有标为40的动词吗?否--进到步骤Q20。
是--进到步骤Q3。
Q3.对于在分段中的第一(或下一个)40层动词(x),x超出最小行值(>MIN)吗?否--回到步骤Q2并检查在x之后的分段中的下一个40层动词。
是--进到Q4。
Q4.动词x是“c”形式(即,将它标为c40)吗?否--进到步骤Q6。
是--进到步骤Q5。
Q5.在x之前的字(x-1)是40层动词吗?否--进到步骤Q6。
是--不在x之前的空格折转。取而代之的是,回到步骤Q2并检查在x之后的分段中的下一个40层动词。
Q6.在x之前的空格处可能折转,但是可能在x+n的另一个动词之前折转。检查在x之后的动词(X+n),以n=1开始。x+n是动词(即,标为40、41、42、43、44、45或46的任一字,其中下列字母(c,d,e,f,g)的任一字母在该数之前?否--进到步骤Q6A。
是--进到步骤Q7。
Q6A.x是“c”形式还是“f”形式?否--在x之前的空格处折转。如果字“and”或字“or”是在x之前的字,那么不在x之前折转。取而代之的是,如果“and”字或“or”字大于最小行值,(>MIN),那么在字“and”或字“or”之前折转。如果在x之前的字“and”或字“or”小于最小行值(<MIN),那么不折转-而是回到步骤2并检查在x之后的分段中的动词。
把新分段设置在LANE X中(相对于原来分段/句子的其他先前折转代),空隙A。然后进到步骤Q19。是--进到步骤Q6B。Q6B.x-1是字“ ” 否--在x之前的空格处折转。如果字“and”或字“or”是在x之前的字,那么不在x之前折转。而如果“and”字或“or”字大于最小行值(>MIN),那么在字“and”或字“or”之前折转。如果在x之前的字“and”或字“or”小于最小行值(<MIN),那么不折转--而是回到步骤2并检查在 之后的分段中的动词。
把新段设置在LANE X(相对于原来分段/句子的其他先前折转代),空隙C中。然后进到步骤Q19。
是--在“to”之前的空格处折转。如果就在“to”之前的字是“and”或“or”,那么在“and”或“or”之前而不是“to”之前折转。如果“and”字或“or”字以及字“to”大于最小行值(>MIN),那么在字“and”或字“or”或字“to”之前折转,无论哪个在先。如果在x之前的字“and”或字“or”或字“to”小于最小行值(<MIN),那么不折转--而是回到步骤2并检查在x之后的分段中的动词。
把新段设置在LANE X(相对于原来分段/句子的其他先前折转代),空隙C中。然后回到步骤Q19。
Q7.x+n是“e”形式吗?否--进到步骤Q7A。
是--进到步骤Q17。
Q7A.x+n是“c”形式吗?否--到步骤Q9。
是--进到步骤Q8。
Q8.(x+n)-1是40层动词吗?否--进到步骤Q17。
是--进到步骤Q18。
Q9.x+n是“f”形式吗?否--进到步骤Q11。
是--进到步骤Q10。
Q10.(x+n)-1是40、41或42层吗?(注意,假设其动词不定式或过去分词形式是相同的这种不规则动词(即,“f”形式)且还是严格的不及物动词,而且作者在这种动词的过去分词之前用“be”动词的情况是极少见的)。
否--进到步骤Q17。
是--进到步骤Q18。
Q11.x+n是下列之一d41,d42,d43或d45吗?否--进到步骤Q13。
是--进到步骤Q12。
Q12.(x+n)是41或42层动词吗?否--进到步骤Q15。
是--进到步骤Q14。
Q14.(x+n)-1是41层动词吗?否--进到步骤Q17。
是--进到步骤Q18。
Q15.x+n是“g”形式吗?否--进到步骤Q17。
是--进到步骤Q16。
Q16.(x+n)-1是42层动词或动名词助动词(w99)吗?否--进到步骤Q17。
Q17.[“yes”到Q7或“no”到Q8、10、12、14、15、16]。那么折转,但是不在x之前的空格处。而是在x+n之前的空格处折转。将新分段设置在LANEX(相对于原来分段/句子的其他先前折转代),空隙B中。然后,进到步骤Q19。
Q18.[“yes”到Q8、10、12、14、16]。然后,n加1并用n+1而不是n回到步骤Q6。(即,检查将在x+1后要到来的下一个字并看它是否是动词,而且进行相应处理。)Q19.仍然有超出最大行值的段(或具有到右边的可用空间)吗?否--停止。
是--回到步骤Q2。
Q20在该段(或剩余段)中存在41层动词吗?否--到步骤Q34。
是--进到步骤Q21。
Q21.对于在该段中的第一(下一个)41层动词,x超出最小行值(>MIN)吗?否--回到步骤Q20并检查该段中在x之后的41层动词。
是--进到步骤Q22。
Q22.x是“e”形式吗?否--进到步骤Q22A。
是--进到步骤Q33。
Q22A.x是“c”形式吗?否--进到步骤Q24。
是--进到步骤Q23。
Q23.(x-1)是40层动词吗?否--进到步骤Q33。
是--进到步骤Q32。
Q24.x是“f”形式吗?否--进到步骤Q26。
是--进到步骤Q25。
Q25.(x-1)是40、41或42层动词?否--进到步骤Q33。
是--进到步骤Q32。
Q26.x是下列之一d41、d42、d43或d45吗?否--进到步骤Q28。
是--进到步骤Q27。
Q27.(x-1)是41或42层动词吗?否--进到步骤Q33。
是--进到步骤Q32。
Q28.x是下列之一d44或d46吗?否--进到步骤Q30。
是--进到步骤Q29。
Q29.(x-1)是41层动词吗?否--进到步骤Q33。
是--进到步骤Q32。
Q30.x是“g”形式吗?否--进到步骤Q32。
是--进到步骤Q31。
Q31.(x-1)是42层动词或动名词助动词(w99)吗?否--进到步骤Q33。
是--进到步骤Q32。
Q32.[“Yes”到Q23、25、27、29或31]进到Q32A。
Q32A.x是45或46层动词吗?否--于是不在x之前的空格处折转。而是,回到步骤Q20并检查在x之后的分段中的另一个动词。(如果在该段中再没有41层动词,那么步骤Q20直接询问步骤Q34关于42层动词。类似地,从步骤Q34到步骤Q36直接询问43/44层动词,并从步骤Q36至步骤Q38直接询问45/46层动词)。
是--进到步骤Q40。
Q33.[“yes”到 Q22,“No”到 Q23、25、27、29、30或31]进到Q33A。
Q33A.x是45或46层动词?否--在x之前的空格中可能折转,但是首先检查(x+n)。回到步骤Q6。
是--进到步骤Q42。
Q34.在该段(或剩余段)中存在任何42层动词吗?否--进到步骤Q36。
是--进到步骤Q35。
Q35.在该段中,对于第一个(下一个)42层动词x,x超出最小行值(>MIN)吗?否--回到步骤Q34并检查在x之后的分段中的下一个42层动词。
是--进到步骤Q22。
Q36.在该段(或剩余段)中存在任何43层动词或任何44层动词吗?(注意,在该步骤中寻找在层43或44的动词]?Q37.对于在该段中的第一下(下一个)43/44层动词,x超出最小行值(>MIN)?
否--回到步骤Q36并检查在x之后的分段中的下一个43/44层动词。
是--进到步骤Q22。
Q38.在该段(或剩余段)中存在任何45层动词或任何46层动词吗?[注意在该步骤中寻找在层45或46的动词]?否--回到步骤18的常用算法并以连接字层b50重新开始询问。
是--进到步骤Q39。
Q39.对于在该段中的第一个(下一个)45/46层动词,x超出最小行值(>MIN)吗?否--回到步骤Q38并检查在x之后的分段中的下一个45/46层动词。
是--进到步骤Q22。
Q40.[“Yes”从步骤Q32A]。x是45层动词吗?否--[因此x是46层动词]。在x之后的空格处折转。然后进到步骤Q19。
是--进到步骤Q41。
Q41.[x是45层动词]。(x+1)是动词吗?(注意至今,如果(x+1)真的是动词,那么(x+1)应是45或46层动词]否--然后不在x之前的空格处折转。而是回到步骤Q38并检查在x之后的分段中的下一个45/46层动词。
是--不在x之前的空格处折转。而是,在(x+1)之前的空格处折转,(它还是在x之后的空格)。将最新形成的分段设置在LANE X(相对于原来分段/句子的其他先前折转代),空隙D。然后进到步骤Q19。
Q43.x是“c”形式还是“f”形式?否--进到步骤Q45。
是--进到步骤Q44。
Q44.(x-1)是字“to”吗?否--进到步骤Q45。
是--在“to”之前的空格处折转。如果就在“to”之前的字是“and”或“or”,那么在“and”或“or”之前而不是在“to”之前折转。如果“and”字或“or”字以及字“to”大于最小行值(>MIN),那么在字“and”或字“or”或字“to”之前折转,无论哪个在先。如果在x之前的字“and”或字“or”或字“to”小于最小行值(<MIN),那么不折转--而是回到步骤2并检查在x之后的分段中的45/46层动词。
把新段设置在LANE X(相对于原来分段/句子的其他先前折转代),空隙C中。然后回到步骤Q19。
Q45.(x-1)是在限定性主语代名词表[表x99;这些字是I,we,he,she,they,who,等等]吗?否--进到步骤Q46。
是--在x之后的空格处折转。将新段设置在LANE X(相对于原来分段/句子的其他先前折转代),空隙D中。然后进到步骤Q19。
Q46.(x-1)是在前限定词表[y99]吗?否--进到Q46A。
是--不在x之前的空格处折转而是回到步骤Q38以检查在x之后的分段中的45/46层动词。
Q46A.x是“f”、“d”或“g”形式吗?否--进到步骤Q47。
是--在x之前的空格处折转。如果字“and”或字“or”是在x之前的字(x-1),那么不在x之前折转。而是,如果“and”字或“or”字大于最小行值(>MIN),那么在字“and”或字“or”之前折转。如果在x之前的字“and”或字“or”小于最小行字(<MIN),那么不折转--而是回到步骤38并在x之后的分段中检查45/46层动词。
Q47.x是45层动词吗?否--不在x之前的空格处折转并回到步骤Q38来检查在x之后的分段中的45/46层动词。
是--进到步骤Q48。
Q48.(x+1)是在后限定词表中的字[z99]吗?否--不在x之前的空格处折转并回到步骤Q38来检查在x之后的分段中的45/46层动词。
是--在x之前的空格处折转。(如果字“and”或字“or”是在x之前的字,那么不在x之前折转。而是,如果“and”字或“or”字大于最小行值(>MIN),那么在字“and”或字“or”之前折转。如果在x之前的字“and”或字“or”小于最小行值(<MIN),那么不折转-而是回到步骤38并检查在x之后的分段中的45/46层动词。)把新分段设置在LANE X(相对于原来分段/句子的其他先前折转代),空隙C中。进到步骤Q19。
(动词循环结束)。
本发明的附加方面运用阅读者-执行者动作增强文本通过用阅读者或阅读者-执行者的动作作为输入并用多种无线视听效果作为输出,可以增强文本呈现。在一个实施例中,为了得到良好的效果阅读者或阅读者-执行者大声朗读文本,同时改变间距(pitch)、音调、音量和停顿。术语“阅读者-执行者”用来与增强文本的阅读者区分开来,且除了说话之外注意大声朗读还可以包括多种动作。记录口头文本用于显示文本。在一个实施例中,电子记录口头文本并分析它的口头动作属性,诸如,间距、音调、音量和停顿。在较佳实施例中,分析口头文本属性,而且除了口头文本之外还存储经分析的属性。存储并映射诸如间距、音调和音量的属性与同样被存储的文本字母、音节和字相对应,从而可以与原始文本相对应的方式提取和再现属性。可呈现阅读者-执行者动作属性作为显示属性,诸如,字体、亮度(intensity)、字体线厚度、字体字符高度、字符颜色、背景颜色、字符间的间隔、字间间隔、线间间隔和句子间间隔。
在本发明的一个例子中,再现阅读者的音量作为字体强度,并再现间距作为字体厚度、其中再现更高间距作为更窄字符和再现更低间距作为更宽字符。字体强度可参照与本机背景象素不颜色不同的每单位面积的象素组的数量。在一个例子中,强文本是在白色背景下的黑色文本,而较前文本是在白色背景下的灰色文本。在本发明的另一个例子中,根据间距改变字符颜色。例如,更向着ROYGBIV光谱的红色端再现较高间距字,而更向着ROYGBIV光谱的紫色端再现较低节拍字。在另一个例子中,根据阅读者-执行者的间距,将文本从文本的正常水平基线偏移。一个实施例对于高于平均间距的情况将文本向上偏移,而对于低于平均间距的情况将文本向下移。
在本发明的另一个例子中,在增强文本中以字母、字和句子的间隔再现阅读者-执行者的间隔和具体字的发音的持续时间。可以记录阅读者的字发音时间和字间和句子间间隔,允许测量正常字间和句子间间隔。可以在字的字母之间附加间隔,再现发音比正常情况慢的字。通过使用大于在显示文本中的正常字间距离隔离,可以再现比正常情况更长的字间时间空隙(time space)。通过在新行中显示分开的字或短语,甚至可以再现更长的时间空隙。可以在新行中的分开字或短语的形式显示很长的时间空隙,其中分开字或短语被垂直分开比正常情况更大的距离。
手势在本发明的另一个方面,在阅读期间记录的阅读者-执行者动作包括手势和手指动作。最好将手的位置和方向记录和存储在与大声读出的每个字相对应的位置。方向是指指向手、手指或手掌的方向。在两维平面中,可将方向记录为两维矢量。在三维模型中,可将手记录为三维矢量。可将位置记录为与阅读者-执行者的肩膀或其他身体参照点相关的位置。
在所选的适当文本选择中,可根据文本内容改变文本的垂直和水平偏移量。一个这样的例子是显示句子“一方面…”和“另一方面…”。可向左边水平地显示第一短语,同时可将第二、相对句子水平偏移到右边。类似地,可用垂直偏移来对比手动作,诸如,“He promised this,but delivered onlythis”。
可用已知的技术(诸如,在手头的战略位置(strategic location)上红外线反射点的偏移量),可记录手的位置和方向。可捕获和存储投射的红外线的反射,允许后来再现手移动。以另一种方法,阅读者-执行者运用带手套的手,并通过将手与更暗的背景的对比直接记录手的位置。
脸部表达在本发明的另一个方面,在阅读期间记录阅读者-执行者的脸部表达并根据所读的字存储它。一个实施例记录眼睛或眼皮形状、眼睛张开、眉毛位置头部位置。下颚位置和嘴巴形状。阅读者-执行者的脸部表情动作可逐字记录并逐行回放。在一个实施例中,用精确的位置来呈现整行的位置。在另一个实施例中,用平均位置来表示整行的位置。在另一个实施例中,用脸部表情来改变文本本身的呈现。在一个例子中,嘴巴张开的程度用来改变某些闭音节的张开程度,诸如“O”。阅读者-执行者的嘴巴张得越大,O就越大而且其中的开口越大。在另一个例子中,某些字母的高度(诸如,“W”或“T”根据眼皮的张开程度而变化。上述脸部表情呈现与前面在本发明的一个方面中所述的文本渐亮相结合。在一个实施例中,在渐亮或加亮的字上再现人脸部素描。在生动的脸部上的脸部特征动态变化。在另一个实施例中,在每行文本的旁边呈现一张脸,同时用渐亮的线使脸部生动起来。在另一个实施例中,在要增强的短语旁边呈现一张脸,而且在脸上显示静态的脸部表情。
沿着曲线的文本呈现在本发明的另一个方面,根据阅读者-执行者动作,沿着曲基线而不是传统水平直线显示文本。在一个实施例中,曲线是不可看见的或者基本上比偏移的文本难看见。在一个实施例中的曲线(curve)根据阅读者-执行者的一些动作而变化。在一个例子中,间距越高,那么曲线的水平偏移就越大,而间距越低,那么曲线的水平偏移量就越小。可根据语音字典来获得字间距,例如,可查询字的间距而不是从讲话者的声音中获得。在另一个例子中,根据阅读者-执行者的声音的音量来改变水平偏移量。在一个例子中,显著抑制阅读者-执行者动作,从而保持均匀光滑的曲线。
文本弯曲(bending)介绍在口语中,字间的音调、间距和音量的变化产生可被认为是曲线或轨迹的信号。从一句中的几个字的发音来看,在“听觉黑板(aural chalkboard)”上这种曲线的开始部分“下拉”。听者用它的初始曲线在头脑中总体上建立和参与整个短语或句子的结构,即使在说话者完全说出之前。
这种有用的信息使得说话-聆听都十分有效。然而,当前文本呈现技术不能容易地允许系统一致地、有意义地以图解的方式描绘这些听觉曲线。取而代之的是,阅读者必须通过解码文本的码元并在头脑中总体上重新产生句子的听觉呈现,来唤醒(resuscitate)句子的雄辩力(elocutionary force)。
在句子中,可通过有特征的诗词结构(prosodic contour)的内容分析来识别分段。本发明描述产生句子分段(sentence segment)的这些轮廓的图解相关性的方法以及将这些图解子单元综合成更大结构以总体上描述句子的方法。
处理1.运用前面所述的“句子”折转来识别句子分段。
2.定义一组曲线并将每个句子分段分配给这些曲线之一。
3.在阅读视场(reading field)上以清楚地描述分段的句子(例如,从上至下)的模式来安排曲线;可稍微改变分段在这些排列中的位置,而不改变隐藏的句子,从而最优化对曲线的了解和句子的阅读。
在图13中描述主曲线340的例子,它定义了分段曲线的尺寸和方向。一系列字母(如344的字母“H”)位于曲线340。在曲线顶部的箭头342表示在阅读视场上并根据其他句子分段曲线取向句子分段曲线从头字母(A至G)到尾字母(H至K)的位置。
分段的开始部分的情况确定了在曲线上的头字母位置。分段的尾部情况确定了尾字母位置。在图14中的表格350中总结了这些情况。
在句子折转算法已识别将占据分开行(在本说明书中,它们将占分开曲线)的句子分段之后,测量该段的长度。画出与其长度相对应的线。于是,“弯曲”该线,从而最新形成的曲线的形状符合在图13和14中特定的头-尾字母位置。还识别“摇摆(dangle)”点或在曲线的顶部的箭头位置。
由它的长度(以字符为单位)确定分段曲线的尺寸;然而,通过上述处理来确定分段曲线的形状和方向,而与它的长度无关。如果分段很短,从而弯曲的段太小且曲线太极端,那么识别最小曲线。于是,把带有H尾部的短分段设置在由它们的开始情况指定的头字母处-但是该段的剩余部分将遵循由最小曲线路径指定的曲率并且还由最小曲线指定“摇摆点”。类似地,带有I、J和K尾部的短分段可设置在由它们的尾部情况特定的尾字母,而且该段的剩余部分还遵循由最小曲线路径以及它的“摇摆点”特定的曲率。
对于最大线长度的参数很可能防止分段太长,即,具有那么多字符,从而它们的曲线太大并相对太平坦。
设置最新形成的曲线,在该例子中,在顶部具有句子的第一段。在一个实施例子中,摇摆点的位置是下一段的函数,也可成为在它之前的分段的尾部的函数。在所有的曲线都在适当的位置之后,将对于每段的文本字符设置在该曲线上,并擦去摇摆点。图15和16示处该处理的例子。
文本弯曲处理赋予的新质量该文本呈现方法允许阅读者通过以其字符的布局的特殊曲线识别各分段的结构和句子整个结构的功能(不只是连续位置)。这提供图解信息,它利用阅读时对句子分段的认知处理。这与字-字之间的间距变化以及语音中的语调变化参数听觉曲线以有助于听者预测即将到来的短语有多长以及它是否将成为一句或从句的结尾。
传统文本只用标点符号,它们通常不被发现,直至阅读者已读完整个短语-这阻止阅读者在读完整段之后在头脑中建立所阅读的相应音韵模型(Phonological model)。通过我的处理产生的曲线允许预先知道这类型的短语结构和功能信息,从而可在字识别和短语理解上用到该信息。通过除了标点符号之外的内容(即,连接字)识别这些曲线。它们还通过描绘一段的头部和尾部的情况,进一步区分在句子转折处理中产生的分段。
现在参照图15,由算法产生的以级联形式示出的Gettysburg地址的第一句(在前面的“处理”中的步骤1)。行386特定对于该句的每行的开始字母382和尾字母384。这决定了曲线类是要分配给每段的曲线。
图16示出从步骤3的这些单个分段曲线的集成。例如,在曲线400上弯曲句子408,以尾部位置A开始,以尾部位置404结束,并具有标为406的摇摆点。通过将“摇摆点”大致设置在它们上面的曲线两端长三分之二,将后来的分段设置在前面段的下面。其它的基于内容的规则可用来最优化这些“摇摆点”位置。在一个实施例中,不出现行和头部/尾部字母,只出现文本的字母。曲线410、412、414、416和418示出图15中的例子产生的一系列弯曲文本曲线。
曲线增强了文本呈现的“视觉诗意”。每一句获得更独特的视觉形象。曲线还打破了现行呈现文本的单调性,这可能缓解眼睛肌肉的疲劳。
文本层次结构显示本发明的另一个方面提供一种经改进的装置,用来显示文本层次结构和在那些层次中要阅读的文本位置。传统文本层次结构(从高级到低级)包括音量数、节、章、分节、页、段落和句子。本发明提供一种通知阅读者每一层次的单位数以及所读的文本在该层的位置。
参照图17,示出未打开的书本200。阅读者选择要打开的书本,标为“X”。可用现有技术中已知的任一种方法执行阅读者选择,包括指针移动和用鼠标选择。现在参照图18,已选择书本200,打开并在基本上充满显示屏201的平面202内显示。打开的书本200以显示大量的章节206,每个章节都具有露出的边缘204。在一个实施例中,章节边缘上有章节数,如208所示。在图18中阅读者选择的章节4用“X”表示,导致其他章节在章节4处分开,如图19所示。
现在参照图19,示出选择章节4的结果。示出将章节206分开以显示章节4,露出在该章节中的页210。页210具有露出的垂直边缘212。在本发明的一个实施例中,编号并安排各页,从而以打印编辑的书本形式反映(mirror)各页。在本发明的另一个实施中,对各页编号以利用文本呈现的增强格式,而不尝试反映任何打印编辑的书本。具体地说,可格式化各页并对其编号以仅仅包含最大数量的段落或最大数量的字,无论先达到哪个目标。在该实施例中,无需跨页断开段落。在该实施例中,最好将段落数和字数的最大值设为接近正常出版页的值。在本发明的又一个实施例中,将一章中的页数设为最大值,例如50,其中将段落均分为50页。在这最后一个例子中,在显示屏上最多只显示50页。在图19中以标号“X”表示阅读者选择页3,导致这些页在页3处分开,如图20所示。
现在,参照图19A,在另一个实施例中示出在图18中的选择章节4的结果。示出分开的章节206以显示章节4,在该章节中露出页210A。页210A露出水平边缘212A。在该实施例中,用边缘来表示文本层次结构的嵌套格式(nesting),其中等级越低,边缘的长度越短。在图19A的例子中,页210的边缘取向基本上与章节206平行,但是页210A的边缘212A的长度比章节206的边缘要短。
现在参照图20,示出选择页3的结果。页210在页3处分开以显示其中的段落214。在最初的显示中,只显示段落水平较低边缘216。在图20中以“X”表示阅读者选择段落3,导致该段在段落3处分开,如图21所示。
现在参照图21,示出选择段落3的结果。段落214在段落3处分开以露出其中具有垂直边缘220的句子218。在一个实施例中,最初显示第一句,准备阅读,如第一句222所示。在另一个例子中,当打开段落时,最初只显示边缘220。在图21中用“X”表示阅读者选择句子4,导致句子在句子4处分开,如图22所示。
现在参照图22,示出在223选择句子4的结果。句子4是当前要阅读的句子。在一个实施例中,通过阅读者启动计算机外部装置(诸如,鼠标键),表示已读完句子4。在另一个实施例中,通过计算所得的与句子的权重和阅读者的最近阅读速度相对应的经过的时间周期表示已读完一句。在较佳实施例中,完成句子阅读可在基于时间模式和阅读者启动模式之间转换。在一个实施例中,阅读者可运用输入(诸如,滑动滚动条)来调节速度。这允许阅读者容易地增速和减速以适应要阅读的一段。
当表示完成阅读句子时,将下一句进到适当位置。在图22中,在一个实施例中,句子4快速滑到左边以露出下面的句子5。在另一个实施例中,在该段中句子4和所有后面的句子都滑到左边一个垂直边缘的宽度,其中句子4继续左滑以取代在句子3下面的位置。在这最后的实施例中,通过将句子移动到移动者可看见的句子文本之前,可将阅读的句子保持在相同位置上。在阅读该段中的最后一句之后,打开下一段以露出其中的句子,与图21的显示非常相近,但是下一段被露出的或被下拉了。
在本发明的较佳实施例中,用具有另一种水平和垂直露出边缘的平面表示另一文本层次结构。运用当前Microsoft Windows术语所表示有所不同,用另一种水平和垂直平铺平面表示另一种文本层次结构。在一个实施例中,外部、更高级文本层次出现在内部、更低等级文本层次之后,同时在打开的更高级文本层次上显示下一个较低级文本层次。在另一个实施例中,外部、更高级文本层次显示更靠近阅读者,而内部、更低级文本层次远离观察者。在该实施例中,最好不显示当前打开的文本层次,除非当前正在阅读句子。在运用水平平铺文本单元并打开文本单元号3时的一个例子中,文本单元作为展开的卡片层叠显示,其中1在2的顶部,2在3的顶部边缘的顶部和4在3的下面,5在4的下面。朝着平面顶部的单元比朝着屏幕的底部单元更加靠近观察者。这是在图22的实施例中相对与段落用到的布局,其中段落号3打开。
在另一个例子中,文本单元1至3如前所述,但是文本单元4在文本单元3的下一边界的顶部,而文本单元5在除了文本单元4的边缘上部之外的所有部分的顶部。在这种布局中,文本单元进一步从外边缘离开观察者,直至显示打开的文本单元,此后文本单元更加靠近观察者直至达到相对外边缘。该布局与具有一系列嵌套的窗帘相一致,外部窗帘在前面,较里的窗帘在外部窗帘之后,而更里的窗帘露出比外部窗帘更小的隙缝。
一般而言,边缘取向根据所显示的文本层次程度而变化。虽然所示实施例具有水平和垂直相互交替的边缘,90度偏移,一般而言,该偏移可更小。在一个例子中,最高层具有水平边缘(从9点钟延伸到3点钟),而且下一个较低层偏移30度,从10点钟到4点钟。
现在参照图22,解释要阅读的当前“书本”的显示,而不参照阅读者将如何阅读特殊句子。下一个较低文本层次用水平平铺的章节206表示,在章节206中具有露出的水平较低边缘204。在章节206上重叠显示下一个更低文本层次,页210。垂直平铺的页210具有露出的垂直边缘212。在页210上显示下一个较低文本层次,段落214。水平平铺段落214,具有露出的水平边缘216。垂直平铺下一个较低文本层次,句子218,具有露出的垂直边缘220。
阅读者能够看见要阅读的句子在该段落中的位置、段落在页中的位置和章节在书本中的位置。运用已知的三维阴影和透视显示技术,例如,平面边缘阴影和斜切,嵌套平面文本层次结构可赋予阅读者对阅读的文本位置的三维感受。
在一个实施例中,在水平滑动平面内显示句子。在另一个实施例中,在水平滑动的一系列水平平铺平面内显示句子,与图22中的段落214相类似。在一个实施例中,通常将句子设为在水平或垂直的平面显示,同时水平和垂直平铺平面交替显示更高级文本层层次。
在一些文本实体中,可能存在大量单元,例如,在章节中大量页或不具有任何章节的书本。为了处理这种情况,可产生人工分层。在一个实施例中,可产生“10级”层次。例如,如果章节数大于50,那么可以产生“10个章节”的人工单元(autificial unit)。可产生该人工单元作为要如此相似的更高级文本层次或者作为要平铺的类似等级单元,但是类似等级单元的显示方法不同。在一个例子中,“10章节”的一个单元被垂直平铺。在另一个实施例中,水平平铺“10章节”和章节单元,但是“10章节”单元具有更暗的颜色或者不同的呈现。
跨相对(opposed)页的文本显示在本发明的另一个方面,提供在后面的页中显示文本的方法。参照图23,示出具有右边缘252的左页250,如具有左边缘255的右页250,其中左边缘255被右边缘252遮挡了。显示页号3作为左页250,并显示页号4作为右页254。用“X”显示要阅读的页号3。一旦完成阅读页号3,可通过阅读者动作或通过完成时间间隔向阅读系统显示它。一旦完成阅读页号3(用箭头251表示),在页号3“之前”显示页号4,其中右页254左边缘255遮挡左页250右边缘252。一旦完成阅读页号6(用箭头253表示),显示新页,其中显示页号5作为左页250并显示页号6作为右页254。通过这种方法,左右交替页来模仿阅读者熟悉的类似的纸张书本的模式。
现在,参照图24,示出本发明的另一个实施例。显示具有右边缘262的左页260,如右页264具有被右边缘262遮挡的左边缘265。显示页号3作为左页260,显示页号4作为右页264。用“X.”显示页号3。一旦完成阅读页号3(用箭头261表示),将页号4拉到前面,从而左边缘265遮挡右边缘262。此外,一旦读完页3,去除页号3,并用页号5代替。运用传统的、纸张装订是不能实行这种结构的。一旦完成阅读页号4(箭头263所示),将页号5拉到前面,并去除页号4和用页号6代替。
如图24所示的实施例具有允许文本分段跨页断开的优点,同时还在屏幕上提供要阅读的下一个文本。这允许阅读者从前面显示的文本处前进,而不必等待新显示的文本。例如,阅读者可阅读跨页号3和4断开的文本分段,而不要求对要显示页4的内容暂停。阅读者可阅读跨页号4和5断开的文本分段,而不要求显示页5的内容暂停。实质上,阅读者能够阅读电子显示的文本,无需等待页倒转(flipping),同时在相对页上具有类似的文本呈现,回到装订的纸张书本。不装订图24的中间结构。
从前到后阅读的文本显示现在,参照图25,在文本280的平面显示器上显示本发明的另一个方面,它具有第一文本行282,第二文本行284、第三文本行286和第四文本行288。运用透视显示技术,使第一行282比第二行更接近阅读者,第二行284比第三行286更接近阅读者和第三行286比第四行288更接近阅读者。在本发明的一个实施例中,一次在一个屏幕或显示页上显示文本,其中在显示器上显示所有行,甚至是可阅读的最远行。在一个实施例中,将要有效阅读的行表示为比没有阅读的文本行更亮或具有更高对比度。通过以阅读者的估计阅读速度,推进加亮的行宽指针,可以估计有效阅读的行。在本实施例的变化中,在有效阅读的行上推进行宽透明过滤器,从而不在要阅读的行上的文本稍显模糊并比要阅读的文本难读。
现在参照图26,示出图25的显示作为改进的显示页290,同时向前推进文本一行。在显示器上向前压出第一行282,同时第二行284在最前部。在本发明的实施例中,可一次将文本向着阅读者前推一行。以当前技术,通过使更低的文本行具有更大的字体和更大的行间距,可获得透视效果。还可用三维字体。在较佳实施例中,在处理之后运用上述折转方法,显示文本作为增强文本。
在另一个实施例中,当从下至上阅读时,从前至后显示文本,如上所述。在本实施例中,静态显示文本,一次显示一个屏幕,同时在多行块(chunk)中翻页文本而不是平滑的滚屏。
如图25和26所示的实施例利用人进展选择的自然图象处理。具体地说,人们在阅读之前,处理信息同时行走或者前移,更新的信息首先在远处出现并随着时间和经过的风景,移得越近。从上至下写英语,以允许作者阅读在前面的一行中写的东西。从下到上写可能覆盖作者手写的行。这种情况对于左手写字的人来说是很常见的。英语从左写到右,允许右手写字的人看到他们刚写的字。左手写字的人覆盖了他们刚写的字,而且经常为了尝试补偿这一缺点而采取一种古怪的手写位置。因此,出版时采用顶到底的手写文本方式,但不是必须的。本发明从上到下显示文本,允许更加自然地但是以非传统显示格式显示。
随文本层次改变过渡方式在本发明的一个方面,文本显示之间的过渡(transition)方式按文本的层次或层次等级排列的函数而改变。在一个实施例中,一个段落中句子之间的过渡不同于段落之间的过渡。句子之间的过渡可按句子在段落内的位置的函数而改变。段落之间的过渡按段落在章节内的位置或该段落所在的其它文本层次的函数而改变。
在本发明的一个例子中,在显示下一个句子前,通过使刚显示的句子渐隐来实现段落之间的过渡。渐隐可以是一章节中第一段落的细粒(fine grained)渐隐、一章节中最后一个段落的粗粒渐隐以及位于中间的段落的连续粒度(细粒与粗粒之间)。在本发明另一个例子中,可在更右边的位置、更下边的位置或这两者处开始,显示一段落中的每个相继句子。这样,一段落中的相继句子的右边、下边或这两者将随段落的逐渐出现而前进。
在本发明的另一个实施例中,一乐器所弹奏的音乐键与待显示的段落相关。在一个例子中,同一键和乐器与每一段落相关。在开始显示段落时,相应于段落中句子数目的许多音符被降低了该键中标度。在开始显示每个句子时,该标度中的相应音符被升高或降低其标度。在一相应的例子中,弹奏相应于该句子的数目或位置的许多音符。在一个实施例中,如果句子包含不止一个从句,则弹奏一和弦。在一个实施例中,如果句子包含诸如“despite”或“however”等对比语法,则可弹奏一段小调或不协调的和弦。在一个实施例中,对每一段落使用不同的乐器和/或键。
暂时突出(protrusion)在本发明的另一个方面,选择某些单词从该句子中的其它单词中暂时突出。在一个例子中,在显示该句子中的其余单词前显示选中的单词。在另一个例子中,当不再显示其余单词后显示选中的单词。在又一个例子中,在显示其余单词前以及在不再显示其余单词后显示选中的单词。可以相信在其余单词前或后的显示可吸引读者更多的注意力。可以相信在读者阅读该句子的其余部分前,在其余单词前显示的单词给读者留下印象且读者将对其进行部分分析,可以相信这使得读者知道该单词,从而读者不会不知道而且不必退回。
在一个实施例中,根据预测读者对选中单词所感到的困难程度来选择单词。在一个例子中,选择暂时突出某一教育水平以上的单词。在另一个例子中,选择暂时突出发音-拼写失配的单词。发音-拼写失配指从拼写中不能得到其发音的单词。在又一个例子中,使用单词频率字典,选择暂时突出使用频率低的单词。
散文(prose)着色在本发明的另一个方面,结合文本分析使用颜色,以显示句子各部分的相互关系。该方法的一个实施例可包括以下所列举的步骤。
a.分析句子,根据正文段的相互关系把句子细分成多个正文段。
b.把所述正文段组织成具有根父节点和多个父节点及子节点的树。
c.根据与父节点的关系给每个子节点指派一属性。
d.给根节点指派一种颜色。
e.对于根节点以下的每个子节点,根据以子节点与父节点之间的关系所修饰的父节点的颜色,给每个子节点指派一种颜色。
f.重复步骤e,直到给所有的节点都指派了一种颜色。
g.使用树中所指派的颜色,以基本上与作者所指定的相同顺序按行来显示所述文本。
现在参考图7,在上述算法的一个实施例中,从实体、动作和修饰所构成的组中选择父-子关系。如树301所示,把原句300细分成三个正文段302、304和306。正文段302与父体300有实体关系,段304与父体300有动作关系,段306与父体300有动作关系。如段300所示,位于308处的第0代父体300具有ROO-GOO-BOO的初始三基色(color triple)(红绿蓝)。加到每一代子段的颜色量可以是其代号的函数。在图27中,把100个颜色单位加到310处的第一子代,把50个颜色单位加到第二代312,把25个颜色单位加到第三代314。按父-子关系的函数来加颜色本身。在图27中,给实体加蓝色,给动作加红色,给修饰语加绿色。
在图27中,段302与父体300有实体关系且处于第一代水平,因而加上100单位的蓝色。每一代处所加颜色量减少。继而,每个单词在该句子中的作用主要受到成为该单词所在的最大段的作用的影响。
散文着色过程所提供的新质量语音是一种通信系统,其中诸如单词等各个表达单元具有分立的含义,由一组单词的关系来构成较大的含义。单词序列是用来构造单词关系的含义的重要结构信息。在单词序列内,较小的单词序列具有特定的单词关系。这样,两个或更多较小单词序列在一较大单词序列内的顺序也是用来构造所有单词关系的含义的结构信息的一种形式。
除了选择表达单词的顺序以外,说话者还以除指示单词是什么的音素的简单发音以外的特定声音属性来发出每个单词或单词组的音。这些附加的声音属性包括说单词的音调、音量和音色。这些声音属性的折合和组合在于,将相对于这些附加声音属性所对应的短语作为一个整体来修饰该短语内的特定单词。
因此,诸如音调、音量和音色等附加的发音属性(以下叫做语调属性)代表可被组合的值的多维系统,它可跨过多个单词组的连续区别水平折合成较大单词组在内的较小子单元。这些值代表该单词(或这些单词)与该单词所在的单词组的较大单元的关系。
此外,把每个子单元保持在适用于其最接近上下文的语调值范围内。较大的单元自己可包含几个子单元,类似地,较大单元将涉及包含与其类似的子单元的更大单元,其中存在适用于此较大上下文的一个这样的相同值的变化。
例如,仔细地试听这句句子“The purple hat of the purple clown was putinto a purple box.”-将认识到,每个单词“purple”的语调值以音调的方式把单词“purple”与在每种情况下单词“purple”所修饰的较大单元中分离开来。在第一种情况下,“The(purple)hat”是整个句子的主实体在此情况下,从用来代表主实体的值的基线组来建立“purple”的语调值。
在第二种情况下,短语“of the(purple)clown”本身是与整个主语有修饰关系的段。因此,第二个“purple”音量比第一个“purple”低,但第二个“purple”仍有一音调,从而第二个“purple”以与第一个“purple”以音调的方式与“clown”分离,如同把它自己同“hat”分离的方式那样。
在第三种情况下,以不同的音调量纲(音色更尖锐)来改变整个短语--“wasput into a purple box”--以指示该段是相对于句子的“动作”量纲把它与该句子的前半部分分离。该短语的子单元保持此基线音色量纲值,然后根据子单元与它们所在的较大段的关系改变每个子单元的语调值来修饰该短语。这样,第三个“purple”在它与“the(purple)box”的关系的较小上下文中仍旧有这样的一个音调,该音调以音调方式把此“purple”与“box”分离,但该“purple”仍带有比前两个“purple”稍为尖锐的音色,因为它仍旧处于作为“was put into a(purple)box.”一部分的“动作”量纲中。
为了进一步显示该语调(intonational)结构,注意在下列句子“The purplehat of the purple clown was put into the hat box”中的字“hat”是如何具有两组不同的语调值。在该句中的第二个“hat”具有一组语调字,这表示了对于该句中的动作分段(“was put into”)的实体(“box”,宾语)的修饰特性。相反,第一个“hat”具有一组语调值,将它作为整体设为句子的主实体(principleentity)。在这第二个例子中的第二个“hat”实际上具有一组间距、音调和音量值,它等同于在第一例句中的第三个“purple”。
如上所述,在语音中的这些语调量纲具有可组合和计算值。这些语调量纲还在它们与携带各字义信息的字单元同时被感知方面是透明的因此,每个口语字都带有语义和句法信息的数据组。通过这种方法,语调的量纲是没有注解的;即,它们不需要附加表达。例如,一个人不在句子的每个短语之前说话。“主语-the purplehat-主语修饰语-of the purple clown-谓语-Was put into-宾语-the purplebox.”然而,现有的表达在一个句子中字组之间的关系的方法(诸如,语法分析树或语法图解)并不明显,但是依靠附加的注释和符号来标注字组。反过来固定这些标记并不组合或交换跨子单元连续层区别的值,或者根据它们的上下文限制这些值。
因此,理想的是增强文本呈现应利用视觉属性(这与语音的语调属性相类似)来丰富文本的实际字的展现。这些视觉属性应尝试可组合及可交换值的多维系统,它们表示字的属性以及它们的字特定意义。这些视觉属性还应是明显的,即,与感知字本身同时可被感知。
此外,除非文本呈现方法系统地保证无异议地呈现作者特定字序列,否则它不是在本说明书中讨论的文本呈现,而仅仅是一种表明文本分析的一些狭窄方面的结果的方法,它将作者的消息的完整性放在比这些分析对象次要的地位。
上述“散文着色”处理唯一地表示了在清楚的文本呈现中这些语音的语调传统。此外,“散文着色”处理本身是一种新颖的句法分析方法,其中表示在子段和父段之间的关系的实体、动作和修正特性,也跨一句子的连续层区分来进行组合和交换。
换句话说,不仅仅文本的增强的视觉呈现应渴望语音条件(conditions ofspeech),而且句法分析本身应渴望语调条件。测试语言分析中的语法规则的基本方法是运用语法规则产生一系列字,然后聆听所提出的句子来确定它是否“发音正确”。如上面对于语调值所述的那样,可由子单元和较大单元的关系属性的多维系统中介(mediate)关于直觉地认为“整个句子”是有效提议的内部“推理”,其向外表达方法是语调。头脑的数学方式可以是音乐的。
通过上述文本折转或标准文本显示(但是着色的),可用该方法来显示文本。本方法还可暂停将一个句子分成字。例如,该算法可在固定数量的层次之后停止或使短语不变,使短语中的所有字保持相同颜色。
在前面的描述中已说明了由本文件揭示的本发明的多种特征和优点。然而,应理解,本说明书在多个方面只是示例而已。可对其进行细节上的变化,特别是组合、分开和安排步骤,而不超出本发明的范围。当然,用所附权利要求书中的用语来限定本发明的范围。
附表1b10 afterb10 althoughb10 as much asb10 becauseb10 beforeb10 howb10 ifb10 if onlyb10 inasmuch asb10 in caseb10 in order thatb10 exceptb10 in lieu ofb10 in spite ofb20 butb20 for whomb20 in whichb20 for whichb20 above whichb30 Ib30 hee40 cane40 can′te40 cannote40 coulde40 could note40 couldn′te40 I′lle40 he′lle40 it′lle40 I′de40 he′dc40 have toe40 had toc40 doc40 do notc40 don′te40 doese40 doesn′te40 does note40 dide40 did note40 didn′tc41 havee41 I′vee41 have note41 haven′td41 hadd41 had notd41 hadn′tg41 havinge41 hase41 has note41 hasn′tC42 bed42 beeng42 beinge42 ame42 ise42 aree42 I′me42 he′se42 it′se42 am note42 I′m note42 are note42 aren′te42 isn′te42 he′s notc45 awaked45 awakenedg45 awakinge43 awakese43 awokee43 atec45 abandond45 abandonedg45 abandoninge43 abandonsc44 abstaind44 abstainedg46 abstaininge44 abstainsc43 acceptd45 acceptedg45 acceptinge43 acceptsc43 accompanyd45 accompaniedg45 accompanyingc43 accompaniesc43 account ford45 accounted forg45 accounting forc43 accounts forc43 accumulated45 accumulatedg45 accumulatinge43 accumulatesc43 accused45 accusedg45 accusinge43 accusesc45 actd45 actedg45 actinge45 actsc43 addd45 addedg45 addinge43 addsc43 adjustd45 adjustg45 adjustinge43 adjustsc43 adoptd45 adoptedg45 adoptingc43 adoptsc43 advised45 advisedg45 advisinge43 advisesc43 affirmd45 affirmedg45 affirminge43 affirmsc46 aggregated46 aggregatedg46 aggregatinge46 aggregatesc44 agreed44 agreedg46 agreeinge44 agreesc43 agree tod45 agreed tog45 agreeing toc43 agrees toc43 agree upond45 agreed upong45 agreeing uponc43 agrees uponc43 allowd45 allowedg45 allowinge43 allowsc43 allow forc45 allowed forg45 allowing fore43 allows forc43 amendd45 amendedg45 amendinge45 amendsc45 answerd45 answeredg45 answeringe45 answersc44 appeard44 appearedg46 appearinge44 appearsc43 applyd45 appliedg45 applyinge43 appliesc44 arrived44 arrivedg46 arrivinge44 arrivesc43 arrive atd45 arrived atg45 arriving ate43 arrives atc43 askd45 askedg45 askinge43 asksc43 ask ford45 asked forg45 asking fore43 asks forc43 attachd45 attachedg45 attachinge43 attachesc45 attackd45 attackedg45 attackinge45 attacksc43 avoidd45 avoidedg45 avoidinge43 avoidsc43 abrogated45 abrogatedg45 abrogatinge43 abrogatesc43 actuated45 actuatedg46 actuatinge43 actuatesc43 adaptc45 adaptedg45 adaptinge43 adaptsc45 advocated45 advocatedg45 advocatinge45 advocatesc43 allayd45 allayedg45 allayinge43 allaysc43 alleged45 allegedg45 alleginge43 allegesc43 appendd45 appendedg45 appendinge43 appendsc43 arraignd45 arraignedg45 arraigninge43 arraignsc43 authenticatec45 authenticatedg45 authenticatinge43 authenticatesc43 avowd45 avowedg45 avowinge43 avowsb50 bothb50 eitherb60 againb60 asb60 awayb60 besidesb60 alwaysb60 duringb60 byb60 concerningb60 aboutb70 aboveb70 acrossb70 againstb70 alongb70 amidb70 amongb70 aroundb70 beneathb70 besideb70 insideb70 betweenb70 belowb70 beyondb75 atb70 intob75 inb75 forb75 fromb80 ofb81 andb90 allb90 anyb90 anybodyb90 anyoneb90 bothb90 eachb90 eitherb90 everybodyb90 everyoneb90 fewb90 itselfb90 herselfb90 himselfb90 greater thanb95 aw99 advisew99 advisedw99 advisingw99 advisesw99 admitw99 admittedw99 admitsw99 anticipatew99 anticipatedw99 anticipatesw99 avoidw99 avoidedw99 avoidsx99 Ix99 hey99 any99 ay99 hisy99 hery99 itsz99 az99 anz99 hisz99 himz99 herz99 hersz99 itz99 itsz99 allz99 bothz99 everybodyz99 anyz99 eachz99 everythingz99 anybodyz99 eitherz99 fewz99 anythingz99 enough
权利要求
1.一种增强具有作者特定字序列的文本呈现的方法,其特征在于,包括a)从所述文本中提取文本特定属性;和b)根据所述属性改变所述文本呈现,同时基本上保持所述作者特定字序列。
2.一种如权利要求1所述的增强文本呈现的方法,其特征在于,所述文本特定属性包括在文本主体中的文本位置,所述文本呈现包括背景颜色和所述呈现包括根据所述文本位置改变所述背景颜色。
3.如权利要求1所述的增强文本呈现的方法,其特征在于,所述文本特定属性包括文本难度测试,和所述文本呈现包括自动文本前进速率,和所述呈现包括根据所述文本难度测试改变所述文本呈现速率。
4.如权利要求3所述的增强文本呈现的方法,其特征在于,所述文本难度测试包括所述文本的预计发音时间。
5.如权利要求3所述的增强文本呈现方法,其特征在于,所述文本难度测试包括所述文本的预计教育程度。
6.如权利要求1所述的增强文本呈现方法,其特征在于a)所述属性包括标点符号和语音部分;b)提取包括将所述文本语法分析成标点符号和语音部分;c)运用输入和输出规则实施所述改变的文本呈现;d)所述规则输入包括所述语音部分;e)所述增强文本呈现包括视觉属性;和f)所述规则输出包括所述视觉属性。
7.如权利要求6所述的增强文本呈现的方法,其特征在于a)所述规则包括折转规则;b)所述折转规则把所述文本分成文本分段;和c)所述折转规则输入包括标点符号。
8.如权利要求7所述的增强文本呈现的方法,其特征在于,所述折转规则输入还包括语音部分。
9.如权利要求8所述的增强文本呈现的方法,其特征在于,所述视觉属性包括根据所述语音部分显示着色的所述文本分段。
10.如权利要求8所述的增强文本呈现的方法,其特征在于,所述视觉属性包括在新行中显示所述文本分段。
11.一种增强具有作者特定文本序列的文本呈现的方法,其特征在于,包括a)从所述文本中提取文本特定属性;和b)根据所述属性定量地改变所述文本呈现,同时基本上保持所述文本序列。
12.如权利要求11所述的增强文本呈现的方法,其特征在于,所述文本呈现无异义地呈现文本序列。
13.如权利要求12所述的增强文本呈现的方法,其特征在于,所述文本呈现不包括与所述文本相关的任何非文本符号。
14.如权利要求11所述的增强文本呈现的方法,其特征在于,以透视法显示所述文本,从而在其他分段上的文本分段看来似乎更加远离阅读者,从而在从下到上阅读所述文本的过程中,所述文本看来似乎从前到后阅读的。
15.如权利要求11所述的增强文本呈现的方法,其特征在于,所述文本呈现包括显示多个文本分段,每个所述文本分段显示具有起始的水平和垂直偏移,其中根据所述属性在数量上改变所述水平和垂直偏移。
16.如权利要求11所述的增强文本呈现的方法,其特征在于,所述属性包括标点符号和语音部分。
17.一种显示包括字、短语和句子的文本的方法,其特征在于,包括使阅读者-执行者大声朗读所述文本,其中从包括说话、手移动、眼睛移动、头移动和嘴移动的组中选择所述阅读者-执行者执行的动作;电子记录与所述文本相对应的所述阅读者-执行者的所述动作;显示所述文本;根据所述阅读者-执行者动作改变所述文本显示。
18.如权利要求17所述的显示包括字、短语和句子的文本的方法,其特征在于,记录所述口语属性并根据所述口语属性改变所述文本显示。
19.如权利要求18所述的显示文本的方法,其特征在于,从包括间距、音调、音量和字间停顿的组中选择所述口语属性。
20.如权利要求19所述的显示文本的方法。其特征在于,所述文本显示具有根据所述口语属性改变的显示属性,而且从包括字体、亮度、字体线厚度、字体字符高度、字符间间隔、字间间隔、线间间隔和句子间间隔的组中选择所述显示属性。
21.如权利要求18所述的显示文本的方法,其特征在于,记录所述手势,并根据所述手势改变所述文本显示。
22.如权利要求21所述的显示文本的方法,其特征在于,所述手势包括手位置和方向以及手指位置和方向。
23.如权利要求21所述的显示文本的方法,其特征在于,所述文本显示包括根据所述手的水平偏移的函数改变所述文本的水平偏移,而且所述文本显示根据所述手的垂直偏移的函数改变所述垂直偏移。
24.如权利要求18所述的显示方法,其特征在于,记录所述脸部姿势,并根据所述脸部姿势显示所述文本。
25.如权利要求24所述的显示文本的方法,其特征在于,从包括眼睛形状、眼睛张开、眉毛位置和嘴巴形状的组中选择所述记录的脸部姿势。
26.一种显示具有文本特定属性的文本的方法,其特征在于,包括产生曲线;和将所述文本设置在所述曲线上,其中所述曲线形状是所述文本属性的函数。
27.如权利要求26所述的显示文本的方法,其特征在于,所述曲线形状是从包括元音间距、元音音调、元音音量、手势和脸部表达的组中选出的阅读者-执行者的记录呈现的函数。
28.如权利要求26所述的显示文本的方法,其特征在于,所述曲线基本上比所述显示的文本要难看到。
29.如权利要求26所述的显示文本的方法,其特征在于,所述曲线是看不见的。
30.一种显示多个文本层次结构的方法,其特征在于,包括显示第一文本层次作为具有露出的基本上并行的边缘的多个重叠窗口;和显示第二文本层次作为具有露出的基本上并行的边缘的多个重叠窗口,其中所述第二文本层次在等级上低于所述第一文本层次,其中所述第二层次边缘相对于所述第一层次边缘成一角度。
31.如权利要求30所述的显示多个文本层次结构的方法,其特征在于,还包括以所述第一层次的所选窗口,其中所述所选窗口具有其中显示的所述第二层次窗口。
32.如权利要求32所述的显示多个文本层次结构的方法,其特征在于,还包括在所述第二层次中选择所选窗口,其中所述第二所选窗口中有显示的文本。
33.一种显示多个文本层次结构的方法,其特征在于,包括显示第一文本层次作为具有露出的水平边缘的多个基本上垂直方向的重叠窗口;和显示第二文本层次作为具有露出的垂直边缘的多个基本上水平方向的重叠窗口,其中所述第二文本层次在等级上低于所述第一文本层次。
34.一种显示多个文本层次结构的方法,其特征在于显示第一文本层次作为多个基本上水平平铺的平面;显示第二文本层次作为多个基本上垂直的平铺平面,其中所述第二文本层次在等级上低于所述第一文本层次。
35.一种显示多个文本层次结构的方法,其特征在于,包括显示一系列文本层次作为交替水平平铺平面组和垂直平铺平面组。
36.如权利要求35所述的显示多个文本层次结构的方法,其特征在于,从包括音量、章、节、段落和句子的组中选择所述系列文本层次。
37.如权利要求35所述的显示多个文本层次结构的方法,其特征在于,还包括允许阅读者选择在所述层次结构中的文本单元,其中当所选单元是基本上水平平铺的,所述单元基本上垂直移开,其中当所选单元是基本上垂直平铺的,所述单元基本上水平移开,从而在所述移动之后,所选单元进一步移离至少一个邻近单元。
38.如权利要求39所述的显示多个文本层次结构的方法,其特征在于,在所述单元移离之后显示更低层次。
39.如权利要求38所述的显示多个文本层次结构的方法,其特征在于,当所述移离层次是垂直平铺时,所述较低层次是水平平铺的,而当所述移离层次是水平平铺时,所述较低层次是垂直平铺的。
40.如权利要求35所述的显示多个文本层次结构的方法,其特征在于,将所述句子表示为一系列垂直平铺的页,其中,当将句子单元指示为已读时,所述页滑到左边,从而露出以前至少部分在下面的页以供阅读。
41.一种显示文本的方法,其特征在于,包括显示具有文本内容、右边缘和左边缘的左页,显示具有文本内容、右边缘和左边缘的右页,其中在阅读所述左页时所述左页右边缘基本上重叠了所述右页左边缘,而在阅读所述右页时所述右页左边缘基本上重叠所述左页右边缘。
42.如权利要求41所述的显示文本的方法,其特征在于,还包括当已阅读所述左页时去除所述左页内容,并露出下一个左页内容,当已阅读所述右页时去除所述右页内容,并露出下一个右页内容,从而可阅读从一页延伸到下一页的文本段,而不要求滚屏来阅读延伸至所述下一页的所述文本分段内容。
43.如权利要求42所述的显示文本的方法,其特征在于,通过阅读者动作指示要阅读的所述页。
44.如权利要求42所述的显示文本的方法,其特征在于,通过至少部分根据时间估计阅读速度,指示要阅读的所述页。
45.一种显示具有原始序列的文本的方法,其特征在于,包括将所述文本分成多个分段;和在多行中显示所述分段,其中从下至上阅读所述文本,基本上保留了所述原始序列,其中以透视法显示所述文本,从而在其他分段上的文本分段看来似乎离阅读者更远,从而在从下至上阅读所述文本时,所述文本看来似乎从前至后阅读的。
46.如权利要求45所述的方法,其特征在于,显示所述文本,其中所述文本的字体尺寸从文本底行至顶行减小。
47.如权利要求45所述的方法,其特征在于,还包括将部分透明的虚拟透镜设置在要阅读的较低行上的文本上,从而在所述较低行上的文本是看得见的,但是比在所述行下的文本要难以阅读。
48.如权利要求45所述的方法,其特征在于,在所述某一行上的文本比正在阅读的所述文本行要暗。
49.如权利要求45所述的方法,其特征在于,在指示阅读之后去除正在阅读的行中的所述文本,而且显示在正阅读的所述行之后的一行文本,以看来似乎更靠近所述阅读者,从而阅读者似乎正在通过阅读的文本向前移动。
50.一种显示文本的方法,其特征在于,包括下列步骤提供如下编码的文本a.分析句子、把所述句子根据各所述文本分段间的相互关系细分为多个文本分段。b.把所述文本分段组成具有一个根父节点和多个父节点和子节点的树;c.根据与所述子节点与所述父节点的关系,将属性分配给每个子节点;d.把颜色赋予所述根节点;e.对于在所述根节点下的每个子节点,根据所述父节点的颜色把颜色赋予每个子节点,并通过在所述子节点和所述父节点之间的关系改变;f.重复步骤e直至所有节点都具有分配的颜色;g.运用在树中分配的颜色以基本上与作者特定的相同顺序按行显示所述文本。
51.如权利要求50所述的方法,其特征在于,从包括实体、动作和修改的组中选择所述父-子关系。
52.一种增强文本呈现的方法,其特征在于,a)利用语音部分和标点符号提供折转规则,其中所述折转规则包括主要规则和次要规则,所述主要规则利用标点符号而所述次要规则利用语音部分,其中所述次要折转规则包括用于区分所述语音部分的微语法;b)提供文本分段水平偏移规则,其中所述规则利用语音部分;c)提供最小文本分段长度;d)提供最大文本分段长度;e)把所述文本语法分析成字和标点符号;f)根据步骤e确定可能的字的语音部分;g)通过采用所述主要折转规则,确定主要折转点在所述文本中的位置,从而将所述文本分成超短语;h)通过采用折转规则,确定次要折转点在所述超短语中的位置,从而把所述超短语分成文本分段;i)重复步骤h,直至所有文本分段不大于所述最大文本分段长度,而且不小于所述最小文本长度;j)把所述文本分段水平偏移规则用于所述文本分段,从而确定每个文本分段的水平偏移;k)把每个所述文本字映射到所述文本字的语音记录;和l)回放所述记录的文本字,根据所述水平偏移插入停顿。
全文摘要
用于改善人们阅读的呈现文本的文本增强方法和装置。该方法包括从机器可读文本中提取文本特定属性并根据该属性改变文本呈现。本方法的较佳实施例:从句子中提取语音部分和标点符号、采用折转规则,它利用语音部分来确定折转点,并在每一新行上呈现文本分段,且根据文本特定属性进行确定的水平偏移。一种方法在弯曲的曲线上显示文本,其形状根据文本内容而定。另一种方法包括运用垂直和水平平铺平面显示在层次结构中的相关文本位置。另一种方法支持跨相对页阅读文本分段,而不必等待分页。另一种方法显示文本以允许从底至顶阅读,如同从前至后。另一种方法显示着色的字,反映了在字和分开的较大文本分段之间的关系。
文档编号G09B5/06GK1296587SQ99804882
公开日2001年5月23日 申请日期1999年2月2日 优先权日1998年2月2日
发明者蓝道尔·C·沃克 申请人:蓝道尔·C·沃克