CN103106079A - 数字内容阅读器及其显示方法 - Google Patents
数字内容阅读器及其显示方法 Download PDFInfo
- Publication number
- CN103106079A CN103106079A CN2013100430537A CN201310043053A CN103106079A CN 103106079 A CN103106079 A CN 103106079A CN 2013100430537 A CN2013100430537 A CN 2013100430537A CN 201310043053 A CN201310043053 A CN 201310043053A CN 103106079 A CN103106079 A CN 103106079A
- Authority
- CN
- China
- Prior art keywords
- stack
- state
- digital content
- item
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供了一种数字内容存储方法、数字内容阅读器及其显示方法。其中,所述数字内容包括相关联的多个叠加项,所述存储方法包括,通过根据所述叠加项的类型及其可用于接收用户输入的所有切分点提取所述叠加项的状态信息;根据所述状态信息建立所述叠加项的状态对应的状态迁移模型;所述状态迁移模型包括,所述叠加项的基本属性参数;所述叠加项对应的状态信息参数;所述叠加项对应的消息列表。本发明的数字内容阅读器及其显示方法可以实现多阶的互动显示。
Description
技术领域
本发明涉及一种数字内容阅读器及其呈现方法,尤其涉及一种能够进行多级互动的数字内容阅读器及其呈现方法。
背景技术
数字内容可以在多种便携式装置,例如手持平板电脑,移动手机上以适合于阅读的方式呈现。数字内容一般由多页的PDF,HTML、Image文件构成,并且在加载到便携式装置的内存中后,读者可以通过便携式装置中的输入单元对数字内容进行翻页操作,从而对每页的内容进行阅读。
目前,随着移动设备和互联网的发展,数字内容不再是简单的扁平化的呈现给读者。以多媒体和人机交互的显示效果呈现给读者。读者可以通过多种交互方式去阅读数字内容。
有很多技术和平台支持数字内容在便携式装置上的以交互的方式进行呈现。其中有一个很普遍的解决方案是把数字内容的呈现分成很多层,每一层上放置一部分数字内容,所有层上的内容通过在显示屏的一个平面上投影的上下遮挡关系关系可以被投射到同一个平面上,从而显示出用户最终看到的效果。这里我们把层上叠加层的方式称为叠加放置。其中,数字内容的显示和互动可以通过人机接口设计中的GUI(图形用户接口)设计技术中的分层结构设计实现。通过设计各层坐标系、在坐标系上创建层和各子层等,实现数字内容的各层内容的人机互动。
内容上放置内容或非放置关系的相互关联给相应的处理带来很大的复杂度。在现有的互动内容的阅读器中,有的只依次处理单一的叠加项,并不支持叠加项的关联关系。有的通过对各种叠加项的各种直接组合来达到两阶次的互动。有的阅读器会按照固定模式展示多阶次互动内容,但其无法满足随意组合的互动内容。
发明内容
有鉴于此,本发明的主要目的在于提供一种能够达到多级互动的显示效果数字内容阅读器。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种数字内容的文件存储在存储介质中的方法,所述数字内容包括相关联的多个叠加项,所述方法包括:
根据所述叠加项的类型及其可用于接收用户输入的所有切分点提取所述叠加项的状态信息;
根据所述状态信息建立所述叠加项的状态对应的状态迁移模型;
所述状态迁移模型包括,
所述叠加项的基本属性参数;所述叠加项对应的状态信息参数;所述叠加项对应的消息列表。
其中,
所述消息列表包括在所述叠加项所要发布的消息列表和/或所述叠加项订阅的消息列表及其对应的动作参数。
其中,
按照页的形式存储所述数字内容的多个页面;
在每个页面上放置对应的所述叠加项;
所述叠加项的基本属性参数包括所述叠加项的名称、类型、所属页信息、及所在页面的区域范围。
其中,
所述状态信息参数进一步包括状态名称、所述状态对应的呈现形态、
及所述状态所对应的内容在所述存储介质中的路径。
本发明进一步提供一种数字内容阅读器,所述页面包括可被触发且相互关联的叠加项,其中
所述阅读器包括:
显示屏,具有可操作功能,用于显示所述数字内容页面;
存储装置,用于将所述数字内容按照可被读取的文件格式进行存储;
处理器,用于通过所述显示屏接收用户的操作,并根据所述操作读取所述存储装置中的文件格式并显示相应的所述数字内容;
所述文件格式包括所述叠加项的状态迁移模型,所述状态迁移模型包括所述叠加项的基本属性参数、根据所述叠加项的类型划分和可以接收用户输入的切分点划分的所述叠加项的状态的信息参数、以及与所述叠加项的状态相关联的消息列表。
其中,
所述消息列表包括在所述叠加项所要发布的消息列表和/或所述叠加项订阅的消息列表及其对应的动作参数。
其中,
按照页的形式存储所述数字内容的多个页面;
在每个页面上放置对应的所述叠加项;
所述叠加项的基本属性参数包括所述叠加项的名称、类型、所属页信息、及在所在页面的区域范围。
其中,
所述状态信息参数进一步包括状态名称、所述状态对应的呈现形态、
及所述状态所对应的内容在所述存储装置中的路径。
其中,
所述处理器包括主控制器单元、各叠加项控制器及消息队列处理单元。
所述主控制器单元用于根据用户输入的对叠加项的操作,调用对应的叠加项控制器执行相应的处理;
叠加项控制器用于根据从主控制器单元接收到的用户输入指令读取所述叠加项的状态迁移模型,并控制叠加项迁移至所述用户输入指令对应的状态,并根据所述状态信息呈现所述状态对应的内容;以及确定要发布的消息和/或根据从所述消息队列处理单元接收到的消息读取所述叠加项对应的状态迁移模型,处理相应的动作;
消息队列处理单元,用于根据将接收到的消息发送给所述消息的订阅方的叠加项控制器。
其中,
所述叠加项包括主动型叠加项和非主动型叠加项;
所述主动型叠加项随其所属页面被触发显示时与所述页面一同显示;所述非叠加项在其所属页面被触发显示时不随所述页面一同显示。
本发明又提供了一种在阅读器中显示多级互动的数字内容的方法,所述数字内容包括关联地放置的叠加项,所述叠加项通过预定的文件格式存储,所述预定的文件格式包括所述叠加项包括状态信息及相应的状态迁移模型,所述阅读器包括叠加项控制器,其中所述方法包括:
按照预定的文件格式加载所述数字内容;
接收用户的输入指令;判断所述指令是否是对叠加项的操作;
若是,则调用叠加项控制器处理所述输入指令;
若否,根据用户输入指令执行相应的操作。
其中,
所述叠加项控制器处理所述输入指令的方法包括,
根据用户输入指令及所述叠加项的当前状态迁移到另一个状态;
呈现所述另一个状态对应的内容;
判断是否需要发布消息;
若是,则发布消息;若否,则结束当前流程。
其中,
所述叠加项控制器还用于处理如下流程:
接收从其他叠加项控制发来的消息;
读取状态迁移模型,查找处理所述消息对应的动作;
处理所述动作;
判断是否需要发布消息;
若是,则发布消息;若否,则结束当前流程。
本发明所提供的,具有以下优点:
互动内容上放置互动内容就对应于叠加项上放置叠加项。这种叠加是多阶次、可嵌套的。这种方式很方便于设计者表达一些动态的并依据于读者的反馈来呈现相应部分的内容。
附图说明
图1(a)-(e)为根据本发明的实施例的数字内容的显示效果;
图2为根据图1所示的数字内容中的所有叠加项;
图3为根据本发明的实施例的叠加项的状态切分的示意图;
图4为根据本发明的消息队列管理模块的消息流示意图;
图5为根据本发明的消息流与叠加项状态之间的关联示意图;
图6为根据本发明的实施例的数字内容阅读器结构示意图;
图7为根据图1所示的数字内容的各叠加项的工作流程示意图;
图8为图6所示数字内容阅读器的主控制器工作流程示意图;
图9为图6所示数字内容阅读器的各叠加项对用户输入事件指令的处理流程示意图;
图10为图6所示数字内容阅读器的叠加项对消息的处理流程示意图;
图11为本发明提供的一个实施例的程序框架示意图。
具体实施方式
下面将结合附图及本发明的实施例对本发明的装置和方法作进一步详细的说明。
首先,将结合附图1(a)-(e)针对本发明的叠加项的定义进行解释说明。可以理解的是,图1(a)-(e)仅示例性地示出叠加项的例子,本发明的叠加项并不限于图1(a)-(e)中所述的例子。
如图1(a)-(e)所示为由本发明的数字内容阅读器的显示屏显示的可以进行多阶互动的一本关于时尚家居的电子杂志中提取的某一页中一组顺序显示的视图。其内容是关于圣诞节客厅的场景布置。其中,阅读器的显示屏可以是可以操作的触摸屏。
其中,图1(a)所示为用户翻阅到此页面时所看到的第一幅视图10。其中,视图10包括基本层视图11(文字部分)。基本层视图11可以是由,例如现有技术的PDF文件组成的有文字的视图。可以理解的是,基本层视图也可以不包含任何文字或图片,只需要能够承载叠加项就可以。
可以看出,在基本层视图11的下半部分(其位置可以通过在显示屏设置的坐标确定)上面,放置了一个幻灯片叠加项1,幻灯片叠加项1可以包含很多帧图片,例如图片1A、1B、1C,每帧图片1A、1B、1C是可以表现不同的客厅布置设计。这里,设置幻灯片叠加项1在被初始加载时,自动显示第一帧图片1A。其中,可以在幻灯片叠加项1上标注一个可以被用户操作的标识,可以使得用户知道该幻灯片叠加项可以被操作。
图1(b)为用户在通过触摸屏对幻灯片叠加项1进行第一次互动操作,例如用手指向右滑动后,所显示的第二幅视图12。
此时,可以看出,在基本层视图11的下半部分显示出幻灯片叠加项1的第二帧图像1B,图像1B中的物品“沙发靠垫”处显示有两个热区(“HOT”)图片2、2’;
当用户在触摸屏上对其中一个(或两个)热区2、2’进行操作后,例如用手指点击热区2、2’所处的区域,则显示屏将在幻灯片第二帧1B中叠加显示出一个关于两个靠垫的弹出列表图片3,如图1(c)所示;其中,列表图片3上叠加显示有可操作的“物品详情”按钮4、4’;
接着,当用户通过触摸屏点击弹出列表图片3中的其中一个“物品详情”按钮4后,则显示屏将接着显示出关于靠垫的详情介绍的文本框5,如图1(d)所示;其中,详情介绍文本框5不具有可操作区域。
最后,当用户通过用手指滑动触摸屏对幻灯片1继续进行翻页操作时,显示屏将在基本层11上显示幻灯片1的第3帧图片1C,如图1(e)所示。此时,在上一视图,如图1(d)所示中弹出的所有图片、按钮和文本框等自动关闭。
下面通过图2详细说明为了达到图1所示电子杂志文件中的互动效果而分层放置的所有叠加项。其中,我们将幻灯片1、两个热区图片2、2’、靠枕弹出图片3,靠枕上的两个了解详情按钮4、4’和详情文本框5等7个内容项称为不同的叠加项。
其中,幻灯片1进一步包括其上没有放置叠加项的第1帧图片1A、第3帧图片1C,以及其上叠加放置具有相关联的叠加项的第2帧图片1B。
其中,两个热区2、2’设置在同一层,并放置在幻灯片1的第二帧图片1B所在层上;靠枕弹出图片3由两个热区图片2、2’触发,并叠加放置在基本层11上;了解详情按钮(4、4’)设置在同一层,并叠加放置在靠枕弹出图片3所在层上;详情文本框5由了解详情按钮4触发,并叠加放置在基本层11上。
其中,通过将叠加项设置在基本层11上而非被其触发的叠加项层上,叠加项可以不受被其触发的叠加项的图像范围限制。
下面将结合图2中的叠加项举例说明叠加项的状态的定义及其提取方法。
如上所述,叠加项可以包括多种类型的文件,例如视频、音频、幻灯片、动画片、按钮、选项卡、360度展示台、可拖拽的图片等。提取叠加项的状态需要对不同类型的叠加项进行分析。
下面以文件类型为幻灯片、视频、按钮为例来阐述叠加项的状态(state)定义和提取。
首先以类型为幻灯片的叠加项为例说明提取其状态的方法。
参照图1,叠加项幻灯片1包括3幅图片1A(图1(a)中所示)、1B(图1(b)中所示)、1C(图1(e)中所示)。在初始化呈现该幻灯片1时,会在触摸屏上对应显示其第一幅图片1A;当用户的手指在触摸屏的幻灯片区域滑动时,会按顺序显示下一帧图像,即幻灯片1的第二帧图片1B的图像。即,此时图像显示的内容发生了变化。这里,我们称之为状态的变化,或迁移。
由于幻灯片的每一帧图片对应的图像在显示屏上呈现时,用户都可以用手指点击、拨动或拖移。所以,在提取叠加项幻灯片的状态时,幻灯片的每一帧对应的图像被提取为一个状态。以图1所示的幻灯片为例,其可以被提取为3个状态,每个状态对应其在触摸屏上显示的3帧图像,3个状态对应的内容分别为对应帧的图片文件1A、1B、1C。
下面以文件类型为视频的叠加项为例说明提取其状态的方法。
视频的每一帧对应的图像是连续地自动播放的。在一般情况下不可以(或需要)接收用户通过某种输入方式在某一帧图像上进行操作。在这种情况下,我们把整个视频提取为一个状态。但有时为满足一些特殊的设计需求,视频也可能呈现多种状态。例如,视频可以被定格在某一时间点,并在当前定格的对应的帧图像上,显示一个按扭叠加项;当用户点击此按钮,会展示一个弹出式文本框对当前定格的这一帧进行详细的描述。在这种情况下,因在接收到用户输入时为状态的切分点,因此整个视频会提取出两个状态,一是当前定格帧之前的视频部分和以此帧为开始的剩下的视频部分。
以此类推,按钮的状态可以被提取为用户点击该按钮前后,点击前图像对应的状态和用户点击该按钮后图像对应的状态。
综上,如图3所示,叠加项的状态的提取可以根据叠加项类型,按照预定的显示效果将可能接收到用户输入点的位置作为状态的切分点,将叠加项切分为一个或多个状态0-状态n。
需要说明的是,有些在显示屏上显示的动态的内容并不是本发明中所述的叠加项的状态。这里列出一些典型的非叠加项状态的例子。
例如,叠加项的动画展示。叠加项的整体视图可以有动画的形式。比如,一个按钮在屏幕上以一缩一放或钟摆的方式展示。这种动画效果是叠加项对应的视图的整体展示,与叠加项的状态没有关系。
或者,叠加项有动画效果的装载。比如,叠加项在最初呈现在屏幕时,可以伴随一些动画效果。例如,一个叠加项是以流星轨迹的方式由小变大并最终呈现在屏幕上。这是叠加项装载时的一些特效,与叠加项的状态没有关系。
以上简要地对本发明所定义的叠加项、叠加项的状态进行了描述。下面将说明为了实现本发明的显示效果,各叠加项之间如何进行相互关联。
为了实现的各叠加项之间的相互关联从而达到数字内容的多级互动显示效果。本发明利用了消息的队列管理机制作为各叠加项之间进行关联的通信机制。其中,消息管理机制是一个可独立部署的应用程序组件,很多平台或第三方软件提供商会支持消息的队列管理。以苹果的iOS为例,它的消息中心服务就涵盖此功能。如上所述,叠加项的关联体现为其状态的迁移。通过消息驱动的方法,我们把各叠加项的状态迁移处理变得容易。
如图4所示的消息驱动机制中,消息的发布方环节、订阅方环节和消息的队列管理环节相互独立。一个消息由哪一个叠加项来处理并不被触发这一消息的叠加项所关心。这大大降低了处理的复杂度。消息驱动处理将在以后详细描述。
基于如上所述,为了实现本发明的显示效果,需要首先提取叠加项的状态,并建立其对应的基于消息驱动的状态迁移模型。其中,状态迁移模型可以通过本发明提供的预定文件格式被加载到内存中以进行互动显示。
附件一为根据如上所述的预定文件格式存储的数字内容文件中的几段样本片段。为更清晰的描述此文档格式,这里省略了一些语义较重复或与阐述本方法无关的段落,并以’…’形式代替。
附件一提供了按页存储的数字内容其中一页的包含的一些叠加项和对应的状态迁移模型数据。一般地,数字内容阅读器可以按照页依次读取数字内容。
此部分的文件可以包含叠加项的基本属性、叠加项的呈现形式属性、叠加项的状态信息、此叠加项所发布的消息列表、此叠加项订阅的消息列表以及所触发的动作。
附件一
以上描述非叠加项的文件格式,其可以根据现有的通用的标准的文件格式进行存储,这里不再赘述。下面为该非叠加项所在页包含的所有叠加项的预定文件格式的XML样本。
上述XML文件描述了叠加项的属性信息,包括叠加项所处页面的区域范围、名称、类型及所属页号等。
上述XML描述文件格式为幻灯片叠加项所包含的状态信息及状态对应消息列表等。其中,状态信息可以包括状态id、状态类型(type)、状态对应的呈现形态、状态对应的内容的存储的路径等。
上述XML文件为按钮叠加项的状态迁移模型数据。
其中,各叠加项列表被定义在overlays元素中。上面的样本中共列举了两个叠加项(overlay)。每一个Overlay元素有一个page(页)属性,用以表明此叠加项所在的页。
第一个overlay,类型为幻灯片。它包含了3个状态,对应于幻灯片在屏幕上的三帧图像。其id分别为0,1,和2。此overlay还包含了一个消息发布的元素,表明此overlay在满足其中的触发条件下会发布消息。
第二个overlay,类型为按钮。它包含了2个状态,对应于按下前和按下后的状态。此按钮overlay既有消息发布元素(publishRules),又有消息订阅元素(Subscribe Rules)。表明此按钮在满足触发条件时会发布消息,也会订阅消息。
具体地,叠加项的状态进一步包括,例如上面摘取的样本所示,状态名称(id)、类型(type)、所对应的内容(content)。其中内容可以包括视频的片段、图像、或一组图像等。其中在幻灯片overlay的id为1的状态中,有”messageOnBegin” 和“messageOnEnd”两个触发条件参数。这两个参数表明此状态1在进入和离开时会发出消息。具体的消息信息在接下来要描述的“publishRules”元素中。
其中消息的发布元素如上面摘取的样本所示,其数据在名字为publishRules的property元素中。这里具体描述的是此叠加项要触发的消息。当触发的条件和叠加项的状态中的条件相吻合时,所对应的消息就被发布到消息队列中。
其中,消息的订阅元素如上面摘取的样本所示,其数据在名字为subscribeRules的property(属性)元素中。这里具体描述的是此叠加项要订阅的消息。其中的“action” 元素定义了当此叠加项接收到所对应的消息后所需要采取的动作。“show”表示加载并显示此叠加项的内容。“Close”表示从当前页的内容展示中去掉此叠加项。可以理解的是,为了达到预定的显示效果,还可以定义其他的动作参数,例如“bringToFront”(把此叠加项至于所有层的最上面),“bringToBack”(把此叠加项至于所有层的最下面),“turnToState:n”(把此叠加项迁移至指定的状态),“turnToStateWithSelect:nofGroup:m”(把此叠加项迁移至由一组选项所映射的状态)等动作(action)。
订阅了消息的叠加项可以在接收到驱动它的那个叠加项的消息后进行相应的处理。叠加项需要在消息的队列服务中注册为对某一消息的观察者(observer)。当某一消息被发布到队列中时,相应的观察者就会被消息队列服务启动去处理此消息。如图5所示,叠加项B控制器(控制器将在以后详细描述)注册为消息M2的观察者。当命名为M2的消息进入到消息队列中时,叠加项B控制器被调用。叠加项B控制器通过查找状态迁移模型中的action为切换到状态3,于是负责把叠加项B的状态切换到state 3。
可以理解的是,当叠加项进入到state3时可能又触发新的消息,并引发另一个叠加项的联动。不再赘述。
需要说明的是,以上XML文件仅示例地说明图1所示例子的叠加项的状态迁移模型。其中,叠加项属性信息、状态信息并不局限于上述XML文件所包含的元素,只要是能够将各叠加项及其状态、对应的消息列表进行对应存储的任何代码格式均包含在本发明的方案中。
可以理解的是,还可以包含更多的叠加项,其中的一些叠加项可以只有一个状态,对应于显示在屏幕上的图像,并且可以仅订阅消息也可以仅发布消息。
可以理解的是,除了通过叠加项的状态迁移模型中的消息可以驱动订阅了此消息的叠加项进入或离开某一状态,还可以由用户的输入驱动引起叠加项的状态迁移。例如,用户手指在触摸屏上的滑动使得幻灯片被切换到下一张。很多移动设备支持以话筒、陀螺仪、摄像头等其他方式的输入。这些输入也可作用在内容上并产生互动效果。
本领域技术人员可以理解,状态迁移模型数据按照此文件格式可以被序列化或反序列化,从而实现从存储介质加载到内存,或从服务器上下载和加载状态迁移模型数据等。
文件格式还可以包括此数字内容的媒体信息、目录信息、每一页的非叠加项的内容信息,例如图1所示的文字图像部分、及叠加项的索引信息,叠加项的索引信息主要是为了方便的归类和查找某一叠加项。例如在阅读器中,可提供列出本书中的所有视频的功能。此功能会使用这个索引信息。它与状态迁移模型没有关系,不再赘述。
以下将结合附图详细说明本发明的数字内容阅读器及其处理方法。
图6示出了根据本发明的实施例的数字内容阅读器100的结构示意图。
其中,数字阅读器100包括输入装置101,用于用户根据人机界面输入触发指令;
输出装置102,用于根据主控制器103的发来的数字内容数据显示相应的所述数字内容;
主控制器103,用于接收所述用户输入的触发指令,并根据用户输入的叠加项触发指令调用相应的叠加项控制器1031-103n;
各叠加项控制器1031-103n,用于接收消息队列处理模块中的消息,发布消息及根据接收到的消息进行叠加项的状态迁移管理和/或控制所述叠加项处理接收到的消息相应的动作;
消息队列处理装置104,用于接收从各叠加项控制器1031-103n发布的消息,并将其接收到的消息发给相应的订阅消息的叠加项;
存储装置105,用于按照预定的文件格式存储所述数字内容。其中,存储装置105可以是现有技术中的任何一种计算机可读存储介质,例如硬盘、光盘等。
下面描述图6所示的数字内容阅读器100对加载在其存储装置105中的数字内容进行处理的流程。为了更直观地进行说明,将图1所示的例子结合图7、图8、图9、图10详细说明本发明的阅读器的处理方法流程。如图7所示,时尚家居数字内容中的叠加项依次为幻灯片、热区1,热区2、弹出图片、详情按钮、详情文本框。我们列出了从读者在手指滑动触发幻灯片切换为第二帧开始的一系列状态迁移、消息的发送、消息的订阅和消息的处理等步骤。
在用户对当前内容进行操作之前,数字内容阅读器100需要对加载的数字内容文件进行解析(预处理)。其中与状态迁移相关的解析主要有:
根据状态迁移模型,叠加项热区1控制器和热区2控制器把自身作为对消息M1和消息M5的观察者在消息队列服务中注册。
根据状态迁移模型,靠枕图片控制器把自身作为对消息M2的观察者在消息队列服务中注册。
根据状态迁移模型,详情按钮控制器把自身作为对消息M3的观察者在消息队列服务中注册。
根据状态迁移模型,详情文本框控制器把自身作为对消息M4的观察者在消息队列服务中注册。
由于幻灯片叠加项的类型可以被设置为主动型叠加项,主动型叠加项可以在其所属页被触发而在显示屏显示时与其所属页一同被显示;可以显示其预设的默认状态,例如初始状态(状态id为0)对应的内容,相对应地,可以设置非主动型类型(isPassive)的叠加项,可以不随其所属页面被触发显示时一同显示;因此第1帧图像直接随该页开始显示的同时显示在输出装置102中;
可以理解的是,其中默认状态是根据状态迁移模型中的预设状态,而不限于本实施例中所述的初始状态,同理如下其他叠加项;
图8所示为控制器103的处理流程;当用户通过输入装置101用手指滑动客厅布置的幻灯片1的第一帧图像时,主控制器103执行步骤200,接收到输入装置101传来的手指滑动事件指令,然后判断哪个叠加项被触发,此时因幻灯片1被触发,因此主控制器102调用并将此事件消息传递给幻灯片控制器,进入幻灯片控制器处理流程;
图9所示为叠加项控制器接收到用户输入事件消息的处理流程;
在步骤300,幻灯片控制器,例如控制器1031接收到用户输入事件指令,接着,进入步骤301,幻灯片控制器1031依据当前帧所在状态及其所接收到用户的输入为第一次输入,因此计算出图像需要切换到第二帧,并依此计算出幻灯片要切换到第二状态(状态id为1);
然后,在步骤302,幻灯片控制1031从幻灯片的状态迁移模型中提取幻灯片的状态1信息并依据状态的呈现形态信息(show)通过输出装置102呈现显示幻灯片的状态1所对应的内容——第二帧图片的图像;此时幻灯片叠加项开始进入到状态1;可以理解的是,状态的呈现形态信息并不限于显示,其可以根据要显示的效果确定。
接着,幻灯片控制器1013判断是否需要发布消息,具体操作为在待发布消息列表(PublishingRules)中检查到消息M1的触发条件是<进入状态1>;因此,进入步骤303,消息M1被发出给消息队列处理单元104;
消息队列处理单元104接收到消息M1后,调用对此消息的观察者热区1和热区2控制器,下面仅以热区1叠加项进行说明;
图10所示为订阅了消息的叠加项控制器在接收到消息队列消息时的处理流程;
在步骤400,热区1控制器1032接收到消息M1;
接着,进入步骤401,读取热区1的状态迁移模型,查找到对此消息M1的处理(action)是显示热区(show);
热区1控制器进入步骤402,处理该动作,控制输出装置102显示热区对应的内容——热区图片,并控制热区1进入默认的第一状态(id为0),即未按下的状态;
接着,热区1 控制器根据热区1的状态迁移模型判断是否需要发布消息;由于在此例中未达到发布消息的条件;热区1控制器处理流程结束,整个处理转到主控流程;
之后,同理,当用户按下热区1时,主控制器101再次调用热区1叠加项控制器1032并将事件指令传递给热区1控制器1032,热区1控制器1032接收到用户的输入,根据图9所示流程,读取热区1的状态迁移模型,并呈现其进入到自身的第2状态(id为1)的图像(例如,图像变为不能被激活形态),同时查找到PublishingRules中的要发布的消息为M2,则触发消息M2发出给消息队列处理单元104;
消息队列处理单元104接收到消息M2后,调用对此消息的观察者靠枕图片控制器;
类似地,靠枕图片控制器查找到M2消息对应的处理是设置并显示靠枕图片视图,此叠加项进入到第1状态;靠枕图片控制器检查到消息M3应当被触发并发布此消息到消息队列处理单元;
然后,类似地,详情按钮控制器作为M3的观察者被调用;详情按钮视图被显示在靠枕图片上;
接着,类似地,当读者按下详情按钮时,详情按钮进入到第2状态,触发消息M4发出;详情文本框控制器作为M4的观察者被调用;
然后,当读者再次在幻灯片区域滑动时,幻灯片离开状态2,触发消息M5发出;
热区1控制器作为消息M5的观察者被调用;热区1控制器关闭自身视图并离开状态1;热区1离开状态1时可以触发一系列消息,与预定的显示效果有关;这里不再一一赘述;
然后,靠枕图片、详情按钮和详情文本框都相应的在订阅的消息驱动下被关闭;
最后幻灯片切换到第三帧客厅布置图片。
可以理解的是,用户也可以选择不显示某个叠加项,例如,当热区1被显示时,用户没有点击热区1,而是直接滑动幻灯片1,则幻灯片控制器1031将控制幻灯片叠加项进入其第三状态,并直接显示第三状态对应的内容,即幻灯片1的第三帧。
可以理解的是,用户也可以不通过手指滑动进行输入,而是通过输入装置101直接选择想要浏览的内容。例如用户想在图1(b)的页面中直接浏览幻灯片的第三帧图片,则可以通过在幻灯片上设置索引菜单来实现。例如,用户可以直接选择索引菜单中的代表各帧图片的标号,例如菜单中显示的1,2,3中的“3”进行选择输入;这样,幻灯片控制器读取幻灯片的状态迁移模型中提取幻灯片的状态1信息并依据此信息通过输出装置/显示装置102呈现幻灯片的状态2所对应的内容——第三帧图片的图像;此时,第二帧图像中的叠加项将不被显示。
可以理解的是,该页中的所有叠加项可以被其他页的叠加项所触发。通过本发明的消息驱动的状态迁移模型就可以实现跨页中叠加项之间的交互。
本领域技术人员可以理解,本发明中所述的所有的处理过程都是通过将存储装置中存储的数据加载在内存中执行的。不再赘述。
本发明进一步提供了根据如上所述的阅读器结构设计的应用程序设计框架。如图11所示,可以利用现有技术的Model-View-Controller (MVC)的编程模式划分各对象的职责。
此阅读器可以通过多种平台上实现,例如,基于iOS, Android 和Web浏览器等。在iOS平台上,可以使用Objective C和C/C++开发语言,开发工具可以采用xCode。主要运行设备包括iPad平板电脑和iPhone智能手机。
在Android平台上,可以使用开发语言Java和C/C++,开发工具主要是Eclipse及Google的ADT插件。主要支持能运行Android 2.0以上系统的各种移动设备。
Web浏览器的版本主要是服务于PC机的用户。基于Web浏览器的版本的开发语言可以采用JavaScript,CSS3,和HTML5。开发工具可采用Eclipse和FireFox的开发插件。主要支持主流的能支持HTML5的Web浏览器,例如Safari 6 和Internet Explorer 9 等。
其中,OverlayModel对应数据模型(Model)层;OverlayController对应控制器(Controller)层;OverlayView对应视图(view)层,用于实现叠加项的人机接口界面。
其中,每一种叠加项(Overlay)会有继承于父类的各子类控制器、视图和数据模型。
其中,各种平台的操作系统提供的主控程序通过硬件接口接收用户的输入指令,并根据用户输入的触发事件指令调用不同的子程序。当用户触发各Overlay对象时,主控制器通过阅读器应用程序模块调用相应的OverlayController层程序。
其中,Overlaymodel层对象依据不同的Overlay的数据在内存中形成相应的叠加项的状态迁移模型。OverlayController 作为控制器,从Overlaymodel中提取数据,设置OverlayView所需的各项视图参数,处理视图在交互中的各项输入。OverlayController注册相应的消息观察者到消息队列服务组件中。
OverlayController也负责对从消息队列服务组件接收到的消息进行处理。在Overlay进入某一状态或离开某一状态时OverlayController也会发出给消息队列服务组件。
可以理解的是,上述实施例中利用MVC的编程模式仅实现本发明的其中一种编程模式。依据此模式,各模块的职责比较清晰,程序容易维护,可扩展性好。但此方案并不是使用状态迁移方法所必须的。例如使用MVP(模型-视图-表示器)或MVVM(模型-视图-视图模型)等编程架构也可达到很好的程序结构。最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,“状态”、“叠加项”等术语仅是对本发明的实施例的功能性说明,所有使用该功能定义所代表的任何替代技术特征均包含在本发明的范围内。
尽管参照较佳实施例对本发明进行了详细说明,任何所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,因此本发明的保护范围当视权利要求范围所界定者为准。
Claims (13)
1.一种将数字内容的文件存储在存储介质中的方法,所述数字内容包括相关联的多个叠加项,所述方法包括:
根据所述叠加项的类型及其可用于接收用户输入的所有切分点提取所述叠加项的状态信息;
根据所述状态信息建立所述叠加项的状态对应的状态迁移模型;
所述状态迁移模型包括,
所述叠加项的基本属性参数;所述叠加项对应的状态信息参数;所述叠加项对应的消息列表。
2.根据权利要求1所述的方法,其特征在于:
所述消息列表包括在所述叠加项所要发布的消息列表和/或所述叠加项订阅的消息列表及其对应的动作参数。
3.根据权利要求1所述的方法,其特征在于:
按照页的形式存储所述数字内容的多个页面;
在每个页面上放置对应的所述叠加项;
所述叠加项的基本属性参数包括所述叠加项的名称、类型、所属页信息、及所在页面的区域范围。
4.根据权利要求1所述的方法,其特征在于:
所述状态信息参数进一步包括状态名称、所述状态对应的呈现形态、
及所述状态所对应的内容在所述存储介质中的路径。
5.一种数字内容阅读器,所述页面包括可被触发且相互关联的叠加项,其特征在于:
所述阅读器包括:
显示屏,具有可操作功能,用于显示所述数字内容页面;
存储装置,用于将所述数字内容按照可被读取的文件格式进行存储;
处理器,用于通过所述显示屏接收用户的操作,并根据所述操作读取所述存储装置中的文件格式并显示相应的所述数字内容;
所述文件格式包括所述叠加项的状态迁移模型,所述状态迁移模型包括所述叠加项的基本属性参数、根据所述叠加项的类型划分和可以接收用户输入的切分点划分的所述叠加项的状态的信息参数、以及与所述叠加项的状态相关联的消息列表。
6.根据权利要求5所述的阅读器,其特征在于:
所述消息列表包括在所述叠加项所要发布的消息列表和/或所述叠加项订阅的消息列表及其对应的动作参数。
7.根据权利要求5所述的阅读器,其特征在于:
按照页的形式存储所述数字内容的多个页面;
在每个页面上放置对应的所述叠加项;
所述叠加项的基本属性参数包括所述叠加项的名称、类型、所属页信息、及在所在页面的区域范围。
8.根据权利要求5所述的阅读器,其特征在于:
所述状态信息参数进一步包括状态名称、所述状态对应的呈现形态、
及所述状态所对应的内容在所述存储装置中的路径。
9. 根据权利要求5所述的阅读器,其特征在于:
所述处理器包括主控制器单元、各叠加项控制器及消息队列处理单元;
所述主控制器单元用于根据用户输入的对叠加项的操作,调用对应的叠加项控制器执行相应的处理;
所述叠加项控制器用于根据从主控制器单元接收到的用户输入指令读取所述叠加项的状态迁移模型,并控制叠加项迁移至所述用户输入指令对应的状态,并根据所述状态信息呈现所述状态对应的内容;以及确定要发布的消息和/或根据从所述消息队列处理单元接收到的消息读取所述叠加项对应的状态迁移模型,处理相应的动作;
所述消息队列处理单元,用于根据将接收到的消息发送给所述消息的订阅方的叠加项控制器。
10.根据权利要求5所述的数字内容阅读器,其特征在于:
所述叠加项包括主动型叠加项和非主动型叠加项;
所述主动型叠加项随其所属页面被触发显示时与所述页面一同显示;所述非叠加项在其所属页面被触发显示时不随所述页面一同显示。
11.一种在阅读器中显示多级互动的数字内容的方法,所述数字内容包括
关联地放置的叠加项,所述叠加项通过预定的文件格式存储,所述预定的文件格式包括所述叠加项包括状态信息及相应的状态迁移模型,所述阅读器包括叠加项控制器,其中所述方法包括:
按照预定的文件格式加载所述数字内容;
接收用户的输入指令;判断所述指令是否是对叠加项的操作;
若是,则调用叠加项控制器处理所述输入指令;
若否,根据用户输入指令执行相应的操作。
12.根据权利要求11所述的方法,其特征在于:
所述叠加项控制器处理所述输入指令的方法包括,
根据用户输入指令及所述叠加项的当前状态迁移到另一个状态;
呈现所述另一个状态对应的内容;
判断是否需要发布消息;
若是,则发布消息;若否,则结束当前流程。
13.根据权利要求11所述的方法,其特征在于:
所述叠加项控制器还用于处理如下流程:
接收从其他叠加项控制发来的消息;
读取状态迁移模型,查找处理所述消息对应的动作;
处理所述动作;
判断是否需要发布消息;
若是,则发布消息;若否,则结束当前流程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310043053.7A CN103106079B (zh) | 2013-02-04 | 2013-02-04 | 数字内容阅读器及其显示方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310043053.7A CN103106079B (zh) | 2013-02-04 | 2013-02-04 | 数字内容阅读器及其显示方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103106079A true CN103106079A (zh) | 2013-05-15 |
CN103106079B CN103106079B (zh) | 2016-06-22 |
Family
ID=48313964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310043053.7A Expired - Fee Related CN103106079B (zh) | 2013-02-04 | 2013-02-04 | 数字内容阅读器及其显示方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103106079B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019200797A1 (zh) * | 2018-04-20 | 2019-10-24 | 平安科技(深圳)有限公司 | 页面数字显示方法、装置、计算机设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101375268A (zh) * | 2006-01-27 | 2009-02-25 | Unz.Org有限责任公司 | 在网络上呈现数字化内容 |
CN101930676A (zh) * | 2009-06-22 | 2010-12-29 | 上海易狄欧电子科技有限公司 | 电子书阅读器及电子书显示方法 |
CN102109949A (zh) * | 2009-12-29 | 2011-06-29 | 鸿富锦精密工业(深圳)有限公司 | 可记录笔记的电子书阅读器和记录笔记的方法 |
CN102331997A (zh) * | 2010-07-13 | 2012-01-25 | 索尼公司 | 信息处理设备、信息处理方法和计算机程序 |
CN102622332A (zh) * | 2011-01-27 | 2012-08-01 | 天脉聚源(北京)传媒科技有限公司 | 一种电子书实现方法及制作系统 |
-
2013
- 2013-02-04 CN CN201310043053.7A patent/CN103106079B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101375268A (zh) * | 2006-01-27 | 2009-02-25 | Unz.Org有限责任公司 | 在网络上呈现数字化内容 |
CN101930676A (zh) * | 2009-06-22 | 2010-12-29 | 上海易狄欧电子科技有限公司 | 电子书阅读器及电子书显示方法 |
CN102109949A (zh) * | 2009-12-29 | 2011-06-29 | 鸿富锦精密工业(深圳)有限公司 | 可记录笔记的电子书阅读器和记录笔记的方法 |
CN102331997A (zh) * | 2010-07-13 | 2012-01-25 | 索尼公司 | 信息处理设备、信息处理方法和计算机程序 |
CN102622332A (zh) * | 2011-01-27 | 2012-08-01 | 天脉聚源(北京)传媒科技有限公司 | 一种电子书实现方法及制作系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019200797A1 (zh) * | 2018-04-20 | 2019-10-24 | 平安科技(深圳)有限公司 | 页面数字显示方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103106079B (zh) | 2016-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2022534214A (ja) | 階層流動コンポーネントおよび動的レイアウトを統合した応答編集および表示を提供するシステムおよび方法 | |
CN102929491B (zh) | 跨窗口动画 | |
US9779097B2 (en) | Platform agnostic UI/UX and human interaction paradigm | |
CN101344836B (zh) | 简化的用户界面导航 | |
CN106303740B (zh) | 智能电视的桌面导航系统及该系统的实现方法 | |
WO2014008449A2 (en) | Dynamic template galleries | |
US20090083710A1 (en) | Systems and methods for creating, collaborating, and presenting software demonstrations, and methods of marketing of the same | |
WO2015032953A1 (en) | Modular responsive screen grid, authoring and displaying system | |
CA2963849A1 (en) | Systems and methods for creating and displaying multi-slide presentations | |
WO2013072691A2 (en) | Framework for creating interactive digital content | |
CN107111496A (zh) | 可定制刀片应用 | |
JP2013008369A (ja) | ユーザインターフェイス及びコンテンツ統合 | |
US20120229391A1 (en) | System and methods for generating interactive digital books | |
WO2015103568A1 (en) | Interactive multimodal display platform | |
US20170235706A1 (en) | Effecting multi-step operations in an application in response to direct manipulation of a selected object | |
KR20150066129A (ko) | 디스플레이 장치 및 그의 제어 방법 | |
TW201229875A (en) | Managing an immersive environment | |
US20130332311A1 (en) | Interface for enhanced continuity of browsing experience | |
CN107209627A (zh) | 对应用启动器内的表示交互的控制 | |
CN109983451A (zh) | 上下文文件管理器 | |
CN115225952A (zh) | 视频的播放控制方法、装置、电子设备、存储介质及产品 | |
CN104714963A (zh) | 视频海报图像和视频简介信息的显示方法、以及浏览器 | |
CN103106079A (zh) | 数字内容阅读器及其显示方法 | |
Sadun | The Core IOS 6 Developer's Cookbook | |
KR101668450B1 (ko) | 디지털 컨텐츠 제공 방법 및 이를 수행하는 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160622 Termination date: 20170204 |
|
CF01 | Termination of patent right due to non-payment of annual fee |