CN102521280B - 一种EPub电子书加载方法及装置 - Google Patents
一种EPub电子书加载方法及装置 Download PDFInfo
- Publication number
- CN102521280B CN102521280B CN201110382086.5A CN201110382086A CN102521280B CN 102521280 B CN102521280 B CN 102521280B CN 201110382086 A CN201110382086 A CN 201110382086A CN 102521280 B CN102521280 B CN 102521280B
- Authority
- CN
- China
- Prior art keywords
- chapters
- sections
- book
- epub
- reading
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/114—Pagination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/34—Browsing; Visualisation therefor
Abstract
本发明公开了一种内存受限设备上EPub电子书的加载方法,主要包括:解析所述EPub电子书的目录文件,得到所述EPub电子书各章节的目录索引信息,显示所述EPub电子书的目录;解析用户选择的所述EPub电子书的章节,显示所述解析完成的章节内容,以及当前页相对于所述用户选择的章节的页码;获取所述EPub电子书中其他各章节的页码数,根据所述获取的章节页码数,显示页码信息。本发明同时提供相应的阅读设备,以及一种共享EPub电子书各章节的加载数据的系统。通过本发明的实施例可知,使用本发明公开的加载方法,可以在不影响用户当前阅读体验的情况下有效完成EPub电子书的整本书加载,并实现在加载过程中,有效提示整本EPub电子书的页码信息,提升了用户的阅读体验。
Description
技术领域
本发明涉及电子书技术领域,具体涉及阅读设备上EPub电子书的加载方法及装置。
背景技术
EPub(Electronic Publication,电子出版物)是一种自由的开放式电子书格式标准,能支持多种装置应用。这种标准由国际数字出版论坛和一些重要的出版商共同开发,电子书的内容可以根据阅读设备的特性,以最适于阅读的方式显示。EPub电子书一般是由按章组织的HTML文件组成,为了实现在阅读时能够连续的翻页和任意的跳转,首先需要将电子书加载到内存中进行解析,解析完毕后向用户展示内容。
目前加载EPub电子书的技术方案主要有两种,方案一每次只加载一章内容(用户选择的章节),可以快速的显示该章节的内容,一般也不会超出阅读设备内存的限制。但是使用这种加载方式,显示的页码只是当前页相对于当前章的页码,不能显示当前页相对于整本书的页码,因而用户只能够在当前章内进行跳转,无法实现全文范围内的自由翻页,这和阅读纸质书的体验差别较大。
方案二是一次性将整本书加载到内存中进行解析,当解析到目标页,即用户选择的页之后就可以显示当前页的内容。在整本书解析完成之后,就可以显示当前页相对于整本书的页码,用户可以在全文范围内自由跳转和翻页。但是使用这种方式也有缺点:在整本书加载完成之前,是不支持翻页和跳转操作的,对于内容较多的EPub电子书,每次打开时让用户等待的时间较长,例如,从30秒到1分钟不等,会大大降低用户体验。
发明内容
解决在不影响用户当前阅读体验(如首次打开电子书的速度)的前提下,无法有效提示整本EPub电子书的页码信息的技术问题。
本发明实施例提供一种EPub电子书的加载方法,包括:解析EPub电子书的目录文件,得到所述EPub电子书各章节的目录索引信息,显示所述EPub电子书的目录;解析用户选择的所述EPub电子书的章节,显示所述解析完成的章节内容,以及当前页相对于所述用户选择的章节的页码;获取所述EPub电子书中其他各章节的页码数,根据所述获取的章节页码数,显示页码信息。
本发明实施例同时提供一种与加载方法对应的EPub电子书阅读设备,包括:解析模块,用于解析EPub电子书的目录文件,加载并解析用户选择的所述EPub电子书中的章节;页码数获取模块,用于在所述解析模块加载并解析用户选择的所述EPub电子书中的章节后,获取所述EPub电子书中其他各章节的页码数;显示模块,用于显示所述解析模块解析出的EPub电子书的目录、所述用户选择的所述EPub电子书中的章节内容和根据所述页码数获取模块获取的章节页码数显示的页码信息。
本发明实施例还提供了一种共享EPub电子书各章节的加载数据的系统,包括:阅读服务器和阅读设备,所述阅读服务器用于存储EPub电子书以及与所述阅读设备对应的所述EPub电子书各章节的加载数据;接收所述阅读设备的EPub电子书下载请求,将所述EPub电子书,以及与所述阅读设备对应的所述EPub电子书各章节的加载数据发送给所述阅读设备;所述阅读设备用于从所述阅读服务器下载所述EPub电子书以及与该阅读设备对应的所述EPub电子书各章节的加载数据,根据所述与该阅读设备对应的所述EPub电子书各章节的加载数据,加载所述EPub电子书。
本发明可以实现在不影响用户当前的阅读体验的情况下有效完成EPub电子书的整本书加载,并实现在加载过程中,有效提示整本EPub电子书的页码信息,提升了用户的阅读体验。
附图说明
图1为本发明实施例提供的EPub电子书加载方法的示意图;
图2为本发明实施例提供的获取EPub电子书各章节页码数的流程图;
图3为本发明实施例提供的阅读设备加载一本EPub电子书的流程图;
图4为本发明实施例提供的EPub电子书章节加载数据共享方案架构图;
图5为本发明实施例提供的在阅读服务器上下载一本没有对应的章节加载数据的EPub电子书的流程图;
图6为本发明实施例提供的在阅读服务器上下载一本已经有对应的章节加载数据的EPub电子书的流程图;
图7为本发明实施例提供的一种阅读设备的示意图;
图8为本发明实施例提供的EPub电子书章节加载数据共享系统的示意图。
具体实施方式
为了便于本领域一般技术人员理解和实现本发明,现结合附图描述本发明的实施例。
目前常用的EPub电子书阅读设备包括但不限于:手机、PDA、手持阅读器、MP4、平板电脑等。本发明实施例提供一种阅读设备上EPub电子书的加载方法,特别适用于内存容量不高,但是电子书文件较大的情形,如图1所示,详述步骤如下:
步骤101、用户打开一本EPub电子书时,阅读设备首先解析电子书内后缀名为NCX的导航控制文件(NCX,Navigation Control file for XML),得到该电子书一共有多少章、各章节的标题信息、各章节在电子书内的索引和各章节对应的XML或者HTML文件在EPub压缩包内的相对路径。
为了描述方便,将各章节的标题信息、各章节在EPub电子书内的索引和各章节对应的XML或者HTML文件在EPub压缩包内的相对路径统称为各章节的目录索引信息,命名方式不作为对本发明实施例的限定。
完成目录文件的解析之后,即向用户显示该电子书的目录。
步骤102、用户通过目录或者系统书签进入某一章,阅读设备首先读取该章节的目录索引信息,随后即在本机内存中加载该章对应的XML或HTML文件,解析出该章的内容并显示给用户,同时显示当前页相对于本章的页码。
根据当前页相对于本章的页码,用户就可以在该章范围内翻页和自由跳转了。例如,显示的格式可以为10/100,其中10表示正在显示的页面相对于该章的页码,100表示该章的总页码。用户可以在100页的范围内自由跳转,例如30/100、57/100、98/100等,只需输入欲跳转到的页码即可。
步骤103、获取所述EPub电子书中其他各章节的页码数,根据所述获取的章节页码数,显示页码信息。
其中,其他各章节是指EPub电子书中除用户选择阅读的章节以外的其他章节,由于在步骤101中,阅读设备已经对用户选择的章节进行了解析,获取了该章节的页码数,因此无需在步骤103中重复获取该章节的页码数。
页码信息可以统一以n/N的格式显示。其中,N表示已加载部分的总页码,每获取一个章节的页码数就对其进行刷新;n表示当前页相对于整本EPub电子书的页码,特别地,只有在获取用户选择阅读的章节之前的各章节的页码数之后,才可以将n显示出来。当后台获取EPub电子书所有章节的页码数之后,N就表示整本书的页码。
对于已经加载完的内容,用户可以快速的进行跳转,即用户可以在N的范围内自由跳转。如果用户选择跳转的页面在当前显示的章节,则无需重新加载该章,直接显示用户选择的页面即可;如果用户选择跳转的页面在其他章节,则需在内存中重新加载欲跳转页面所在的章节,解析完成后,再向用户显示其选择的页面。
前述步骤101至103中提到的加载是指将EPub电子书某一章节对应的XML或HTML文件载入到阅读设备的内存中,以便阅读设备对其进行解析。解析是指对加载到内存中的XML或HTML文件进行排版,排版完成后即可获得该章内容的页码数,同时要判断该章节是否用户选择阅读的章节,若是,则向用户显示排版完成的该章内容;反之,则不显示。
现举例说明前述步骤103中显示页码信息的过程:
假设一本EPub电子书一共有10章,每章100页。用户选择阅读第3章,阅读设备首先加载这一章并进行解析,完成后向用户显示该章的内容。显示完该章的内容之后,阅读设备随即在后台开始获取该电子书中除第3章以外的各章节的页码数。例如,获取第1章的页码数之后,刷新显示为n/100,第2章页码数获取之后刷新为n/200,在获取第2章的页码数以后,加上之前解析第3章获取的该章页码数,就可以将当前页相对于已加载部分的页码刷新出来,可以是205/300。随后每获取一章的页码数,就刷新已加载部分的总页码,例如205/400、205/700等。
对于已经加载完的部分,用户可以快速的跳转,即可以在前200页、300页、700页的范围内快速跳转,例如137/200、270/300、501/700等。在获取电子书的最后一章的页码数之后,显示的页码更新为205/1000,这时用户就可以在全书范围内自由翻页了。
使用本实施例公开的方案,根据后台获取EPub电子书各章节页码数的进程更新显示的页码信息,既可以使用户明确的感受到后台加载EPub电子书的进度,又可以满足用户在已加载部分以至整本电子书范围内的自由跳转,使用户的阅读体验达到最佳。
图2具体描述了步骤103中获取EPub电子书中其他各章节页码数的流程,结合前述步骤103,在获取用户选择阅读的章节的页码数时,可直接应用步骤101中获取的该章节的页码数,无需再通过该流程获取。
详细步骤如下:
步骤201、阅读设备获取电子书中一个章节的目录索引信息。
步骤202、根据该章节的目录索引信息判断在阅读设备中是否保存有该章节的加载数据。若保存有该章节的加载数据,转向步骤203;若没有保存,转向步骤205。
其中,章节的加载数据包括EPub电子书的唯一性标识、章节的目录索引信息、章节的页码数和解析章节时的页面属性信息。
步骤203、判断该章节的加载数据中的页面属性信息是否和当前显示页面的页面属性相对应。若对应,转向步骤204;若不对应,则转向步骤205。
由于阅读设备解析EPub电子书某章节文件获取的该章节的页码数和用户选择的字体、字号、分辨率、页面大小等页面属性密切相关,因此在确定保存有该章节的加载数据后,还需要判断该章节的加载数据中的页面属性信息是否和当前用户选择的页面属性相对应。若对应,则可直接读取该章节的页码数;若不对应,还需要重新解析该章节在当前页面属性下的页码数。
步骤204、读取该章节的加载数据,获取该章的页码数。转向步骤206。
步骤205、在内存中加载该章节对应的XML或HTML文件,进行解析,获取该章的页码数。
根据前述步骤201-204,若在阅读设备中没有保存和当前页面属性相对应的EPub电子书章节加载数据,就需要阅读设备加载该章节,经过解析获取该章的页码数。
为了避免占用阅读设备过多的内存,每获取一章的页码数,就把在内存中加载的该章对应的XML或HTML文件删除,仅将获取的该章的页码数进行保存。在这种情况下,内存中仅保留用户正在阅读的章节的数据。在另外一种情况下,内存中除保留用户正在阅读的章节数据外,还同时保留该章节之前一章和之后一章的数据,这样用户在本章的最后一页向后翻页时可同时显示本章和其后一章的内容;在本章的第一页向前翻页时,可同时显示本章和之前一章的内容,更接近阅读纸质书时的体验。
步骤206、判断该章节是否是EPub电子书的最后一章。若是最后一章,则结束本流程;若不是最后一章,则转回步骤201,继续获取下一章节的页码数。
对于上述步骤205,在保存解析获得的章节页码数时,本发明实施例将EPub电子书的唯一性标识、该章节的目录索引信息、该章节的页码数和加载该章节时的页面属性信息统一进行保存。其中,EPub电子书的唯一性标识是指使所述EPub电子书区别于其他EPub电子书的标识;章节的目录索引信息包括章节标题信息、该章节在电子书内的索引和该章节文件在EPub压缩包内的相对路径。
为了描述方便,可以将上述统一进行保存的信息称为章节的加载数据,命名方式不作为对本发明方案的限定。
对于用户选择阅读的章节,由于在前述步骤102中,已经通过解析获取了该章的页码数,因此可在步骤102完成后即生成用户选择的章节的加载数据。
为了保证存储的数据能准确的描述一个章节内容在具体终端设备上加载后的数据,本发明实施例提供一种存储字段:
可以看出,前述实施例中获取EPub电子书各章节页码数的流程中包含两个判断步骤:首先判断阅读设备中是否保存有EPub电子书的章节加载数据,再进一步判断该章节加载数据中的页面属性信息是否和当前页的页面属性信息相匹配。当然,也可以不需要判断阅读设备中是否已经保存有EPub电子书各章节的加载数据,而直接依次加载各章节并进行解析,或者,只进行阅读设备中是否保存有各章节加载数据的判断,不进行页面属性信息的匹配判断,而直接读取各章节的页码数。本发明实施例对此不作限定。
本发明实施例中,首先只在阅读设备的内存中加载用户选择的章节,可以快速的解析出该章内容,并向用户显示,不会使用户等待很长的时间。在获取EPub电子书的总页码数时,本发明实施例技术方案不是将整本电子书同时加载到内存中,而是一次只加载一章。经过解析获取该章节的页码数之后,即将内存中加载的章节文件删除,只将该章节的页码数进行保留,再进行下一章的加载。使用这种方法既可以获得当前页相对于整本EPub电子书的页码,实现全书范围内的自由跳转,又可以避免出现一次加载整本EPub电子书超出分配给阅读进程的内存限制,导致用户不能正常进行阅读的情况。
本发明实施例进一步通过判断在阅读设备中是否已经保存有待解析章节的加载数据,从而可以提高加载效率,并通过页面属性信息的进一步匹配,使得加载的准确性更高。
结合上述实施例中公开的技术方案,本实施例具体描述用户打开一本EPub电子书时,阅读设备加载该EPub电子书的流程。
如图3所示,本发明技术方案提供的加载EPub电子书的流程可以分为三个线程,分别是主线程、加载整本书的线程以及UI(user interface,用户界面)线程,以下按顺序描述三个线程内部及相互之间交互的各步骤。
主线程步骤:
步骤311、用户打开一本EPub电子书,阅读设备开始主线程。
步骤312、阅读设备解析电子书内后缀名为NCX的目录文件。向UI线程发送通知,显示解析出的电子书目录。
步骤313、用户通过目录进入电子书的某一章节,阅读设备加载用户选择的章节,并进行解析。
步骤314、向UI线程发送通知,要求刷新当前页面,显示解析出的章节内容和当前页相对于本章的页码。
步骤315、通知后台启动子线程加载整本EPub电子书,获取除用户选择阅读的章节外其他各章节的页码数,转向后台加载整本书的线程。
步骤316、接收后台获取的EPub电子书中其他各章节的页码数,并通知UI线程刷新页码信息。
后台加载整本电子书的线程步骤:
主线程解析完用户选择的章节,并通知UI线程显示解析完的章节内容之后,即通知后台开始加载整本书的线程。
对于后台加载整本EPub电子书,依次获取各章节的页码数的流程,前述实施例中对图2的详解中已有完整的描述,此处不再赘述。
后台每获取一章的页码数,即向主线程反馈已获取的章节页码数,由主线程通知UI线程刷新显示的页码信息,包括:各章节的页码数总和,以及当前页相对于整本EPub电子书的页码。
UI线程步骤:
步骤331、接收主线程发送的更新显示内容的通知。
步骤332、刷新UI界面,更新显示的内容。
前已述及,阅读设备解析用户选择的EPub电子书章节内容以及获取电子书各章节的页码数时,和用户选择的字体大小、分辨率、页面大小等页面属性密切相关。字体的大小可以通过字体缩放进行控制,而进行横竖屏切换和分辨率调整则会导致页面的大小发生变化。
使用本发明技术方案加载EPub电子书的过程中,用户对页面属性做出调整,加载进程也要随之变化。
用户调整了页面属性之后,阅读设备首先要终止后台进程,待重新解析并显示新的页面属性下用户选择的章节内容之后,再重新启动加载整本书的进程。后台依次获取EPub电子书各章节在新的页面属性下的页码数,进而重新显示新的页面属性下的页码信息。
使用本实施例公开的流程加载EPub电子书,三个子线程相互配合,既可以快速的向用户显示其选择的章节的内容,又可以获取整本电子书的页码信息,满足用户自由跳转的需求。由于一次只加载一章的内容进行解析,因而可以只占用很少的内存就获取电子书中各章节的页码数。同时本方案也考虑到了用户调整页面属性时,加载方案的变化,可以快速响应用户的属性调整操作。
目前用户使用的EPub电子书阅读设备,如手机、PDA、手持阅读器、MP4、平板电脑等大都具备上网功能,从阅读服务器上将EPub电子书下载到本地阅读设备中进行阅读已经成为当下一种很流行的电子书阅读模式。其中,阅读服务器是指可以存储EPub电子书及其各章节的加载数据并提供相应下载服务的网络服务器。
结合前述实施例中公开的技术方案和阅读服务器,本发明实施例公开一种EPub电子书章节加载数据的网络共享方案。EPub电子书章节加载数据是指特定的阅读设备每获取一个章节的页码数,保存的EPub电子书的唯一性标识、该章节的目录索引信息、加载该章节时的页面属性信息,以及该章节的页码数的统称。
如图4所示,用户甲从阅读服务器上下载了一本EPub电子书,在首次打开该电子书时加载完电子书各章节,生成各章节的加载数据并存储在了本地。
用户甲可以选择将EPub电子书各章节的加载数据上传至阅读服务器,由于该数据是在特定的阅读设备上生成,因此用户甲在将其上传的同时,还需要上传用户甲阅读设备的类型及其型号等属性信息。阅读服务器依据阅读设备的属性信息将该EPub电子书各章节的加载数据进行存储。
假设用户乙与用户甲使用了同一款电子书阅读设备,用户乙在下载同一本EPub电子书时,就可以同时获取该电子书各章节的加载数据。这样用户乙在阅读该电子书时,在不变更页面属性的前提下,阅读设备就可以直接读取该EPub电子书各章节的加载数据,快速获取各章节的页码数,显示当前页相对于整本EPub电子书的页码和整本EPub电子书的页码数。
若用户乙变更了页面属性,则其阅读设备在解析EPub电子书各章节,获取各章节页码数的同时,会保存新的页面属性下各章节的加载数据。用户乙也可以选择将新保存的各章节的加载数据上传至阅读服务器。
如图5所示,用户从阅读服务器下载一本未保存各章节加载数据的EPub电子书的步骤如下:
步骤501、用户向阅读服务器发送下载EPub电子书的请求,同时在请求中携带用户阅读设备的属性信息。
步骤502、阅读服务器验证用户请求的合法性,并判断是否保存有对应用户阅读设备的EPub电子书各章节的加载数据。
步骤503、没有保存该EPub电子书各章节的加载数据,阅读服务器只向用户发送EPub电子书。
步骤504、用户接收EPub电子书,在打开该电子书时,使用该发明实施例公开的方法生成了各章节的加载数据。
步骤505、用户将本地生成的EPub电子书各章节的加载数据,及其阅读设备的属性信息上传至阅读服务器。
步骤506、阅读服务器存储该EPub电子书各章节的加载数据。
步骤507、阅读服务器向用户发送处理成功的响应。
如图6所示,用户从阅读服务器处获取保存有各章节加载数据的EPub电子书的步骤如下:
步骤601、用户向阅读服务器发送下载EPub电子书的请求,同时在请求中携带用户阅读设备的属性信息。
步骤602、阅读服务器验证用户请求的合法性,并判断是否保存有对应用户阅读设备的EPub电子书各章节的加载数据。
步骤603、保存有该EPub电子书各章节的加载数据,阅读服务器向用户发送EPub电子书,同时发送该电子书的各章节加载数据。
通过将用户阅读设备和阅读服务器相结合,一旦在阅读服务器上存储了某个用户上传的对应特定阅读设备的EPub电子书的各章节加载数据,所有使用相同阅读设备的用户都可以共享该数据,在阅读该电子书时就可以直接读取相应页面属性下的各章节的加载数据,快速地获取各章节的页码数,显示当前页相对于整本EPub电子书的页码和整本EPub电子书的页码数。
结合前述实施例中公开的EPub电子书加载方法,本发明实施例提供一种与之对应的阅读设备,用于实施前述方法实施例,所述阅读设备是指具备EPub电子书阅读功能的设备,包括但不限于手机、PDA、手持阅读器、MP4、平板电脑,笔记本,台式机等。
如图7所示,所述阅读设备700包括解析模块701、页码数获取模块702和显示模块703,具体的:
解析模块701,用于解析EPub电子书的目录文件,得到所述EPub电子书的章节数,以及各章节的目录索引信息,通知显示模块703显示所述电子书的目录文件;加载用户选择的章节进行解析,通知显示模块703显示该章节的内容。
其中各章节的目录索引信息包括各章节的章节标题信息、各章节在电子书内的索引和各章节文件在EPub压缩包内的相对路径。
页码数获取模块702,用于在解析模块701加载并解析用户选择的EPub电子书中的章节后,获取EPub电子书中其他各章节的页码数。
显示模块703,用于显示解析模块701解析出的EPub电子书的目录、用户选择的章节内容、当前页相对于用户选择的章节的页码;还用于显示页码数获取模块702获取的EPub电子书中各章节的页码数总和以及当前页相对于整本EPub电子书的页码,即根据所述页码数获取模块702获取的其他各章节的页码数,显示页码信息。
其中页码数获取模块702还用于将获取的所述EPub电子书中各章节的页码数,生成所述EPub电子书各章节的加载数据,并保存在所述阅读设备中。
EPub电子书中各章节的加载数据包括EPub电子书的唯一性标识、各章节的目录索引信息、获取的各章节的页码数和加载各章节时的页面属性信息。
本发明实施例提供的阅读设备700还可以包括:
页面属性监测模块704,用于判断EPub电子书的页面属性是否发生变化。若发生了变化,则通知解析模块701重新解析用户选择的章节,章节页码数获取模块702重新获取EPub电子书中其他各章节的页码数。
网络模块705,用于阅读设备和阅读服务器之间的信息交互,包括:用于生成阅读设备的属性信息,向阅读服务器发送携带有阅读设备属性信息的传输EPub电子书数据的请求,并接收阅读服务器发送的EPub电子书数据,还用于向所述阅读服务器发送EPub电子书各章节的加载数据。
其中阅读设备的属性信息包括阅读设备的类型及其型号等信息,用于阅读服务器存储对应于特定阅读设备的EPub电子书各章节的加载数据,同时在收到传输EPub电子书数据的请求时,识别发送请求的阅读设备的类型及型号。
本发明实施例同时提供一种共享EPub电子书各章节的加载数据的系统,如图8所示,章节加载数据共享系统800包括阅读设备801和阅读服务器802,具体地:
阅读设备801,用于从所述阅读服务器802下载EPub电子书以及与该阅读设备801对应的所述EPub电子书各章节的加载数据,根据所述与该阅读设备801对应的所述EPub电子书各章节的加载数据,加载所述EPub电子书。
其中,EPub电子书各章节的加载数据是指阅读设备每获取一个章节的页码数之后,保存的EPub电子书的唯一性标识、该章节的目录索引信息、解析该章时的页面属性,以及该章节的页码数的统称。
阅读服务器802,用于存储EPub电子书以及与各种阅读设备801对应的所述EPub电子书各章节的加载数据;接收所述阅读设备801的EPub电子书下载请求,将所述EPub电子书,以及与所述阅读设备801对应的所述EPub电子书各章节的加载数据发送给所述阅读设备801。
使用本实施例公开的数据共享系统,会有大量EPub电子书各章节的加载数据保存在阅读服务器802上,用户在下载EPub电子书时就可以同时获取与其阅读设备801相关联的各章节的加载数据,从而可以快速地读取各章节的页码数,显示当前页相对于整本EPub电子书的页码。
本领域技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和单元,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法步骤可以用硬件、处理器执行的软件程序、或者二者的结合来实施。软件程序可以置于随机存取存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM或技术领域内所公知的任意其它形式的存储介质中,所述的软件或者程序,包括如下步骤:(方法权利要求)。
尽管已示出和描述了本发明的一些实施例,但本领域技术人员应该理解,在不脱离本发明的原理和精神的情况下,可对这些实施例进行各种修改,这样的修改应落入本发明的范围。
Claims (21)
1.一种EPub电子书的加载方法,其特征在于,所述方法包括:
解析所述EPub电子书的目录文件,得到所述EPub电子书各章节的目录索引信息,显示所述EPub电子书的目录;
解析用户选择的所述EPub电子书的章节,显示所述解析完成的章节内容,获取当前页相对于所述用户选择的章节的页码;
获取所述EPub电子书中其他各章节的页码数,根据所述获取的章节页码数,显示所述获取的各章节的页码数总和;
获取所述用户选择的章节之前的各章节的页码数之后,显示当前页相对于整本所述EPub电子书的页码。
2.如权利要求1所述的方法,其特征在于,所述获取所述EPub电子书中其他各章节的页码数的步骤包括:
加载所述EPub电子书中其他各章节并进行解析,获取所述EPub电子书中各章节的页码数。
3.如权利要求1所述的方法,其特征在于,所述获取所述EPub电子书中其他各章节的页码数的步骤包括:
获取所述EPub电子书中某一章节的目录索引信息;
根据所述章节的目录索引信息判断所述章节的加载数据是否已经保存在当前阅读设备中;
若所述章节的加载数据已经保存在所述当前阅读设备中,则读取所述章节的加载数据,获取所述章节的页码数。
4.如权利要求3所述的方法,其特征在于,若所述章节的加载数据未保存在当前阅读设备中,则加载所述章节并进行解析,获取所述章节的页码数。
5.如权利要求1所述的方法,其特征在于,所述获取所述EPub电子书中其他各章节的页码数的步骤包括:
获取所述EPub电子书中某一章节的目录索引信息;
根据所述章节的目录索引信息判断所述章节的加载数据是否已经保存在当前阅读设备中;
当判断所述章节的加载数据已经保存在当前阅读设备中后,进一步判断,当所述章节的加载数据所对应的页面属性信息和当前页的所述页面属性信息相一致时,读取所述章节的加载数据,获取所述章节的页码数。
6.如权利要求5所述的方法,其特征在于,若所述章节的加载数据所对应的页面属性信息和所述当前页的页面属性信息不一致,则加载所述章节并进行解析,获取所述章节的页码数。
7.如权利要求2,4,6任一所述的方法,其特征在于,所述加载所述章节并进行解析,获取所述章节的页码数之后,生成所述章节的加载数据并保存在当前阅读设备中,将所述加载的所述章节从内存中删除。
8.如权利要求1所述的方法,所述解析用户选择的所述EPub电子书的章节完成后,生成所述用户选择的章节的加载数据,并保存在阅读设备中。
9.如权利要求8所述的方法,其特征在于,所述将所述章节的加载数据保存在阅读设备中以后,还包括:将所述章节的加载数据上传至阅读服务器。
10.如权利要求3或4所述的方法,其特征在于,所述已经保存的章节的加载数据,由所述阅读设备生成,或者是由所述阅读设备从阅读服务器处下载。
11.如权利要求3所述的方法,其特征在于,所述章节的加载数据包括所述EPub电子书的标识、所述章节的目录索引信息、所述章节的页码数和解析所述章节时的页面属性信息。
12.如权利要求1所述的方法,其特征在于,当当前页的页面属性信息发生变化时,重新解析所述用户选择的所述EPub电子书的章节,并显示所述重新解析完成的内容;
重新获取所述EPub电子书中其他各章节的页码数,根据所述重新获取的章节页码数,显示所述获取的各章节的页码数总和;
获取所述用户选择的章节之前的各章节的页码数之后,显示当前页相对于整本所述EPub电子书的页码。
13.如权利要求5,6或12任一所述的方法,其特征在于,所述页面属性信息至少包括以下信息之一:字体、字号、分辨率或页面大小信息。
14.如权利要求10所述的方法,其特征在于,所述从阅读服务器处下载所述EPub电子书各章节的加载数据的步骤包括:
向所述阅读服务器发送下载所述EPub电子书的请求,所述请求中携带所述阅读设备的属性信息;
接收所述阅读服务器发送的所述EPub电子书,同时接收所述EPub电子书中各章节的加载数据。
15.一种EPub电子书的加载装置,其特征在于,所述装置包括:
解析模块,用于解析EPub电子书的目录文件,得到所述EPub电子书各章节的目录索引信息;
显示模块,用于显示所述解析模块解析出的EPub电子书的目录;
所述解析模块还用于,解析用户选择的所述EPub电子书的章节;
所述显示模块还用于,显示所述解析模块解析的用户选择的所述EPub电子书中的章节内容;
页码数获取模块,用于获取当前页相对于所述用户选择的章节的页码;
所述页码数获取模块还用于获取所述EPub电子书中其他各章节的页码数;
所述显示模块还用于,根据所述页码数获取模块获取的章节页码数,显示所述获取的各章节的页码数总和,并在所述页码数获取模块获取所述用户选择的章节之前的各章节的页码数之后,显示当前页相对于整本所述EPub电子书的页码。
16.如权利要求15所述的装置,其特征在于,所述装置进一步包括:
页面属性监测模块,用于判断所述EPub电子书当前页的页面属性是否发生变化;
所述当前页的页面属性信息发生变化时,通知所述解析模块重新加载并解析用户选择的所述EPub电子书中的章节。
17.如权利要求15或16所述的装置,其特征在于,所述页码数获取模块进一步用于,将所述获取的EPub电子书中各章节的页码数,生成所述EPub电子书各章节的加载数据,并保存在阅读设备中。
18.如权利要求15所述的装置,其特征在于,所述装置进一步包括:
网络模块,所述网络模块用于与阅读服务器通信,生成阅读设备的属性信息,向阅读服务器发送包含所述阅读设备属性信息的EPub电子书下载请求,并接收所述阅读服务器发送的所述EPub电子书,还用于向所述阅读服务器发送与所述阅读设备对应的所述EPub电子书各章节的加载数据。
19.一种共享EPub电子书各章节的加载数据的系统,包括阅读服务器和阅读设备,其特征在于:
所述阅读服务器用于存储EPub电子书以及与所述阅读设备对应的所述EPub电子书各章节的加载数据;接收所述阅读设备的EPub电子书下载请求,将所述EPub电子书,以及与所述阅读设备对应的所述EPub电子书各章节的加载数据发送给所述阅读设备;
所述阅读设备用于从所述阅读服务器下载所述EPub电子书以及与该阅读设备对应的所述EPub电子书各章节的加载数据,根据所述与该阅读设备对应的所述EPub电子书各章节的加载数据,加载所述EPub电子书。
20.如权利要求19所述的系统,其特征在于,所述阅读设备进一步用于:
生成与所述阅读设备对应的EPub电子书各章节的加载数据,并将所述各章节的加载数据上传至所述阅读服务器;
所述阅读服务器进一步用于存储所述阅读设备上传的所述EPub电子书各章节的加载数据,接收其他阅读设备发送的所述EPub电子书下载请求,判断是否存储有所述EPub电子书各章节的加载数据,若有存储,则在发送所述EPub电子书的同时发送所述EPub电子书各章节的加载数据。
21.如权利要求20所述的系统,其特征在于,所述EPub电子书各章节的加载数据包括:所述EPub电子书的标识、所述EPub电子书内各章节的目录索引信息、解析所述各章节时的页面属性,以及所述EPub电子书内各章节的页码数。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110382086.5A CN102521280B (zh) | 2011-11-26 | 2011-11-26 | 一种EPub电子书加载方法及装置 |
PCT/CN2012/073645 WO2012167662A1 (zh) | 2011-11-26 | 2012-04-09 | 一种epub电子书加载方法及装置 |
US13/725,374 US20130139052A1 (en) | 2011-11-26 | 2012-12-21 | Method and apparatus for loading epub electronic book |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110382086.5A CN102521280B (zh) | 2011-11-26 | 2011-11-26 | 一种EPub电子书加载方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102521280A CN102521280A (zh) | 2012-06-27 |
CN102521280B true CN102521280B (zh) | 2014-07-09 |
Family
ID=46292201
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110382086.5A Active CN102521280B (zh) | 2011-11-26 | 2011-11-26 | 一种EPub电子书加载方法及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20130139052A1 (zh) |
CN (1) | CN102521280B (zh) |
WO (1) | WO2012167662A1 (zh) |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102830910B (zh) * | 2012-07-27 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 实现触屏设备网页阅读模式的方法和系统 |
CN102929845B (zh) * | 2012-10-25 | 2017-05-31 | 北京奇虎科技有限公司 | 一种实现网络阅读的服务器和方法 |
CN104919448A (zh) | 2013-01-11 | 2015-09-16 | 拉笔事新闻报 | 用于显示数字版本的设备、方法和系统 |
CN104346186A (zh) * | 2013-08-02 | 2015-02-11 | 腾讯科技(深圳)有限公司 | 实现网络图书离线阅读的方法及装置 |
CN104424160B (zh) * | 2013-09-11 | 2018-07-10 | 北大方正集团有限公司 | 文档跳转的处理系统和处理方法 |
CN103744665A (zh) * | 2013-12-26 | 2014-04-23 | 方正国际软件有限公司 | 漫画播放系统和漫画播放方法 |
CN103761277A (zh) * | 2014-01-09 | 2014-04-30 | 北京掌阔技术有限公司 | 一种ePub电子书的加载方法和系统 |
EP3137984A4 (en) | 2014-04-30 | 2017-12-13 | Hewlett-Packard Development Company, L.P. | Digital document including reference page numbers and fractional page numbers |
JP6314651B2 (ja) * | 2014-05-19 | 2018-04-25 | 富士ゼロックス株式会社 | 情報処理装置及びプログラム |
US20170235727A1 (en) * | 2014-10-13 | 2017-08-17 | Kim Seng Kee | Electronic Filing System for Electronic Document and Electronic File |
CN106156191B (zh) * | 2015-04-21 | 2019-08-06 | 北京大学 | 基于ePub文件的试读方法和基于ePub文件的试读系统 |
CN106469067A (zh) * | 2015-08-14 | 2017-03-01 | 广州市动景计算机科技有限公司 | 内文进度更新方法及装置 |
US11360941B2 (en) | 2015-12-28 | 2022-06-14 | Fasoo.Com Co., Ltd. | Method and device for compressing and decompressing unit files for EPUB file encryption |
CN106294293B (zh) * | 2016-07-21 | 2019-10-18 | 北京乐动卓越科技有限公司 | 一种实现交互式电子阅读的系统、方法和设备 |
CN106250007B (zh) * | 2016-07-21 | 2019-05-14 | 北京乐动卓越科技有限公司 | 一种实现分支选择播放的系统和方法 |
CN106202024B (zh) * | 2016-07-21 | 2019-01-18 | 北京乐动卓越科技有限公司 | 一种实现分支选择结构电子书编辑的系统、方法和客户端 |
CN106445320A (zh) * | 2016-09-08 | 2017-02-22 | 广东源恒软件科技有限公司 | 一种制作和展示电子书内容的方法及装置 |
CN106484248B (zh) * | 2016-09-19 | 2019-12-31 | 北京京东尚科信息技术有限公司 | 电子书的阅读处理方法和装置 |
CN108154041A (zh) * | 2016-12-02 | 2018-06-12 | 北京京东尚科信息技术有限公司 | 一种ePub文档数据安全保护方法、装置及系统 |
CN106776971A (zh) * | 2016-12-05 | 2017-05-31 | 广州阿里巴巴文学信息技术有限公司 | 视频与电子书关联方法、设备、客户端设备和服务器 |
CN106776527B (zh) * | 2016-12-14 | 2020-03-17 | 掌阅科技股份有限公司 | 电子书数据的显示方法、装置及终端设备 |
CN107179860B (zh) * | 2017-03-31 | 2020-01-31 | 北京奇艺世纪科技有限公司 | 一种数据拉取方法及装置 |
CN107045549B (zh) * | 2017-04-25 | 2020-02-14 | 网易(杭州)网络有限公司 | 一种电子书页数获取方法和装置 |
CN107247691B (zh) * | 2017-05-24 | 2021-10-08 | 腾讯科技(深圳)有限公司 | 一种文本信息的显示方法、装置、移动终端及存储介质 |
CN110110255B (zh) * | 2018-01-05 | 2021-06-15 | 北大方正集团有限公司 | 电子文件处理方法和装置 |
CN108519995A (zh) * | 2018-03-05 | 2018-09-11 | 珠海格力电器股份有限公司 | 一种说明书推送方法、装置、存储介质及服务器 |
CN109325049A (zh) * | 2018-07-27 | 2019-02-12 | 平安科技(深圳)有限公司 | 分程异步加载方法、装置、终端设备及存储介质 |
CN109726166A (zh) * | 2018-12-20 | 2019-05-07 | 百度在线网络技术(北京)有限公司 | 电子书的显示方法、装置、计算机设备和可读存储介质 |
CN110532233A (zh) * | 2019-08-20 | 2019-12-03 | 武汉鼎森电子科技有限公司 | 一种epub文件生成方法和系统 |
CN110727887B (zh) * | 2019-09-17 | 2022-08-16 | 武汉鼎森电子科技有限公司 | 一种基于二维码的图书链接处理方法 |
CN110717323B (zh) * | 2019-10-17 | 2020-07-31 | 北京幻想纵横网络技术有限公司 | 文档分章方法及装置、终端和计算机可读存储介质 |
CN112861039A (zh) * | 2019-11-27 | 2021-05-28 | 阿里巴巴集团控股有限公司 | 加载方法、装置、电子设备及计算机存储介质 |
CN113031750A (zh) * | 2019-12-09 | 2021-06-25 | Oppo广东移动通信有限公司 | 电子书的显示方法、装置、存储介质及电子设备 |
CN112487327A (zh) * | 2020-11-30 | 2021-03-12 | 惠州Tcl移动通信有限公司 | 一种电子书加载方法、装置及移动终端 |
CN112632959B (zh) * | 2020-12-29 | 2023-09-01 | 湖北大学 | 一种epub文件解析方法 |
CN113268950A (zh) * | 2021-05-28 | 2021-08-17 | 广州文石信息科技有限公司 | 一种流式文档的加载方法、装置和设备 |
CN113741763A (zh) * | 2021-07-22 | 2021-12-03 | 咪咕数字传媒有限公司 | 电子书的显示方法、装置及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI257211B (en) * | 2001-06-27 | 2006-06-21 | Inventec Appliances Corp | Method and device for realizing download and review of electronic book with WAP |
CN101281529A (zh) * | 2008-05-30 | 2008-10-08 | 杨洪 | 在手持阅读设备上实现超链接阅读的方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7401286B1 (en) * | 1993-12-02 | 2008-07-15 | Discovery Communications, Inc. | Electronic book electronic links |
US7861166B1 (en) * | 1993-12-02 | 2010-12-28 | Discovery Patent Holding, Llc | Resizing document pages to fit available hardware screens |
US8095949B1 (en) * | 1993-12-02 | 2012-01-10 | Adrea, LLC | Electronic book with restricted access features |
US7203900B2 (en) * | 2001-09-14 | 2007-04-10 | Canon Kabushiki Kaisha | Apparatus and method for inserting blank document pages in a print layout application |
TWI257056B (en) * | 2004-06-29 | 2006-06-21 | Inventec Appliances Corp | Method for editing an interface of a portable electronic device by using a browser |
WO2008140418A1 (en) * | 2007-05-10 | 2008-11-20 | The Virtual Publishing Company Limited | Electronic on-demand publishing method |
JP5328318B2 (ja) * | 2008-11-26 | 2013-10-30 | キヤノン株式会社 | 情報処理方法、情報処理装置、およびコンピュータプログラム |
JP2010140169A (ja) * | 2008-12-10 | 2010-06-24 | Canon Inc | 情報処理装置及び情報処理装置の制御方法、プログラム、記憶媒体 |
CN101996162A (zh) * | 2009-08-26 | 2011-03-30 | 华为技术有限公司 | 电子书章节处理方法、装置及系统 |
CN102804182A (zh) * | 2010-01-11 | 2012-11-28 | 苹果公司 | 电子文本的操纵和显示 |
US20110231388A1 (en) * | 2010-03-19 | 2011-09-22 | I/O Interconnect, Ltd. | E-book read apparatus and operation thereof |
US8434001B2 (en) * | 2010-06-03 | 2013-04-30 | Rhonda Enterprises, Llc | Systems and methods for presenting a content summary of a media item to a user based on a position within the media item |
US9087043B2 (en) * | 2010-09-29 | 2015-07-21 | Rhonda Enterprises, Llc | Method, system, and computer readable medium for creating clusters of text in an electronic document |
JP2012137929A (ja) * | 2010-12-27 | 2012-07-19 | Sony Corp | 表示装置、表示方法、プログラム |
KR20130011787A (ko) * | 2011-07-22 | 2013-01-30 | 삼성전자주식회사 | 전자 책 단말기 및 화면 전환 방법 |
US9116991B2 (en) * | 2011-08-16 | 2015-08-25 | Google Inc. | Searching encrypted electronic books |
-
2011
- 2011-11-26 CN CN201110382086.5A patent/CN102521280B/zh active Active
-
2012
- 2012-04-09 WO PCT/CN2012/073645 patent/WO2012167662A1/zh active Application Filing
- 2012-12-21 US US13/725,374 patent/US20130139052A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI257211B (en) * | 2001-06-27 | 2006-06-21 | Inventec Appliances Corp | Method and device for realizing download and review of electronic book with WAP |
CN101281529A (zh) * | 2008-05-30 | 2008-10-08 | 杨洪 | 在手持阅读设备上实现超链接阅读的方法 |
Non-Patent Citations (2)
Title |
---|
霍红颖等.高性能便携式电子书阅读器研究.《现代计算机》.2009,(第06期),119-121,133. |
高性能便携式电子书阅读器研究;霍红颖等;《现代计算机》;20090630(第06期);119-121,133 * |
Also Published As
Publication number | Publication date |
---|---|
US20130139052A1 (en) | 2013-05-30 |
WO2012167662A1 (zh) | 2012-12-13 |
CN102521280A (zh) | 2012-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102521280B (zh) | 一种EPub电子书加载方法及装置 | |
CN102520987B (zh) | 应用程序在线体验与安装方法、装置、服务器及管理系统 | |
US9317622B1 (en) | Methods and systems for fragmenting and recombining content structured language data content to reduce latency of processing and rendering operations | |
JP2019517042A (ja) | オフラインでのハイブリッドアプリケーションへのアクセスの提供 | |
US20150154224A1 (en) | Method, device, processing center and system for desktop synchronization | |
US8504827B1 (en) | Document server and client device document viewer and editor | |
CN102857578B (zh) | 一种网络硬盘的文件上传方法、系统及网盘客户端 | |
US20130238730A1 (en) | Online backup system | |
EP2291813A1 (en) | Inserting a multimedia file through a web-based desktop productivity application | |
CN104426925A (zh) | 网页资源获取方法及装置 | |
WO2009149354A2 (en) | Systems and methods for creating and sharing a presentation | |
US20150304412A1 (en) | Browser and system for download and download method | |
CN111602120B (zh) | 显示在源处对内容所做的更改的指示 | |
US20210304379A1 (en) | System and Methods for an Image Mosaic Representing a Group of Links | |
WO2014093478A2 (en) | Conversion of non-book documents for consistency in e-reader experience | |
CA2764819A1 (en) | System and method for providing sub-publication content in an electronic device | |
US8108441B2 (en) | Efficient creation, storage, and provision of web-viewable documents | |
CN105630792A (zh) | 一种信息显示、推送方法及装置 | |
US20220335977A1 (en) | Method and apparatus for editing object, electronic device and storage medium | |
CN102624910B (zh) | 处理用户选取的网页内容的方法、装置及系统 | |
CN102789458A (zh) | 一种影像文件处理方法及系统 | |
CN101527737A (zh) | 页面帮助信息的显示方法、系统及客户端 | |
CN106326403A (zh) | 网页生成方法及装置 | |
CN106294417A (zh) | 一种数据排序方法、装置及电子设备 | |
WO2014146448A1 (en) | Method and system for synchronizing browser bookmarks |
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 |