控制文档滚动的方法和设备的制作方法

文档序号:6480324阅读:155来源:国知局

专利名称::控制文档滚动的方法和设备的制作方法
技术领域
:本发明涉及一种控制文档滚动的方法和设备,更具体地涉及一种基于文档的内容来控制文档滚动的方法和设备。
背景技术
:当人们在计算机屏幕上阅读较长的文档时,由于无法一次显示整个文档,因此需要滚动该文档(或称为滚动屏幕)以阅读整个文档。目前,使用滚动条来控制文档滚动。可以以手动滚动和自动滚动两种方式来控制文档滚动。例如,可以通过用鼠标拖动滚动条、转动鼠标的滚轮、用手指在笔记本计算机的触摸板上滑动或者其它方式来实现文档的手动滚动。可以通过按下鼠标的滚轮按钮来实现文档的自动滚动。然而,在现有方法中,无法根据文档的内容来控制文档滚动。具体地,在创建诸如网页、W0RD文档或PDF文档等的文档时,创建者常常希望某些内容能够被读者注意到,而不会因为文档的快速滚动而被有意或无意地忽略掉,并且在有些时候还希望能够对这些内容施加时间控制以确保读者能够充分地注意到和阅读这些内容。例如,在一个场景中,网页内容提供者或者广告商有时候希望将读者的注意力引导到网页上诸如广告之类的特定内容上,然而,尽管目前可以通过以更醒目的方式显示这些内容来实现这一点,但是读者可以通过快速地滚动该网页而容易地忽略该特定内容。在另一个场景中,当用户浏览具有多个章节的PDF文档时,用户有时候希望将文档快速滚动到他必须阅读的章节而不会因为该快速滚动而遗漏该章节,或者希望将文档快速滚动到每个章节的开头以了解该章节的内容是否重要,然而,目前不存在合适的文档滚动控制方法来满足用户的这一需求。因此,需要一种能够基于文档的内容来控制文档滚动的方法和设备。
发明内容考虑到以上问题而做出了本发明。本发明的一个目的是提供一种控制文档滚动的方法和设备,其能够基于文档的内容来控制文档的滚动,使得不会由于该文档的快速滚动而忽略所述内容。根据本发明的一个方面,提供了一种控制文档滚动的方法,该文档具有标记部分并且在显示区内被滚动显示,所述方法包括检测该文档是否被滚动到所述标记部分;当文档被滚动到所述标记部分时,限制该文档的滚动。根据本发明的另一方面,提供了一种控制文档滚动的设备,该文档具有标记部分并且在显示区内被滚动显示,所述设备包括检测单元,用于检测该文档是否被滚动到所述标记部分;控制单元,用于当文档被滚动到所述标记部分时限制该文档的滚动。根据本发明上述方面的控制文档滚动的方法和设备能够在文档被滚动到包含用户事先指定的内容的标记部分时限制该文档的滚动,使得该内容不会由于快速滚动而被忽略。通过结合附图对本发明的实施例进行详细描述,本发明的上述和其它目的、特征、优点将会变得更加清楚,其中图1是示意性地示出文档中的标记部分的图。图2是示出根据本发明第一实施例的控制文档滚动的方法的流程图;图3是用于说明图2所示的步骤S203的示例流程图;图4是用于说明文档、显示区和标记部分的位置关系的示意图;图5是用于说明图2所示的步骤S204的流程图;图6是示出根据本发明第一实施例的控制文档滚动的设备的框图;图7是示出根据本发明第二实施例的控制文档滚动的方法的流程图;图8是示出根据本发明第二实施例的控制文档滚动的设备的框图。具体实施例方式下面将参照附图来描述根据本发明实施例的控制文档滚动的方法和设备。在附图中,相同的参考标号自始至终表示相同的元件。应当理解这里描述的实施例仅仅是说明性的,而不应被解释为限制本发明的范围。如上所述,文档的创建者可能希望文档中的某些内容能够在文档滚动时被读者注意到,而不会由于文档的快速滚动而被忽略;此外,文档的读者也可能希望能够容易地定位文档中的某些内容。所述文档可以是网页、WORD文档、PDF文档或者其它格式的文档。为此,创建者或读者可以在文档中标记这些期望内容以产生包含这些期望内容的一个或多个标记部分,然后根据所述标记部分来控制文档的滚动。图l示意性地示出了文档中的标记部分(如阴影部分所示)。可以利用多种方法来在文档中标记期望内容。而且,可以由文档的创建者在创建该文档时标记文档中的期望内容,也可以在文档创建完成之后由文档的读者例如编辑该文档的脚本文件来标记文档中的期望内容。为便于说明,以超文本标记语言(HTML)网页为例。众所周知,在网页的HTML脚本文件中具有标签"div"。创建者或读者可以在容纳期望内容的标签"div"中增加一个新的属性"section",以使用该属性"section"作为标记来将所述期望内容标记为标记部分,并且可以通过设置属性"section"的值来设置当文档被滚动到该标记部分时对文档的滚动进行限制的限制时间段,如以下代码示例性地示出的那样。〈html〉〈body〉〈divsection="5期望内容〈/div>〈/body>〈/html>在该例子中,添加了属性"section"的期望内容成为标记部分,由于属性"section"的值被设置为5,因此当文档被滚动到该标记部分时,文档的滚动将被限制5秒钟。通过改变该属性"section"的值,可以改变所述限制时间段。应当注意,如果将属性"section"的值设置为O,则当文档被滚动到该标记部分时,文档的滚动将被限制很短的时间段,该时间段最好小于1秒,例如为0.5秒。在一个变型中,如果将属性"section"的值设置为O,则当文档被滚动到该标记部分时,也可以不限制文档的滚动。对于其它类型的文档,可以根据该文档和相应的文档阅读器的特点而类似地在期望内容上添加标记,以便将该期望内容标记为标记部分,并且利用该标记的值来指定当文档被滚动到该标记部分时限制文档滚动的限制时间段。例如,可以在WORD文档中的期望内容上添加类似的可扩展标记语言(XML)属性,以便使用该属性作为标记来将所述期望内容标记为标记部分,并且使用该属性的值来指定限制时间段。应当注意,所添加的标记仅对支持根据本发明实施例的控制文档滚动的方法的文档阅读器(例如,网络浏览器、MicrosoftW0RD软件、AdobeAcrobatReader等)起作用;对于不支持所述方法的文档阅读器,所添加的标记将被自动省略而不会被识别。对于包含有上述标记部分的文档,根据本发明实施例的方法和设备能够识别所述标记部分,并且根据该标记部分来控制文档的滚动,从而避免标记部分中的内容由于文档的快速滚动而被忽略。下面,将参照图2来描述根据本发明第一实施例的控制文档滚动的方法。图2示出了该方法的流程图。如图2所示,当利用文档阅读器打开文档时,在步骤S201中,检查所打开的文档是否包括标记部分。可以通过扫描整个文档以确定在该文档中是否存在如上文所述添加的标记来进行该检查。当在步骤S201确定所述文档不包括标记部分时,不需要执行根据本发明第一实施例的控制文档滚动的方法,该过程结束。反之,当在步骤S201确定所述文档包括标记部分时,该过程进行到步骤S202。在步骤S202,判断该文档是否被滚动。如本领域公知的,当文档被滚动时,操作系统将触发一滚动事件,因此可以通过检测该滚动事件是否被触发来判断文档是否被滚动。如果该文档没有被滚动,则该过程返回步骤S202。反之,如果该文档被滚动,则在步骤S203,检测该文档是否被滚动到标记部分。稍后将详细描述在步骤S203检测该文档是否被滚动到标记部分的方法。如果在步骤S203确定该文档被滚动到标记部分,则在步骤S204,限制该文档的滚动。可以采用多种方式来限制文档的滚动。在一种限制文档滚动的方式中,当文档被滚动到标记部分时,可以将该文档的滚动暂停预定限制时间段,使得标记部分停留在屏幕上以便读者能够注意到该标记部分,然后在该预定限制时间段过去之后取消对文档滚动的限制,使得该文档能够继续滚动。如上所述,该预定限制时间段是由用于指示该标记部分的标记的值指定的。在作为优选方式的另一种限制文档滚动的方式中,当确定文档被滚动到标记部分时,根据标记部分的长度是否超过显示区的长度来限制文档的滚动,然后在预定限制时间段过去之后取消对文档滚动的限制。稍后将详细描述这种限制文档滚动的优选方式。接下来,在步骤S205,确定该文档是否被滚动到文档的末尾。如果该文档已被滚动到末尾,则该过程结束。反之,如果该文档没有被滚动到末尾,则该过程返回步骤S203并且如上所述地执行后续步骤,直到该文档被滚动到末尾为止。下面将参照图3来描述在步骤S203确定文档是否被滚动到标记部分的一种示例方法。如图3所示,当在步骤S202发现文档被滚动时,该过程进行到步骤S2031。在步骤S2031中,计算标记部分相对于文档开头的标记部分起始位置。由于文档的滚动是以行为单位进行的,因此,所计算的标记部分起始位置实际上是标记部分的开头所在的行相对于文档开头(例如第O行)的位置。众所周知,当在显示区内显示文档时,该文档的显示布局将自动地根据显示区的大小而调整。例如,对于ioo个字符的文档,如果显示区中每行的长度为25个字符,则该文档将被显示为4行;如果显示区中每行的长度为40个字符,则该文档将被显示为3行。此外,文档(以及标记部分)可能包括图片元素。考虑到以上事实,优选地以像素为单位来表示所计算的标记部分起始位置。如本领域公知的,当在显示区内显示文档时,只要该显示区不改变,整个文档沿长度(高度)方向的行数和像素数就是固定的,并且显示在显示区内的文档的每行(包括行间距)的像素高度也是已知的。因此,在步骤S2031中,可以根据指示标记部分的标记的位置计算标记部分相对于文档开头的起始字符位置(即,标记部分开头的字符位置),根据该起始字符位置和显示区中每行的字符数来确定标记部分的开头所在的行的位置,然后根据整个文档的行数和像素数而将标记部分的开头所在的行的位置转换为以像素表示的位置,从而获得以像素为单位的标记部分的开头相对于文档开头的位置,即所述标记部分起始位置。应当认识到,尽管在这里优选地使用像素为单位来表示标记部分的起始位置,但这不是限制性的,实际上也可以直接将行或其它参数用于这一目的,只要所使用的参数能够反映出标记部分的开头相对于文档开头的位置即可。接下来,在步骤S2032中,计算显示区相对于文档开头的显示区起始位置。该显示区起始位置即为在显示区的开头显示的行相对于文档开头(例如,第O行)的位置,并且同样优选地以像素来表示。以Windows操作系统为例。如本领域公知的,当滚动文档时,在WindoWs应用编程接口(API)中自动产生例如以行为单位的4个变量来控制该文档的滚动,艮卩,minimum、maximum、thumb禾口increment,其中,minimum表不文档的起^H立置,maximum表示文档的结束位置,thumb表示显示区的长度,increment表示显示区的起始位置,即显示区的开头显示的文档内容的位置。图4示意性地示出了文档、显示该文档的显示区和文档中的标记部分的位置关系以及上述4个变量。根据这些变量,可以通过以下公式计算在当前显示区的开头显示的行在文档中的位置,即,显示区相对于文档开头的显示区起始位置显示区起始位置=(increment-minimum)/(maximum-minimum)X以像素为单位的整个文档的显示长度,其中,"increment-minimum"为已经被滚动出显示区的文档内容的长度(行数),"maxim咖-minim咖"为整个文档的长度(行数),而"以像素为单元的整个文档的显示长度"是将整个文档的行数转换为整个文档沿长度(高度)方向的像素数而获得的以像素为单位的长度。由于在上述公式中以像素来表示显示区的起始位置,因此该公式对于包含图片元素的文档同样适用。此外,在其它操作系统中,可以利用该系统中用于控制文档滚动的类似参数、通过上述公式来计算显示区起始位置。接下来,在步骤S2033中,比较在步骤S2031计算的标记部分起始位置是否与在步7骤S2032计算的显示区起始位置相同。如果二者相同,则在显示区开头显示的行即为标记部分的开头所在的行,因此文档已经被滚动到所述标记部分,该过程进行到步骤S204。反之,如果二者不同,则在显示区开头显示的行不是标记部分的开头所在的行,因此文档没有被滚动到所述标记部分,该过程进行到步骤S205。下面,将参照图5来描述在步骤S204限制文档滚动的上述优选方式。如图5所示,当在步骤S203确定文档被滚动到标记部分时,在步骤S2041,判断该标记部分的长度是否小于显示该文档的显示区的长度。优选地,利用标记部分在长度(即,高度)方向上(从第一行到最后一行)的像素数来表示标记部分的长度,并且利用显示区在长度(即,高度)方向上(从第一行到最后一行)的像素数来表示显示区的长度。例如,可以通过将标记部分占据的行数换算为以像素表示的长度(即,高度)来获得所述标记部分的长度,而标记部分的长度(即,高度)可以通过前述变量thumb获得。然后,通过比较这两个长度来确定二者的大小关系。如果标记部分的长度小于显示区的长度,则在步骤S2042,对文档的滚动进行限制,使得标记部分始终被显示在显示区内。具体地,对文档的滚动进行限制,使得用户可以继续滚动该文档,但是如果用户的滚动操作将使标记部分的部分或全部离开显示区,那么该滚动操作将被禁止。例如,这可以如下实现如上所述计算标记部分起始位置,并且计算标记部分结束位置;计算显示区相对于文档开头的起始位置和结束位置;检测显示区起始位置是否与标记部分起始位置相同,如果二者相同,则禁止用户继续向下滚动该文档的操作(该操作将使标记部分的开头离开显示区);检测显示区结束位置是否与标记部分结束位置相同,如果二者相同,则禁止用户继续向上滚动文档的操作(该操作将使得标记部分的末尾离开显示区)。标记部分结束位置可以通过将标记部分的长度加到标记部分起始位置上获得。显示区结束位置可以通过将由thumb表示的显示区长度转换为以像素为单位的长度,然后将该长度加到显示区起始位置上获得。反之,如果标记部分的长度大于或等于显示区的长度,则在步骤S2043,限制该文档的滚动,使得显示区只能显示该标记部分。具体地,对文档的滚动进行限制,使得用户可以继续滚动该文档。但是如果用户的滚动操作将使得显示区出现除了标记部分以外的内容,则该滚动操作将被禁止。这可以如下实现计算标记部分起始位置和标记部分结束位置;计算显示区相对于文档开头的起始位置和结束位置;检测显示区起始位置是否与标记部分起始位置相同,如果二者相同,则禁止用户继续向上滚动文档的操作(该操作将使标记部分之前的内容出现在显示区内);检测显示区结束位置是否与标记部分结束位置相同,如果二者相同,则禁止用户继续向下滚动文档的操作(该操作将使标记部分之后的内容出现在显示区内)。在上文中,参照图2描述了根据本发明第一实施例的控制文档滚动的方法。应当认识到,图2所示的流程是说明性的而不是限制性的,也可以对其进行适当的修改以获得各种变型。例如,尽管图2所示的流程中在打开文档之后首先在步骤S201中检查整个文档是否包括标记部分,但是也可以不执行这一步骤,而是一边滚动文档一边检查是否遇到指示标记部分的标记,从而确定文档是否包括标记部分。此外,步骤S201和步骤S202之间的执行顺序也可以互换。此外,当文档被滚动到标记部分时,除了限制文档的滚动以外,还可以突出显示(highlight)标记部分,使得能够更容易地注意到该标记部分。8下面,将参照图6来描述根据本发明第一实施例的控制文档滚动的设备。如图6所示,根据本发明第一实施例的控制文档滚动的设备600包括检测单元601和控制单元602。当打开文档时,设备600被启动。检测单元601检查所打开的文档是否包括标记部分。检测单元601可以通过扫描整个文档以确定在该文档中是否存在如上文所述添加的标记来进行该检查。如果该文档不包括标记部分,则设备600不对该文档执行滚动限制操作。当文档包括标记部分时,检测单元601判断文档是否被滚动。例如,检测单元601可以通过检测上述滚动事件是否被触发来判断文档是否被滚动。当文档被滚动时,检测单元601检测该文档是否被滚动到标记部分。检测单元601可以按照在上文中针对图3描述的方式来检测该文档是否被滚动到标记部分,即,检测单元601计算标记部分相对于文档开头的标记部分起始位置和显示区相对于文档开头的显示区起始位置,并且检查标记部分起始位置和显示区起始位置是否相同,以便确定文档是否被滚动到标记部分,其中,当二者相同时,检测单元601确定文档被滚动到所述标记部分。检测单元601将检测结果通知给控制单元602。当检测结果表明文档没有被滚动到标记部分时,控制单元602不干预文档的滚动。另一方面,当检测结果表明文档被滚动到标记部分时,控制单元602限制文档的滚动,使得标记部分不会因为文档的快速滚动而被忽略。控制单元602可以采用多种方式来限制文档的滚动。如上所述,在一种方式中,当确定文档被滚动到标记部分时,控制单元602可以将该文档的滚动暂停预定限制时间段,使得标记部分停留在屏幕上以便读者能够注意到该标记部分,然后在该预定限制时间段过去之后取消对文档滚动的限制,使得该文档能够继续滚动。该预定限制时间段是由文档的创建者或读者通过设置用于指示该标记部分的标记的值而设置的。此外,控制单元602可以采用上文所述的优选方式来限制文档的滚动,S卩,当确定文档被滚动到标记部分时,控制单元602根据标记部分的长度是否超过显示区的长度来限制文档的滚动,然后在预定限制时间段过去之后取消对文档滚动的限制,具体地,当确定文档被滚动到标记部分时,控制单元602按照在上文中针对图5描述的方法来判断标记部分长度是否小于显示区长度。当检测结果表明标记部分长度小于显示区长度时,控制单元602对文档的滚动进行限制,使得标记部分始终被显示在显示区内,也就是说,用户可以继续滚动该文档,但是如果用户的滚动操作将使标记部分的部分或全部离开显示区,那么该滚动操作将被禁止。这可以采用在上文中针对图5的步骤S2042描述的方式实现。反之,如果标记部分的长度大于或等于显示区的长度,则控制单元602限制该文档的滚动,使得显示区只能显示该标记部分,也就是说,用户可以继续滚动该文档。但是如果用户的滚动操作将使得显示区出现除了标记部分以外的内容,则该滚动操作将被禁止。这可以采用在上文中针对图5的步骤S2043描述的方式实现。当文档被滚动到标记部分时,除了上述限制操作以外,控制单元602还可以突出显示该标记部分以使得该标记部分能够被容易地注意到。例如,可以通过改变标记部分的颜色、字体和/或其它参数来突出显示该标记部分。可以看到,通过对文档中的期望内容进行标记以产生标记部分,并且在文档被滚动到标记部分时对文档的滚动进行限制,可以避免这些内容由于快速滚动而被忽略。此外,通过突出显示该标记部分,可以使用户更容易地定位期望内容。在根据本发明第一实施例的方法和设备中,每当文档被滚动到标记部分时,都将文档的滚动限制预定限制时间段。然而,在阅读文档期间,用户常常会前后滚动该文档。此时,对于包含不太重要的内容的标记部分,如果每次文档被滚动到该标记部分时都将文档的滚动限制预定时间段,用户会感觉到不便,而且这也没有必要。为此,可以为各个标记部分设置不同的限制模式。相应地,基于为标记部分设置的限制模式来控制文档的滚动。具体地,可以提供三种限制模式,S卩,第一限制模式、第二限制模式和第三限制模式。在第一限制模式中,每当文档被滚动到该标记部分时,都在第一预定限制时间段内限制该文档的滚。在第二限制模式中,在文档被滚动到该标记部分的次数小于或等于阈值时,在第一预定限制时间段内限制该文档的滚动,而在文档被滚动到该标记部分的次数大于阈值时,在第二预定限制时间段内限制文档的滚动。在第三限制模式中,每当文档被滚动到该标记部分时,都在第二预定限制时间段内限制该文档的滚动。第二预定限制时间段最好小于第一预定限制时间段。例如,第一限制模式可以是高限制模式,第二限制模式可以是普通限制模式,第三限制模式可以是低限制模式。如果标记部分被设置为低限制模式,则每次文档被滚动到该标记部分,都在第二预定限制时间段(例如额外设置的一个短时间段)内限制文档的滚动,而不考虑通过所述标记的值而为该标记部分预设的限制时间段(即第一预定限制时间段)。该短时间段最好小于为该标记部分预设的限制时间段,并且最好小于1秒,例如为0.5秒。如果标记部分被设置为高限制模式,则每次文档被滚动到该标记部分,都在为该标记部分预设的限制时间段(即第一预定限制时间段)内限制该文档的滚动。如果标记部分被设置为普通限制模式,则当文档被滚动到该标记部分的次数小于或等于阈值时,在为该标记部分预设的限制时间段(即第一预定限制时间段)内限制该文档的滚动,而在文档被滚动到该标记部分的次数大于阈值时,在第二预定限制时间段(例如所述额外设置的短时间段)内限制文档的滚动。标记部分的限制模式可以由文档的创建者和读者共同设置,下面给出该设置方式的示例。在创建者一侧,当创建文档时,除了如上文所述在期望内容上添加诸如属性"section"的标记以产生标记部分、并且通过该标记的值指定限制时间段以外,还可以额外地添加与所述标记部分相关联的"模式"属性,并且利用该属性的值来指定标记部分的限制模式。例如,可以分别用"模式"属性的值"0"、"1"和"2"来指示低限制模式、普通限制模式和高限制模式。在普通限制模式的情况下,还可以通过添加额外的次数参数或以其它方式来设置所述阈值。此外,为了便于对文档被滚动到标记部分的次数进行计数,创建者还可以给标记部分分配ID。在读者一侧,可以将整个文档设置为低限制模式、普通限制模式或者高限制模式。例如,读者可以借助于安装在文档阅读器中的插件来进行这一设置。当利用文档阅读器打开文档时,所述插件被激活,并且弹出提示用户选择文档的限制模式的对话框,使得用户能够设置该文档的限制模式。文档中的每个标记部分的最终限制模式根据创建者为该标记部分设置的限制模式和读者为整个文档设置的限制模式来确定。例如,可以根据下表1来确定每个标记部分的最终限制模式。10表1:标记部分的最终限制模式<table>tableseeoriginaldocumentpage11</column></row><table><table>tableseeoriginaldocumentpage11</column></row><table>标记部分的限制模式也可以由文档的创建者单独设置。此时,可以将创建者设置的限制模式直接作为最终限制模式。可替换地,也可以由读者按照与创建者相同的方式来单独地为文档中的每个标记部分或者整个文档设置限制模式。此外,尽管在上面提到由创建者每个标记部分分配ID,但是也可以由读者分配所述ID,或者在文档阅读器打开该文档时由文档阅读器为每个标记部分临时生成ID。对于包含按照上述方式创建的标记部分的文档,根据本发明第二实施例的控制文档滚动的方法和设备可以根据每个标记部分的限制模式来控制文档的滚动。下面,参照图7来描述根据本发明第二实施例的控制文档滚动的方法。图7所示的步骤S701至S703分别与图2所示的根据本发明第一实施例的方法的步骤S201至S203相同,因此为简单起见而省略对相同步骤的描述。当在步骤S703确定文档没有被滚动到标记部分时,该过程进行到步骤S708,并且执行与上文所述相同的操作。当在步骤S703确定文档被滚动到标记部分时,在步骤S704,确定该标记部分的限制模式是低限制模式、普通限制模式还是高限制模式。在由创建者和读者共同设置限制模式的情况下,可以查看分别由创建者和读者设置的限制模式,然后根据表1来确定该标记部分的限制模式。在由创建者或读者单独设置限制模式的情况下,只需查看由创建者或读者设置的限制模式即可。当所述标记部分被设置为高限制模式时,在步骤S705,在为该标记部分预设的所述限制时间段内限制文档的滚动。当所述标记部分被设置为低限制模式时,在步骤S706,在一个短时间段内限制文档的滚动,而不考虑为该标记部分预设的限制时间段。该短时间段可由创建者或读者通过编辑所述文档的脚本文件或者通过文档阅读器中的插件预先设置,并且最好小于为该标记部分预设的限制时间段。此外,所述短时间段最好小于1秒,例如为0.5秒。当所述标记部分被设置为普通限制模式时,在步骤S707,判断文档滚动到该标记部分的次数是否大于阈值。当所述次数小于或等于阈值时,该过程进行到步骤S705,其中,在为该标记部分设置的预定限制时间段内限制文档的滚动。当所述次数大于阈值时,该过程进行到步骤S706,其中,在所述短时间段内限制文档的滚动,而不考虑所述预定限制时间段。为了获得文档被滚动到被设置为普通限制模式的标记部分的次数,可以利用计数器来对文档被滚动到所述标记部分的次数进行计数,并且将计数值与该标记部分的ID相关联地存储在存储器中,其中,每当文档被滚动到被设置为普通限制模式的标记部分时,都将计数值加1。因此,在步骤S707中,可以根据标记部分的ID而从存储器读取相关联的计数值来获得所述次数。与第一实施例相同,在步骤S705-S707中,可以采用多种方式来限制文档的滚动。如上所述,可以将文档的滚动暂停相应的限制时间段,然后在该限制时间段过去之后取消对文档滚动的限制。或者,可以采用上文所述的优选方式来限制文档的滚动,即,当确定文档被滚动到标记部分时,根据标记部分的长度是否超过显示区的长度来限制文档的滚动,然后在相应的限制时间段过去之后取消对文档滚动的限制。不过,根据标记部分的限制模式(以及文档被滚动到该标记部分的次数),这里的限制时间段相应地是为该标记部分设置的预定限制时间段或者所述短时间段。在执行完步骤S705或步骤S706之后,在步骤S708,判断文档是否被滚动到文档的末尾。如果文档被滚动到末尾,在该过程结束。反之,如果文档没有被滚动到文档的末尾,则该过程返回步骤S703,并且执行后续步骤,直到文档被滚动到末尾为止。下面,参照图8来描述根据本发明第二实施例的控制文档滚动的设备。如图8所示,根据本发明第二实施例的控制文档滚动的设备800包括检测单元801、控制单元802、计数器803和存储单元804。当打开文档时,设备800被启动。检测单元801按照与检测单元601相同的方式检测在所打开的文档中是否存在标记部分、该文档是否被滚动以及该文档是否被滚动到标记部分。当检测单元801检测到文档被滚动到标记部分时,其进一步检测该标记部分的限制模式。控制单元802根据所检测的限制模式来限制文档的滚动。在由创建者和读者共同设置限制模式的情况下,检测单元801可以查看创建者为该标记部分设置的限制模式以及读者为整个文档设置的限制模式,然后根据上述表1来确定该标记部分的最终限制模式。在由创建者或读者单独设置限制模式的情况下,检测单元801可以查看由创建者或读者设置的限制模式并且将该限制模式确定为该标记部分的最终限制模式。计数器803对文档被滚动到被设置为普通限制模式的标记部分的次数进行计数,并且将计数值与该标记部分ID相关联地存储在存储单元804中,其中,每当检测单元801检测到文档被滚动到被设置为普通限制模式的标记部分时,都将存储在存储单元804中的相应计数值加1。下面将详细描述控制单元802的操作。检测单元801检测文档是否被滚动到标记部分,并且将检测结果通知给控制单元802。当该文档没有被滚动到标记部分时,控制单元802不干预文档的滚动。另一方面,当该文档被滚动到标记部分时,控制单元802指示检测单元801确定该标记部分的限制模式。检测单元801按照上文所述的方式确定该标记部分的限制模式是低限制模式、普通限制模式还是高限制模式,并且将确定结果通知给控制单元802。当所述标记部分被设置为高限制模式时,控制单元802在为该标记部分预设的所述限制时间段内限制文档的滚动。控制单元802可以通过查看用于指示该标记部分的标记的值来获得所述限制时间段。当所述标记部分被设置为低限制模式时,控制单元802在上文所述的短的时间段内限制文档的滚动,而不考虑为该标记部分预设的限制时间段。12当所述标记部分被设置为普通限制模式时,控制单元802判断文档滚动到该标记部分的次数是否大于阈值。当所述次数小于或等于阈值时,控制单元802在为该标记部分设置的预定限制时间段内限制文档的滚动。当所述次数大于阈值时,控制单元802在所述短时间段内限制文档的滚动,而不考虑所述预设的限制时间段。控制单元802可以根据标记部分的ID而从存储单元804中读取相关联的计数值来获得文档滚动到该标记部分的次数。除了上述限制操作以外,控制单元802还可以突出显示该标记部分。此外,控制单元802可以采用上文所述的多种方式来实施对文档滚动的限制,其中,根据标记部分的限制模式(以及文档被滚动到该标记部分的次数),限制文档滚动的时间段相应地是为该标记部分预定的限制时间段或者上文所述的短时间段。在这里,为了避免重复而省略其描述。在上文中描述了根据本发明实施例的控制文档滚动的设备。应当认识到,可以以包括硬件、软件或其组合的各种形式来实现所述设备,并且,可以独立于文档阅读器而实现所述设备,也可以以例如插件的形式将所述设备集成在文档阅读器中。可以看到,与用户可自由滚动文档而不受任何限制的传统技术不同,根据本发明实施例的控制文档滚动的方法和设备基于文档的内容来控制文档的滚动,使得对于文档中的某些期望内容,用户不能通过滚动该文档而有意或无意地跳过或忽略该内容。本发明的替换实施例还可以包括计算机可读介质上的计算机可读代码。所述计算机可读代码在被执行时能够执行控制文档滚动的方法。计算机可读介质可以包括计算机可读记录介质和计算机可读传输介质。计算机可读记录介质是能够存储随后可由计算机系统读取的数据的任何数据存储装置。计算机可读记录介质的示例包括诸如只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘和硬盘的磁存储介质以及诸如CD(致密盘)和DVD(数字多用途盘)的光存储装置。也可以将计算机可读记录介质分布在网络耦接的计算机系统上,使得以分布式方式存储和执行所述计算机可读代码。计算机可读传输介质可以传输载波或信号(例如通过因特网进行的有线或无线数据传输)。此外,本发明所属领域的程序员可以容易地解释用于实现本发明的功能程序、代码和代码段。尽管已经示出和描述了本发明的示例实施例,本领域技术人员应当理解,在不背离权利要求及其等价物中限定的本发明的范围和精神的情况下,可以对这些示例实施例做出各种形式和细节上的变化。1权利要求一种控制文档滚动的方法,该文档具有标记部分并且在显示区内被滚动显示,所述方法包括检测该文档是否被滚动到所述标记部分;以及当文档被滚动到所述标记部分时,限制该文档的滚动。2.如权利要求1所述的方法,其中,所述检测步骤包括计算标记部分相对于文档开头的标记部分起始位置;计算显示区相对于文档开头的显示区起始位置,以及通过检查标记部分起始位置和显示区起始位置是否相同来确定文档是否被滚动到所述标记部分,其中,当标记部分起始位置和显示区起始位置相同时,确定文档被滚动到所述标记部分。3.如权利要求1所述的方法,其中,所述限制步骤包括暂停文档的滚动。4.如权利要求1所述的方法,其中,所述限制步骤包括判断标记部分的长度是否小于显示区的长度;以及当标记部分的长度小于显示区的长度时,限制该文档的滚动使得标记部分始终被显示在显示区内,当标记部分的长度大于显示区的长度时,限制该文档的滚动使得显示区只能显示该^H己部分。5.如权利要求1至4之一所述的方法,其中,所述标记部分被提供有对应的预定限制时间段,并且其中,在所述限制步骤中,在所述预定限制时间段内限制文档的滚动,然后在该预定限制时间段过去之后取消对文档滚动的限制。6.如权利要求1至4之一所述的方法,其中,所述标记部分被提供有对应的第一预定限制时间段和限制模式,并且其中,所述限制步骤包括以下步骤检测所述标记部分的限制模式;根据所检测的限制模式来限制文档的滚动。7.如权利要求6所述的方法,其中,在所述限制步骤中,如果所检测的限制模式为第一限制模式,则每当文档被滚动到该标记部分时,都在第一预定限制时间段内限制该文档的滚动,如果所检测的限制模式为第二限制模式,则在文档被滚动到该标记部分的次数小于或等于阈值时,在第一预定限制时间段内限制该文档的滚动,而在文档被滚动到该标记部分的次数大于阈值时,在第二预定限制时间段内限制文档的滚动;以及如果所检测的限制模式为第三限制模式,则每当文档被滚动到该标记部分时,都在第二预定限制时间段内限制该文档的滚动。8.如权利要求7所述的方法,其中,第二预定限制时间段小于第一预定限制时间段。9.如权利要求1所述的方法,其中,在所述限制步骤中,还突出显示该标记部分。10.—种控制文档滚动的设备,该文档具有标记部分并且在显示区内被滚动显示,所述设备包括检测单元,用于检测该文档是否被滚动到所述标记部分;以及控制单元,用于当文档被滚动到所述标记部分时限制该文档的滚动。11.如权利要求io所述的设备,其中,当执行所述检测时,检测单元计算标记部分相对于文档开头的标记部分起始位置和显示区相对于文档开头的显示区起始位置,并且检查标记部分起始位置和显示区起始位置是否相同,以便确定文档是否被滚动到所述标记部分,其中,当标记部分起始位置和显示区起始位置相同时,检测单元确定文档被滚动到所述标记部分。12.如权利要求IO所述的设备,其中,控制单元通过暂停文档的滚动来执行所述限制。13.如权利要求IO所述的设备,其中,当限制文档的滚动时,控制单元判断标记部分的长度是否小于显示区的长度,并且当标记部分的长度小于显示区的长度时,限制该文档的滚动使得标记部分始终被显示在显示区内,而当标记部分的长度大于显示区的长度时,限制该文档的滚动使得显示区只能显示该标记部分。14.如权利要求10至13之一所述的设备,其中,所述标记部分被提供有对应的预定限制时间段,并且其中,当限制文档的滚动时,控制单元在所述预定限制时间段内限制文档的滚动,然后在该预定限制时间段过去之后取消对文档滚动的限制。15.如权利要求10至13之一所述的设备,其中,所述标记部分被提供有对应的第一预定限制时间段和限制模式,并且其中,当限制文档的滚动时,检测单元检测所述标记部分的限制模式,并且控制单元根据检测单元检测的限制模式来限制文档的滚动。16.如权利要求15所述的设备,其中,如果所检测的限制模式为第一限制模式,则每当文档被滚动到该标记部分时,控制单元都在第一预定限制时间段内限制该文档的滚动;如果所检测的限制模式为第二限制模式,则在文档被滚动到该标记部分的次数小于或等于阈值时,控制单元在第一预定限制时间段内限制该文档的滚动,而在文档被滚动到该标记部分的次数大于阈值时,控制单元在第二预定限制时间段内限制文档的滚动;如果所检测的限制模式为第三限制模式,则每当文档被滚动到该标记部分时,控制单元都在第二预定限制时间段内限制该文档的滚动。17.如权利要求16所述的设备,其中,第二预定限制时间段小于第一预定限制时间段。18.如权利要求IO所述的设备,其中,当限制文档的滚动时,控制单元还突出显示该标记部分。全文摘要提供了一种控制文档滚动的方法和设备,该文档具有标记部分并且在显示区内被滚动显示,所述方法包括检测该文档是否被滚动到所述标记部分;以及当文档被滚动到所述标记部分时,限制该文档的滚动。所述方法和设备能够根据文档的内容来控制文档的滚动,使得所述内容不会由于文档的快速滚动而被忽略。文档编号G06F17/21GK101788975SQ200910002998公开日2010年7月28日申请日期2009年1月23日优先权日2009年1月23日发明者何潇,佘伟,周佩聆,左志波,马岳申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1