用于进行内容导航的系统和方法

文档序号:6651975阅读:165来源:国知局
专利名称:用于进行内容导航的系统和方法
技术领域
本发明涉及内容导航。更具体地说,本发明涉及便于用户在内容中进行导航的系统和方法。
背景技术
随着信息技术的不断发展以及出于保护环境的考虑,人们尽量减少使用纸张,而是越来越多地使用电子文档。电子文档通常包括信息内容(例如文本、图形和图片)和格式信息,格式信息规定了信息内容怎样显示。而且,随着多媒体技术的发展,电子文档中还可以包括声音、视频及其他多媒体内容。
一般而言,内容本身可能过多或过大而无法同时整个显示在显示屏幕上。于是,应用程序通常只显示内容的一部分(或片段、子集),并允许用户一次一部分地逐渐浏览到文档的其他部分。
为了使用户能够在文档中导航,应用程序通常会提供各种技术,以允许用户指出要显示哪部分内容。一种技术是例如在典型的字处理应用中,响应于用户的输入,应用能够“滚动”文档,即旧的内容部分平滑、连续地移出屏幕显示,而新的内容部分移进屏幕显示。另一种技术是通过“翻页”来显示新内容,即应用跳转到新的内容,用新内容替换屏幕上当前显示的旧内容,这之间没有任何中间显示状态。
以下将说明较为常见的导航机制。
一些导航机制是通过使用键盘实现的。例如,箭头键通常表示,应用应当显示与当前显示的那部分内容重叠并且位于所使用的箭头键指向的方向上的内容部分。类似的“page up”和“page down”键则表示应用应当显示与当前显示的内容相邻并且位于所指的方向(即,向上或向下)上的内容部分。
另一些导航机制是通过图形用户界面实现的。这些机制也称为“窗口组件”(widget),它们是可由用户例如使用鼠标或触摸板操作的用户界面控件。“窗口组件”是图形用户界面上的元素,其可显示信息或提供特定的方式来让用户与操作系统和应用程序进行交互。例如,滚动条就是一种图形窗口组件,其可用于在单个维度(通常是水平或垂直维度)上导航文档。
另外,从菜单上选择的或使用键盘输入的命令也可用做导航机制。例如,在很多字处理应用中都提供的“查找”命令就可使用户通过查看在要查找的文本周围的内容部分来导航文档。其他命令可使用户以其他方式进行导航。并且还可通过使用键击、菜单、图形窗口组件或命令行来调用命令。
无论用户使用怎样的导航技术,其在浏览电子文档时都可能遇到如下的情形。即,用户并不总是按照电子文档的顺序连续地进行查看,而是通常先从头至尾、提纲挈领地查看文档的总体内容——在这个过程中自然会忽略一些内容——然后再返回这些忽略的内容进行仔细阅读和查看,实际上,这些先前被忽略的内容才是用户真正感兴趣的内容。但是在现有技术中,并没有为用户正确返回先前忽略的内容提供特别的导航手段,从而,一方面,用户需要在返回过程中经常留意是否已经到达目标位置;另一方面,当要返回的位置与当前位置相隔很远时,用户需要经过很多中间部分(或视图)才能到达目标位置。
在现有技术中,应用机械地按照用户的浏览顺序记录每个显示的视图,而没有提供检查机制来区别或过滤用户未曾浏览的内容部分,于是在用户想要回到先前跳过的内容部分时,需不必要地导航经过很多其他部分,从而给用户造成不便。当用户使用文本编辑器、演示文稿编辑器或web浏览器等来查看内容时,都可能遇到上述情况。
另外,这种情况不仅出现在浏览文字内容时,同样也出现在收听音频内容、观看视频内容等时。例如,用户在观看视频内容的过程中通过拖动时间滑块的方式跳过了一部分内容,由于用户通常不会在执行拖动时留心记住视频的当前播放时间,因此如果稍后希望返回观看先前跳过的部分,通常难以返回到视频中的精确位置。
因此,需要提供一种能标记跳过的内容以方便用户导航的系统和方法。
应当指出,在以上的说明中,“部分”一词应被理解为具有普通的含义,而不是在后文“具体实施方式
”部分中给出的特定含义。

发明内容
本发明的发明人认识到,可通过对从中发生内容跳转的那个视图进行标记来解决上述问题。
根据本发明的第一方面,提供一种便于用户对在查看器窗口中显示的内容进行导航的方法,该方法包括在用户的操作之后,检查查看器窗口新视图中显示的内容与旧视图中显示的内容之间的变化是否导致发生内容跳转;如果发生内容跳转,则为旧视图生成索引标记;将生成的索引标记存储在一索引标记队列中,以便用户在内容中进行导航。
根据本发明的第二方面,提供一种便于用户进行内容导航的系统,所述系统使用查看器窗口向用户显示内容,所述系统包括检测装置,用于在用户的操作后,检查查看器窗口新视图中显示的内容与旧视图中显示的内容之间的变化是否导致发生内容跳转;索引标记生成装置,用于在检测装置确定所述变化导致发生内容跳转的情况下,为旧视图生成索引标记;以及索引标记队列,用于存储生成的索引标记。
根据本发明,每当用户在查看内容过程中进行了操作时(无论是对窗口还是对内容),需要检测这种操作是否导致操作前、后的视图中显示的内容发生内容跳转(即,新、旧视图中显示的内容是连续的,还是忽略了一些中间内容),在确定发生内容跳转(即,忽略了一些中间内容)时,对用户操作前的旧视图生成索引标记,并将索引标记存储在一个索引标记队列中,从而使用户能够基于该索引标记队列容易地导航到希望查看的内容。
在内容浏览过程中,可能发生内容跳转的情况包括但不限于1)用户使用命令导航,例如“查找”、“替换”、“定位”、“快进”、“快倒”等命令;2)用户使用诸如滚动条、滑块之类的GUI窗口组件进行导航;3)用户使用诸如“索引”之类的索引导航;4)用户使用诸如“文档地图(document map)”之类的地图导航。
本发明提供了选择性记录视图的机制,因而提高了用户在内容中导航的效率、便利性和灵活性。


图1是根据本发明的方法的总体流程图。
图2是根据本发明的系统的总体框图。
图2A是根据本发明优选实施方式的系统框图。
图3为检查用户操作是否导致视图发生变化的具体操作的流程图。
图4为判断是否发生内容跳转的操作流程图。
图5为图1中生成并存储索引标记的具体操作的流程图。
图5A、5B为索引标记管理器根据不同的存储策略执行的操作的流程图。
图6为使用索引标记进行导航的操作的流程图。
图7A-7F为使用根据本发明的系统和方法的GUI示例。
图8是为新视图生成新的内容范围的操作流程图。
图9为关于可视指示的示意图。
具体实施例方式
在对本发明的优选实施方式进行描述之前,首先对本发明中使用的术语进行解释。
内容包括各种信息,例如文本、图像、web页、多媒体演示、虚拟世界、交互式会话或其任意组合。
部分(portion)在内容格式化(format)过程中用于进行占位的一个范围,以文本内容为例,一个文本部分是包含在文本流中出现的一段格式一致的信息的文本范围。例如,其可以是统一格式的一个段落;或者如果一个段落中包括多种不同特殊格式(例如颜色、字号、字体),那么每种特殊格式的文本都是一个文本部分。
在下文的描述中,如无明确指出,术语“部分”应被理解为具有这里指出的特定含义;而使用其普通含义的情况,例如“一部分内容”中的“部分”一词,将被“片段”或“子集”之类的术语所替代。
查看器(viewer)应用程序的图形用户界面中供用户查看内容的窗口。窗口化的图形用户界面在计算机显示屏幕上具有查看区域。通过一个窗口管理器来管理窗口,从而能够使用图形控件对窗口在任何一侧进行拉伸、进行最小化、最大化和关闭等操作。根据本发明的查看器窗口可以是与适用本发明的各类内容相关的查看器窗口,包括但不限于文本编辑器窗口、表格编辑器窗口、演示文稿编辑器窗口、音频/视频播放器窗口、图形文件显示窗口、web浏览器等。
旧视图先前的视图。
旧内容先前视图中显示的内容。
新视图当前的视图。
新内容在新视图中显示的内容。
逻辑坐标本发明使用逻辑坐标来表示内容部分的位置以及查看器的可视区域大小,它与物理位置和平台无关,并且可与像素坐标相互转换。
相对位置在本发明中,为方便起见,假定查看器窗口可视区域的左上角的逻辑坐标为0,相对位置即是显示的内容部分的位置相对于可视区域的左上角的位置。
内容范围用于标记视图的位置和边界,可以包括定义了针对当前视图大小的当前、前一、下一视图的可视指示,还可以包括当前视图的页码、部分、显示比例、帧/章节(对于视频内容)等。
内容范围集用于存储内容范围,每当检测到视图大小发生变化时,均会更新内容范围集,内容范围集是判断是否发生内容跳转的一个依据。
索引标记用于标记被跳过的内容,通常可具有如下形式内容中具有统一格式的一个部分,例如一个段落、段落中具有特殊格式的一个词、标题、关键字的位置、文本对象的位置(如插图、对象或表格)等。
索引标记可以具有属性,用来表示索引标记要记录的信息,如标记的视图的坐标信息、记录的部分的信息(甚至所记录的部分的上下文信息也在其列)、内容边界、部分在视图中的相对坐标信息、页码等,这些都可以作为索引标记的属性记录在索引标记中。
索引标记还可以具有名称,以便于识别和管理。
可视指示一个指针,可指示在相关视图中显示的特定部分(例如,第一个部分)的位置的坐标或边界、特定部分相对于视图左上角的距离、特定部分的关键字或当前的页码。在本发明中,为了便于说明,将可视指示定义为指向视图左上角的指针,但是显然可以采用视图的任何其他适当位置作为“可视指示”。
图9给出了一个关于可视指示的示意图。在图9中,内容900被形象地表示为类似于一个画卷,其随着用户的操作在内容信息流方向(箭头910)或内容信息流反方向(箭头920),逐步地显示在查看器窗口930中。如本领域技术人员所知,在应用显示内容时,会为内容分配逻辑坐标(该逻辑坐标可与像素坐标相互转换),并会根据特定查看器窗口930可视区域的大小计算出每个顺序视图中应显示的内容,从而哪个视图应显示哪个坐标范围内的内容是预定的。并且每当用户对内容进行了诸如翻页、滚动之类的操作或者改变窗口大小时,应用都会重新计算这些信息。于是,本发明可以直接从应用获得关于可视指示位置的数据,不需要额外计算。
在图9中,当前显示的视图为视图935,其最后一行用箭头936表示,共示出三个“可视指示”视图935的“可视指示”940,视图935之前的一个视图的可视指示“前一可视指示”950,以及视图935之后的一个视图的可视指示“后一可视指示”960。三个“可视指示”940、950、960是构成当前视图935的内容范围集的元素。应当理解,在图9中,使用垂直方向上的三个可视指示表示视图935的内容范围,但本发明并不局限于此,还可以根据需要采用水平方向的可视指示来表示内容范围。
下面将参照附图描述本发明的原理。应当指出,这里为了便于说明,将主要以文本内容为例进行描述,但是容易理解本发明并不局限于文本内容,而是同等地适用于诸如图像、web页、多媒体内容、虚拟世界、交互式会话等各种类型的内容。
图1是根据本发明的方法的总体流程图。根据本发明的方法从步骤100开始,假定用户正在通过查看器浏览文本内容。
随后,方法进入步骤110,用户对内容或对查看器窗口执行了操作。接下来,在步骤120中,判断用户的操作是否会导致操作前的旧视图与操作后的新视图中显示的内容不连续,即发生内容跳转。
如果在步骤120中判断发生内容跳转(“是”分支),例如用户将内容向下滚动多页,则方法进入步骤130,为旧的视图生成索引标记。随后,在步骤140中,将生成的索引标记存储到索引队列中。通过重复步骤110-140的操作,可将用户查看内容过程中生成的所有索引标记都存储在索引队列中,以便用户能够基于该索引队列在内容中导航。随后,本发明的方法在步骤150中结束。
如果在步骤120中判断未发生内容跳转(“否”分支),则根据需要,过程转向执行如图8所示的为新显示的视图生成内容范围的操作,或者进入步骤150以结束操作。
图2是根据本发明的系统200的总体框图。系统200包括查看器窗口210,检测装置250,索引标记生成装置260,以及索引标记队列270。
查看器窗口210,如图7A的查看器窗口700所示,具有可视区域,用来显示内容,用户可对查看器窗口210或其显示的内容执行各种操作。
每当用户对查看器窗口210或内容进行了操作时,检测装置250均会检查操作前、后的视图中显示的内容是否连续,即检查新、旧视图间的变化是否导致发生内容跳转。
在检测装置250的检查结果表明所述变化导致发生内容跳转时,索引标记生成装置260为旧的视图生成索引标记。
索引标记队列270用于存储在用户浏览内容过程中生成的所有索引标记。
在结合图1、2描述了本发明的总体流程图和框图后,以下将结合图2A、3-9对如图1、2所示的方法和系统进行详细说明。
图3、图4示出了图1的步骤120中执行的具体操作。
根据本发明的优选实施方式,在执行步骤120以检查用户操作是否导致发生内容跳转前,首先检查用户操作是否导致新、旧视图中显示的内容发生变化,这通常是通过捕获一些可能导致视图内容发生改变的事件来实现的。
该过程从步骤300开始,假定用户在查看器窗口中查看内容。随后,方法进入步骤310,在用户查看内容的过程中,随着用户对内容或对查看器窗口执行操作,范围生成触发装置220捕获可能导致目前视图中显示的内容发生变化的那些操作(或事件)。
范围生成触发装置220捕获的事件可以包括如标号320-1到320-5所代表的各项,即用户是否对内容进行了放大/缩小(320-1)、是否改变了显示分辨率(320-2)、是否通过使用控制器来改变视图大小(320-3)、是否通过拖放来改变视图大小(320-4)以及是否通过诸如滚动、翻页、键盘、滚动条和命令等进行了导航操作(320-5)。这里给出的可能导致显示内容变化的用户操作示例并不是穷举的,还可以包括其他示例,例如,对于允许用户设定视图大小的应用而言,范围生成触发装置220还可捕获用户是否重新设定了视图大小。
如果出现事件320-1,会使视图的显示比例会发生变化(方框330-1),如果出现事件320-2到320-5,则会使视图的左上角坐标、高度或宽度发生变化(方框330-2)。
一旦出现320-1到320-5的任何事件,图3的过程进入步骤340,以确定视图中显示的内容发生变化,从而进一步执行图4中的操作。否则,其返回步骤310继续等待捕获新的用户操作,由于这时新、旧视图间不存在差别,也就不可能发生跳转,因此对应于图1中步骤120的“否”分支,并且直接执行步骤150以结束。
本发明提供范围生成触发装置220和范围生成装置230,如图2A所示。范围生成触发装置220用于检查在操作前的旧视图与操作后的新视图中显示的内容是否发生变化,例如是否有新内容变得可见,旧内容变得不可见。如果发生变化,则需要调用范围生成装置230,从而为新视图生成新的内容范围,以更新内容范围集240,如下文所述。
另外,范围生成触发装置220可进一步包括事件处理器221和判定装置222,如图2A所示。事件处理器221用于捕获如标号320-1到320-5所代表的各个事件并告知判定装置222,而判定装置222用于在事件处理器221捕获了事件后,确定用户操作使视图中显示的内容发生了变化,从而触发后续操作。
图4示出了判断是否发生内容跳转的一种具体操作方式。在通过图3的过程确定用户操作导致显示内容发生变化时,进一步通过图4的过程由检测装置250判断所述变化是否导致发生内容跳转。根据图4所示的实施方式,以内容范围集中的可视指示为依据,来执行所述判断。
图4的方法上接图3,随后进入步骤410,由于用户操作导致新、旧视图中显示的内容不同,应用会重新计算新视图的坐标、边界等信息,于是检测装置250从应用获得计算的新视图的左上角的坐标,作为新视图的可视指示。
接下来,在步骤420中,检测装置250将新的可视指示与旧视图的前一可视指示和后一可视指示进行比较,确定新视图的可视指示是否小于旧视图的前一可视指示或者大于旧视图的后一可视指示,以确定是否有内容被跳过。
参照图9的示例,假定视图935为当前显示的视图,其最后一行用箭头936标明,其当前左上角(即,可视指示处)的坐标为x,随后用户在内容信息流方向910对视图935进行了操作。如果操作是向下移动视图935,使其最后一行从标号936的位置移到标号945的位置(假定这之间的高度为y),这时显示内容显然发生了变化,于是会针对新视图的左上角生成新的可视指示,坐标为x+y,这种情况下新可视指示处的坐标大于旧视图935的原有可视指示940(坐标x)但小于旧视图935的原有后一可视指示960(坐标x+H),因而显示的内容是连续的,没有发生内容跳过。如用户的操作是下翻一页,那么新视图的新可视指示恰好是旧视图935的原有后一可视指示960的坐标(x+H),因此新视图与旧视图也是连续的,没有内容被跳过。如果下翻了两页或多页(坐标x+nH,n表示下翻页数,n≥2),则新视图的指针将超出旧视图935的后一可视指示960,从而确定有内容被跳过。在内容信息流反方向上的操作与上述类似,不再详细描述。
如果在步骤420中确定有内容被跳过,则继续执行步骤130的操作,否则(即,新、旧视图之间有变化但未发生内容跳转),执行图8所示的操作。
另外,所述检测装置250可以包括一个获取装置251和一个比较装置252,如图2A所示。所述获取装置251用于响应于范围生成触发装置220的判定装置222确定视图发生变化,从应用获取计算的新视图的左上角坐标,作为新视图的可视指示,所述比较装置252用于参照旧视图的内容范围集,确定所述新视图的可视指示是否小于旧视图的前一可视指示或大于旧视图的后一可视指示。
如图4那样使用可视指示为依据来确定是否发生内容跳转只是本发明的一种优选方式,也可以使用内容范围集中存储的其他信息(例如,内容的部分、内容的页码等)为依据来执行所述判断,这对于本领域技术人员是容易理解的,因此不再详细描述。
图5示出了在图1的步骤130、140中生成并存储索引标记的具体操作方式。
该过程上接步骤120的“是”分支,即用户的操作导致有内容被跳过,因此需要对跳过的内容进行标记。于是,过程进入步骤510,在这里索引标记生成装置260对旧视图生成索引标记。
索引标记可以采取多种形式。索引标记可以是视图的某个位置,例如可以简单地使用旧视图的可视指示的位置作为索引标记,用该位置的相对坐标或绝对坐标来表示索引标记。索引标记可以是内容的一个部分,例如是显示在视图左上角的内容部分,通过记录指向这个部分的指针或这个部分的编号来标识索引标记。另外,对于文档填充类型的应用,也可以使用页码来标识索引标记。本发明中关于标识索引标记的方式的示例不是穷举的,本领域技术人员可以使用其他适当的方式。
用一个指针来指向索引标记,所述指针可以用索引标记的属性来标识。如前所述,索引标记可以包括下列属性中的一个或多个标记的视图的坐标信息、记录的部分的信息(甚至所记录的部分的上下文信息也在其列)、内容边界、部分在视图中的相对坐标信息、页码,因此这些信息均可用来标识指向索引标记的指针。
当在步骤510中生成了索引标记后,在步骤520中将该索引标记存储到一个索引标记队列中。由于索引标记队列中可能存在多个索引标记,为了便于识别和管理的目的可以对每个索引标记赋予名称或编号。图5的过程在步骤530中结束。
在生成和存储索引标记的过程中,本发明可提供索引标记管理器261,如图2A所示,以便对索引标记的增加、删除、索引标记队列的长度等进行管理。可以考虑如下两种示例情形。
第一种情形是,有一个指针P指向当前回退到的索引标记M,即若回退到队列中间的某个索引标记M,用户在此又作了跳转操作(不是通过本发明所提供的索引标记导航实现的),到某个视图1,这时可以不对上述P指向的索引标记M所标记的视图再次进行标记。接着用户再次跳转,有内容被跳过,这时要对视图1进行标记,创建对应的索引标记1,这时,索引标记1怎么加到队列中,队列中的指针P怎么移动应遵循以下策略(第一策略)比较视图1和队列中的其他索引标记所标记的视图的相对位置关系,来决定插入到队列的何处,P然后指向新的索引标记处。使用这种策略,索引标记的存储顺序与文档内容的顺序一致。
第二种情形是,有一个指针P指向当前回退到的索引标记M,即若回退到队列中间的某个索引标记M,用户在此又作了跳转操作(不是通过本发明所提供的索引标记导航实现的),到某个视图1,这时对上述P指向的索引标记M所标记的视图再次进行标记,将新生成的索引标记M’存储在队列尾部。接着用户再次跳转,有内容被跳过,这时要对视图1进行标记,创建对应的索引标记1。该索引标记1将排列在上述索引标记M’之后,成为新的队列末尾。根据这种存储策略(第二策略),索引标记的存储顺序与用户浏览文档的顺序一致。
对于第一种示例情形,索引标记管理器的操作如图5A所示。图5A的过程使用第一策略,为使索引标记的存储顺序与文档内容的顺序一致,只对全新的索引标记进行存储并需考虑其存储位置。图5A的操作从步骤550开始,随后进入步骤555。在步骤555中,由于有内容被跳过而需要生成新的索引标记。于是,在步骤560中判断所述新生成的索引标记是否不同于索引标记队列中的现有索引标记,这可以通过对比索引标记的属性(例如,坐标位置、部分或页码等)来实现。如果步骤560的判断为“是”,即这是一个全新的索引标记,则执行步骤565的操作,生成新的索引标记,否则不再生成新的索引标记。接下来,在步骤570中判断存储该标记是否在索引标记队列的长度范围之内。如果步骤570的判断为“是”,则索引标记管理器会在步骤580中根据第一策略存储新生成的索引标记,否则,索引标记管理器首先在步骤575中考虑FIFO原则,然后在步骤580中根据第一策略存储新生成的索引标记。在存储了索引标记后,图5A的过程在步骤585中结束。
为实现上述操作,所述索引标记管理器261可以进一步包括第一判断装置262,用于判断所述新生成的索引标记是否不同于索引标记队列中的现有索引标记,如果不同,则调用索引标记生成装置260生成新的索引标记;第二判断装置263,用于进一步判断存储该标记是否在索引标记队列的长度范围之内;第一存储装置264,用于响应于第二判断装置判断在长度范围之内,根据第一策略存储新生成的索引标记的装置;以及第二存储装置265,用于响应于第二判断装置的否定判断,同时考虑FIFO原则和所述第一策略来存储新生成的索引标记的装置。
对于第二种示例情形,索引标记管理器的操作如图5B所示。图5B的操作与图5A基本相同,以下只描述其区别之处。在图5B的过程中,为使索引标记的存储顺序与用户浏览文档的顺序相同,需要对所有发生内容跳转的视图都进行标记(无论先前是否已经标记过),于是省略了图5A中步骤555和560的操作。此外,在步骤580’中根据第二策略将新生成的索引标记存储到队列末尾。图5B的过程在步骤585中结束。
对于图5B的情形,所述索引标记管理器可以不包括第一判断装置262,而只包括第二判断装置263,用于进一步判断存储生成的索引标记是否在索引标记队列的长度范围之内;第一存储装置264,用于响应于第二判断装置判断在长度范围之内,根据第二策略存储新生成的索引标记的装置;以及第二存储装置265,用于响应于第二判断装置的否定判断,同时考虑FIFO原则和所述第二策略来存储新生成的索引标记的装置。
在以上的描述中,在存储新索引标记导致超出索引标记队列长度时,是通过按FIFO原则删除早期的索引标记来存储新索引标记,但也可以保留所有原来的索引标记而不存储该新索引标记。
另外,如果用户在查看内容过程中删除了内容片段,则可能导致某些索引标记被删除,这时索引标记管理器可以删除这些索引标记,或将索引标记指向离删除的内容最近的位置,这对于本领域技术人员是容易理解的。
以下将结合图6描述用户使用索引队列在内容中导航的操作。
根据本发明的系统还提供导航装置280,如图2A所示,以便用户在各个索引标记之间进行导航和切换,所述导航装置的一种表现形式可以是在用户界面上显示的导航按钮,如图7A-7F工具栏中的向左、向右箭头50、60所示。在尚未生成任何索引标记时,所述箭头可以灰掉,以表明导航装置不可用,在生成了索引标记后,导航装置可用,箭头处于活动状态,以供用户选择。
图6的过程从步骤600开始,随后进入步骤610。在步骤610中,假定用户在内容查看器窗口中查看内容,并且已经生成了若干索引标记。接下来,在步骤620中,用户通过按下表示前一索引标记的按钮(向左箭头50),或者在步骤630中,通过按下表示后一索引标记的按钮(向右箭头60),以期望到达一个已标记的位置来浏览相应的内容。于是,在步骤630中,响应于用户操作指定了索引标记,导航装置查找该索引标记的信息(例如,位置、部分或页码等),以将当前视图重置为与索引标记对应的视图。
在重置视图时,可能出现重置后的视图的第一行不能完整显示内容的情况,例如该行只显示了1/3行高,在这种情况下还可以在步骤650中对该行的行高进行调整,使该行显示完整。
图6的过程在步骤660中结束。
为执行图6的操作,根据本发明的系统还包括重置装置281,用于响应于导航装置280指定的索引标记,将当前视图重置为与索引标记对应的视图;以及调整装置282,用于如果重置后的视图的第一行不能完整显示,则通过调整可视区域的左上角坐标使该行显示完整。
图7A-7F示出了实施本发明的GUI示例。假定用户在如图7A所示的查看器窗口700中查看内容。查看器窗口700工具栏上有代表根据本发明的索引标记的一对向左、向右箭头50、60,假定索引标记的顺序与文档内容顺序一致,因此图7A-7F中的向左箭头50表示沿内容流反方向的索引标记,向右箭头60表示沿内容流方向的索引标记(但是,索引标记的顺序也可与用户生成索引标记的顺序一致,这是容易理解的)。由于当前尚未在内容中生成任何索引标记,因此所述向左、向右箭头50、60均是灰色的,表明不可用。在图7A中,查看器窗口700的当前视图显示了内容的一个片段20,该片段的最后一行用箭头21指示,用户可通过按按钮22来向下查看文本内容。
图7B表示用户在图7A的界面中通过按按钮22来向下查看文本内容时的情形。对比图7A和7B的视图可以看出,滚动条29向下移动,从而一些内容移出屏幕显示,一些内容保持显示在屏幕上(标号23),还有一些内容移入屏幕显示(标号24)。箭头25表示当前视图的可视指示位置,箭头26用于表示文本流动方向,箭头27和28用于区别内容片段23和24。这时,因为尚未生成索引标记,用于表示索引标记的箭头50、60仍保持灰色。
图7C表示用户从图7B的视图通过拖动滚动条29跳过一些内容到达文本内容的另一内容片段30的情形。由于进行了跳转,有些内容被忽略或被跳过了,从图7B显示的内容到图7C显示的内容之间是不连续的,因此会为图7B的视图生成索引标记,于是图7C工具栏中的向左箭头50从灰色变为活动状态,而向右箭头60仍保持灰色的不活动状态。图7C中的箭头32表示该视图中左上角坐标位置或者可视指示位置,箭头33表示该显示内容的最后一行。
图7D的界面表示用户沿图7C继续向下查看文本的情形。箭头34表示该视图中左上角坐标位置或者可视指示位置,箭头35文本流的方向,箭头35、36表示图7C与图7D的内容的分界。
由于从图7C到图7D的查看属于连续视图查看,因此本发明会记录其新的左上角坐标位置或者可视指示位置34,以生成新的内容范围,但不会生成新的索引标记。
图7E表示用户通过在图7D显示的界面中按向左箭头50,通过索引标记跳转回图7B显示的内容的情形。由于该跳转忽略了内容,因此会为图7D的视图生成新的索引标记,于是图7E工具栏中的向右箭头60从灰色变为活动状态,而向左箭头50变为灰色的不活动状态。另外,在图7E中,箭头25仍表示该视图中左上角坐标位置或者可视指示位置。
图7F表示用户通过在图7E显示的界面中按向右箭头60,通过索引标记跳转回图7D显示的内容的情形。
通过以上结合GUI说明的示例可以看出,用户可通过使用索引标记,容易地在文档中标记出自己感兴趣的各个内容块并在各感兴趣的内容块之间进行切换和导航。
为了便于说明的目的,图7A-7F只示出了有两个索引标记和有两个导航按钮的情形,但应当理解,可以根据需要增加索引标记的个数以及增加导航按钮的个数(例如表示直接跳转到第一个/最后一个索引标记的按钮)。
图8是为新视图生成新的内容范围的具体操作流程。根据本发明,只要新、旧视图之间发生了变化,就会通过范围生成装置230为新视图生成新的内容范围,以更新内容范围集,供后续处理之用。换言之,在确定新、旧视图之间发生了变化但没有发生内容跳转的情况下,或者在确定发生了内容跳转但已为旧视图生成了索引标记的情况下,需要为新视图生成新的内容范围。根据本发明的一种优选方式,生成新的内容范围包括生成新的可视指示。
图8的方法从步骤800开始,随后进入步骤810,对新视图生成新的可视指示,这可通过从应用获得新视图左上角的坐标来实现。
然后,在步骤820中,用新视图的新可视指示替换内容范围集中关于旧视图的可视指示。
然后,分别在步骤830和840中为新视图生成后一可视指示,在850和860中为新视图生成前一可视指示。
在步骤830中,在查看器中近邻当前可视区域的下方生成后一可视指示。在步骤840中,用新的下一可视指示替换内容范围集中关于旧视图的后一可视指示。
另外,在步骤850中,在查看器中近邻当前可视区域的上方生成前一可视指示,这可以包括根据当前可视区域的高度,计算每行的最大高度,以获得与当前可视区域连续的前一可视区域的最小左上角坐标,并生成新的前一可视指示。这样,能够确保前一可视指示指向使前一可视区域的第一行内容完整显示的位置。在步骤860中,用新的前一可视指示替换内容范围集中关于旧视图的前一可视指示。
内容范围集是用于判断是否发生内容跳转的依据,在本发明中优选地根据内容范围集中存储的可视指示的位置来执行所述判断。但也可以根据内容范围集中的其他参数进行判断,例如内容的部分、页码等。内容范围集中除存储上述信息外,还可存储关于视图的其他信息,如显示比例等,这些参数都是可以从应用中直接获得的。
图8的过程在步骤870中结束。
另外,范围生成装置230可以与检测装置250的获取装置251耦接,用于从应用获得新视图左上角的坐标信息。范围生成装置230可进一步包括第一替换装置231,用于用新视图的新可视指示替换内容范围集中关于旧视图的可视指示;第二替换装置232,用于在查看器中近邻当前可视区域的下方生成后一可视指示,并用新的后一可视指示替换内容范围集中关于旧视图的后一可视指示的装置;以及第三替换装置233,用于在查看器中近邻当前可视区域的上方,通过根据当前可视区域的高度,计算每行的最大高度,以获得与当前可视区域连续的前一可视区域的最小左上角坐标,来并生成新的前一可视指示,并用新的前一可视指示替换内容范围集中关于旧视图的前一可视指示的装置。
如本领域技术人员能够理解,本发明的装置可通过硬件方式来实现,可通过对常规的存储器或逻辑电路进行配置或编程以执行相应的功能来实现,也可通过将这二者结合来实现。
以上主要结合文本类型的内容对本发明的原理进行了说明,但是,本领域技术人员应当理解,本发明并不局限于此,而是同样适用于任何类型的内容,例如各种具有文档结构的内容(如,表格文件、演示文稿等)、图片、图像、视频内容、音频内容以及其他各类多媒体内容。
例如对于视频内容而言,当用户在观看视频内容时通过时间浏览或章节选择等方式忽略了一些内容,则可通过从播放器获得用户观看的内容的时间位置、帧、章节等信息对视频内容加索引标记,来识别出用户感兴趣的片段。
又例如对于演示文稿内容而言,当用户在查看演示文稿的过程中跳过了内容时,可通过对跳过的演示文稿的页码进行标记,以便容易地回到先前忽略的内容。
由此可见,在对不同类型的内容应用本发明时,只是判断是否发生内容跳转的依据有所不同(即,内容范围集中的内容范围信息会因内容类型而异)、索引标记采取的形式有所不同,但如何对内容进行标记的基本思想是一致的,因此本领域技术人员可以容易地将本发明应用于各种类型的内容。
另外,本领域技术人员会认识到,可以以方法、系统或计算机程序产品的形式提供本发明的实施例。因此,本发明可采取全硬件实施例、全软件实施例,或者组合软件和硬件的实施例的形式。硬件和软件的典型的结合可以是带有计算机程序的通用计算机系统,当程序被加载并被执行时,控制计算机系统,从而可以执行上述的方法。
本发明可以嵌入在计算机程序产品中,它包括使此处描述的方法得以实施的所有特征。所述计算机程序产品被包含在一个或多个计算机可读存储介质(包括,但不限于,磁盘存储器、CD-ROM、光学存储器等)中,所述计算机可读存储介质具有包含于其中的计算机可读程序代码。
已参考根据本发明的方法、系统及计算机程序产品的流程图和/或方框图说明了本发明。流程图和/或方框图中的每个方框,以及流程图和/或方框图中的方框的组合显然可由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、嵌入式处理器或者其他可编程的数据处理设备的处理器,以产生一台机器,从而指令(所述指令通过计算机或者其他可编程数据处理设备的处理器)产生用于实现在流程图和/或方框图的一个或多个方框中规定的功能的装置。
这些计算机程序指令也可保存在一个或多个计算机的读存储器中,每个这种存储器能够指挥计算机或者其他可编程数据处理设备按照特定的方式发挥作用,从而保存在计算机可读存储器中的指令产生一种制造产品,所述制造产品包括实现在流程图和/或方框图的一个或多个方框中规定的功能的指令装置。
计算机程序指令也可被加载到一个或多个计算机或者其他可编程数据处理设备上,使得在所述计算机或者其他可编程数据处理设备上执行一系列的操作步骤,从而在每个这样的设备上产生计算机实现的过程,以致在该设备上执行的指令提供用于实现在流程图和/或方框图的一个或多个方框中规定的步骤。
以上结合本发明的优选实施方式对本发明的原理进行了说明,但这些说明只是示例性的,不应理解为对本发明的任何限制。本领域技术人员可以对本发明进行各种改变和变形,而不会背离由随附权利要求所限定的本发明的精神和范围。
权利要求
1.一种便于用户对在查看器窗口中显示的内容进行导航的方法,该方法包括在用户的操作之后,检查查看器窗口新视图中显示的内容与旧视图中显示的内容之间的变化是否导致发生内容跳转;如果发生内容跳转,则为旧视图生成索引标记;将生成的索引标记存储在一索引标记队列中,以便用户在内容中进行导航。
2.根据权利要求1所述的方法,所述检查步骤包括响应于用户的操作,检查查看器窗口新视图中显示的内容与旧视图中显示的内容相比是否发生了变化;如果发生变化,检查所述变化是否导致发生内容跳转。
3.根据权利要求2所述的方法,其中检查新视图中显示的内容与旧视图中显示的内容相比是否发生了变化的步骤还包括捕获导致视图显示内容发生变化的事件;在捕获到事件时,判断显示的内容发生变化。
4.根据权利要求2所述的方法,其中检查所述变化是否导致发生内容跳转的步骤包括检查所述变化是否超出了为旧视图定义的内容范围集。
5.根据权利要求4所述的方法,其中检查所述变化是否超出了为旧视图定义的内容范围集的步骤还包括从应用获得计算的新视图的坐标信息,以为新视图生成新的可视指示;参照旧视图的内容范围集,确定新的可视指示是否小于旧视图的前一可视指示或者大于旧视图的后一可视指示。
6.根据权利要求1所述的方法,其中生成并存储索引标记的步骤还包括判断所述新生成的索引标记是否不同于索引标记队列中的现有索引标记,如果不同,则生成新的索引标记;进一步判断存储该标记是否在索引标记队列的长度范围之内如果在长度范围之内,则根据第一策略存储新生成的索引标记,如果不在长度范围之内,则同时考虑FIFO原则和所述第一策略来存储新生成的索引标记。
7.根据权利要求1所述的方法,其中生成并存储索引标记的步骤还包括生成新的索引标记索引;判断存储该标记是否在索引标记队列的长度范围之内;如果在长度范围之内,则根据第二策略存储新生成的索引标记,如果不在长度范围之内,则同时考虑FIFO原则和所述第二策略来存储新生成的索引标记。
8.根据权利要求1所述的方法,用户在内容中进行导航的步骤还包括根据用户操作指定的索引标记,将当前视图重置为与索引标记对应的视图;以及如果重置后的视图的第一行不能完整显示,则通过调整可视区域的左上角坐标使该行显示完整。
9.根据权利要求2所述的方法,还包括在所述变化不导致发生内容跳转的情况下,或者在所述变化导致发生内容跳转但已为所述旧视图生成了索引标记的情况下,为所述新视图生成新的内容范围,以更新内容范围集。
10.根据权利要求9所述的方法,为所述新视图生成新的内容范围的步骤还包括从应用获得新视图的坐标信息,并用新视图的新可视指示替换内容范围集中关于旧视图的可视指示;在查看器中近邻当前可视区域的下方生成后一可视指示,并用新的后一可视指示替换内容范围集中关于旧视图的后一可视指示;在查看器中近邻当前可视区域的上方,通过根据当前可视区域的高度,计算每行的最大高度,以获得与当前可视区域连续的前一可视区域的最小左上角坐标,来生成新的前一可视指示,并用新的前一可视指示替换内容范围集中关于旧视图的前一可视指示。
11.根据前述任一权利要求所述的方法,其中内容包括下列至少之一文本,表格、演示文稿、图片、图像、视频内容、音频内容、其他多媒体内容。
12.一种便于用户进行内容导航的系统,所述系统使用查看器窗口向用户显示内容,所述系统包括检测装置,用于在用户操作后,检查查看器窗口新视图中显示的内容与旧视图中显示的内容之间的变化是否导致发生内容跳转;索引标记生成装置,用于在检测装置确定所述变化导致发生内容跳转的情况下,为旧视图生成索引标记;以及索引标记队列,用于存储生成的索引标记。
13.根据权利要求12所述的系统,其中检测装置用于检测所述变化是否超出了为旧视图定义的内容范围集。
14.根据权利要求12所述的系统,所述检测装置还包括获取装置,用于从应用获取计算的新视图的坐标信息,以为新视图生成新的可视指示,比较装置,用于参照旧视图的内容范围集,确定所述新的可视指示是否小于旧视图的前一可视指示或大于旧视图的后一可视指示。
15.根据权利要求12所述的系统,还包括索引标记管理器,用于对索引标记的生成和存储进行管理,进一步包括第一判断装置,用于判断所述新生成的索引标记是否不同于索引标记队列中的现有索引标记,如果不同,则调用索引标记生成装置生成新的索引标记;第二判断装置,用于进一步判断存储该标记是否在索引标记队列的长度范围之内;第一存储装置,用于响应于第二判断装置判断在长度范围之内,根据第一策略存储新生成的索引标记的装置;以及第二存储装置,用于响应于第二判断装置的否定判断,同时考虑FIFO原则和所述第一策略来存储新生成的索引标记的装置。
16.根据权利要求12所述的系统,还包括索引标记管理器,用于对索引标记的生成和存储进行管理,进一步包括第二判断装置,用于判断存储新生成的索引标记是否在索引标记队列的长度范围之内;第一存储装置,用于响应于第二判断装置判断在长度范围之内,根据第二策略存储新生成的索引标记的装置;以及第二存储装置,用于响应于第二判断装置的否定判断,同时考虑FIFO原则和所述第二策略来存储新生成的索引标记的装置。
17.根据权利要求12所述的系统,还包括导航装置,使用户能够基于所述索引标记队列在内容中进行导航。
18.根据权利要求17所述的系统,还包括重置装置,响应于导航装置指定的索引标记,将当前视图重置为与索引标记对应的视图的装置;以及调整装置,如果重置后的视图的第一行不能完整显示,则通过调整可视区域的左上角坐标使该行显示完整的装置。
19.根据权利要求12所述的系统,还包括范围生成触发装置,用于响应于用户的操作,检查查看器窗口新视图中显示的内容与旧视图中显示的内容相比是否发生了变化。
20.根据权利要求19所述的系统,所述范围生成触发装置还包括事件处理器,用于捕获导致视图显示内容发生变化的事件;判定装置,用于响应于事件处理器捕获到事件,确定显示的内容发生变化。
21.根据权利要求12所述的系统,还包括范围生成装置,用于为新视图生成新的内容范围集。
22.根据权利要求21所述的系统,所述范围生成装置与范围生成触发装置的获取装置耦接,以从应用获得新视图的坐标信息,并进一步包括第一替换装置,用新视图的新可视指示替换内容范围集中关于旧视图的可视指示的装置;第二替换装置,用于在查看器中近邻当前可视区域的下方生成后一可视指示,并用新的后一可视指示替换内容范围集中关于旧视图的后一可视指示的装置;第三替换装置,用于在查看器中近邻当前可视区域的上方,通过根据当前可视区域的高度,计算每行的最大高度,以获得与当前可视区域连续的前一可视区域的最小左上角坐标,来并生成新的前一可视指示,并用新的前一可视指示替换内容范围集中关于旧视图的前一可视指示的装置。
23.根据权利要求12-22任一项所述的系统,其中内容包括下列至少之一文本,表格、演示文稿、图片、图像、视频内容、音频内容、其他多媒体内容。
24.一种计算机程序产品,包含在计算机系统可读的一个或多个计算机可读介质上的多条指令,当所述指令在计算机上执行时,用于实现如前述任一方法权利要求所述的方法。
全文摘要
本发明提供一种便于用户对在查看器窗口中显示的内容进行导航的系统和方法,该方法包括在用户的操作后,检查查看器窗口新视图中显示的内容与旧视图中显示的内容之间的变化是否导致发生内容跳转;如果发生内容跳转,则为旧视图生成索引标记;将生成的索引标记存储在一索引标记队列中,以便用户在内容中进行导航。本发明提供了选择性记录视图的机制,因而提高了用户在内容中导航的效率、便利性和灵活性。
文档编号G06F17/30GK1987765SQ20051013771
公开日2007年6月27日 申请日期2005年12月20日 优先权日2005年12月20日
发明者程建宏, 马嶽, 芮苏英 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1