Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND DEVICE FOR INCREASING ONLINE BROWSING AND LOADING SPEED OF PDF DOCUMENT
Document Type and Number:
WIPO Patent Application WO/2015/096188
Kind Code:
A1
Abstract:
A method and device for increasing the online browsing and loading speed of a PDF document, the method comprising: acquiring the attribute information of a PDF document from a remote server, and determining according to the attribute information whether the PDF document is a nonlinear document; if yes, then acquiring the cross reference table data of the PDF document from the remote server, determining the position and size of the page tree of the PDF document according to the position and size of each object in the cross reference table data, and acquiring the page tree of the PDF document from the remote server; presenting the obtained page tree to a user, analyzing the page data of the page tree, extracting, from the page tree, the position and size of the page object specified by the user, and acquiring the corresponding page object data from the remote server; acquiring, from the remote server, resource object data and page content stream data corresponding to the obtained page object data; and according to the obtained page object data, the resource object data and the page content stream data, acquiring the page selected by the user, and presenting the page to the user.

Inventors:
XIONG YUQIAN (CN)
XUE JUNCHAO (CN)
LIU FANGMING (CN)
Application Number:
PCT/CN2014/000693
Publication Date:
July 02, 2015
Filing Date:
July 22, 2014
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
BEIJING BRANCH OFFICE OF FOXIT CORP (CN)
International Classes:
G06F17/30
Foreign References:
CN103678698A2014-03-26
CN103064835A2013-04-24
CN101923723A2010-12-22
CN101976268A2011-02-16
CN103186636A2013-07-03
US20070223026A12007-09-27
Attorney, Agent or Firm:
KELONG INTERNATIONAL INTELLECTUAL PROPERTY AGENCY LTD. (CN)
北京科龙寰宇知识产权代理有限责任公司 (CN)
Download PDF:
Claims:
权 利 要 求

1、 一种提高 PDF文档在线浏览加载速度的装置, 其特征在于, 包括: 判断模块, 用于从远端服务器获取 PDF文档的属性信息, 根据所述属性 信息判断所述 PDF文档是否为非线性文件;

页面树模块, 用于当 PDF文档为非线性文件时, 调用下载模块从远端服 务器获取所述 PDF文档的交叉索引表数据, 从所述交叉索引表数据中各对象 的位置和大小确定所述 PDF文档的页面树的位置和大小, 进而根据所确定的 页面树的位置和大小调用所述下载模块从远端服务器获取所述 PDF文档的页 面树;

页面对象模块, 用于对所述页面树进行页面数据分析, 从所述页面树中提 取出用户指定页面对象的位置和大小, 根据所述页面对象的位置和大小调用 所述下载模块从远端服务器获取对应的页面对象数据;

资源对象及页面内容流模块,调用所述下载模块从远端服务器获取与所获 取的页面对象数据对应的资源对象数据和页面内容流数据;

文档显示模块, 用于根据所获取的页面对象数据、 资源对象数据和页面内 容流数据得到用户所选择的页面, 并呈现给用户;

所述下载模块, 用于根据所述页面树模块、 所述页面对象模块、 所述资源 对象及页面内容流模块的调用命令从远端服务器下载相关数据。

2、 根据权利要求 1所述的提高 PDF文档在线浏览加载速度的装置, 其特 征在于, 还包括:

交互式表单模块, 用于当用户指定页面的页面对象包括交互式表单时, 从所述 PDF文档获取交互式表单项中指定的所有相关对象的位置和大小, 并 根据所提取的交互式表单项中指定的所有相关对象的位置和大小调用下载模 块从远端服务器获取相应的表格数据, 呈现给用户并接受用户的交互式表单 操作。 3、 根据权利要求 1所述的提高 PDF文档在线浏览加载速度的装置, 其 特征在于, 所述页面对象模块还用于当获取页面树失败或对所述页面树进行 页面数据分析失败时, 调用所述下载模块下载整个 PDF 文档, 然后呈现给 用户。

4、 根据权利要求 1所述的提高 PDF文档在线浏览加载速度的装置, 其特 用所述下载模块直接下载所述 PDF文档第 1页的内容, 呈现给用户, 然后按 照非线性文件方式对之后的页面进行处理, 并将获取的页面呈现给用户, 其 中线性文件第 1页的内容位于 PDF文档的开头。

5、 一种提高 PDF文档在线浏览加载速度的方法, 其特征在于, 包括以 下步骤:

从远端服务器获取 PDF文档的属性信息,根据所述属性信息判断所述 PDF 文档是否为非线性文件;

如果所述 PDF文档为非线性文件, 则从远端服务器获取所述 PDF文档的 交叉索引表数据, 从所述交叉索引表数据中各对象的位置和大小确定所述 PDF文档的页面树的位置和大小, 并根据所确定的页面树的位置和大小从远 端服务器获取所述 PDF文档的页面树;

将所获取的页面树呈现给用户, 接受用户对所述页面树中页面的选择, 对 所述页面树进行页面数据分析, 从所述页面树中提取出用户指定页面对象的 位置和大小, 根据所述页面对象的位置和大小从远端服务器获取对应的页面 对象数据;

从远端服务器获取与所获取的页面对象数据对应的资源对象数据和页面 内容流数据;

根据所获取的页面对象数据、资源对象数据和页面内容流数据得到用户所 选择的页面, 并呈现给用户。 6、 根据权利要求 5所述的提高 PDF文档在线浏览加载速度的方法, 其特 征在于, 还包括以下步骤:

当用户指定页面的页面对象包括交互式表单时, 从所述 PDF文档获取交 互式表单项中指定的所有相关对象的位置和大小, 并根据所提取的交互式表 单项中指定的所有相关对象的位置和大小从远端服务器获取相应的表格数 据, 呈现给用户并接受用户的交互式表单操作。

7、 根据权利要求 5所述的提高 PDF文档在线浏览加载速度的方法, 其 载整个 PDF文档, 然后呈现给用户。

8、 根据权利要求 5所述的提高 PDF文档在线浏览加载速度的方法, 其特 征在于, 如果所述 PDF文档为线性文件, 直接下载所述 PDF文档第 1页的内 容, 呈现给用户, 然后按照非线性文件方式对之后的页面进行处理, 并将获 取的页面呈现给用户, 其中线性文件第 1页的内容位于 PDF文档的开头。

Description:
一种提高 PDF文档在线浏览加载速度的方法及其装置 技术领域

本发明涉及网络文档处理领域, 具体而言, 涉及一种提高 PDF文档在线 浏览加载速度的方法及其装置。 背景技术

PDF , 即 Portable Document Format, 便携文件格式, 是一种电子文件格 式, 与操作系统平台无关。 正是因为其与操作平台无关的特性, 使 PDF格式 成为在网络上进行电子文档发行和数字化信息 传播的理想文档格式, 越来越 多的电子图书、 产品说明、 公司文告、 网络资料、 电子邮件开始使用 PDF格 式的文件。 在使用这些信息的时候, 用户并不需要下载所有的文档, 有的文 档也不提供下载, 这样我们就常常只需要在线浏览这些文档。 然而,目前,基于在线浏览文档时打开远端的 PDF文件,需要将整个 PDF 文件的内容先下载到本地, 然后解析 PDF文件再进行显示。 浏览速度受限于 网络的快慢, 通常这些外部环境很难改变。 整个下载 PDF文件的时间就成了 浏览效果的瓶颈。 发明内容

本发明的目的在于, 提供一种方案, 只对 PDF文件的部分内容进行下载 完毕就呈现给用户, 而不等到整个文件的内容全部下载完成, 从而提高 PDF 文档在线浏览加载速度。 为了达到上述目的, 本发明提供一种提高 PDF文档在线浏览加载速度的 装置, 包括: 判断模块, 用于从远端服务器获取 PDF文档的属性信息, 根据所述属性 信息判断所述 PDF文档是否为非线性文件;

页面树模块, 用于当 PDF文档为非线性文件时, 调用下载模块从远端服 务器获取所述 PDF文档的交叉索引表数据, 从所述交叉索引表数据中各对象 的位置和大小确定所述 PDF文档的页面树的位置和大小, 进而 居所确定的 页面树的位置和大小调用所述下载模块从远端 服务器获取所述 PDF文档的页 面树;

页面对象模块, 用于对所述页面树进行页面数据分析, 从所述页面树中提 取出用户指定页面对象的位置和大小, 根据所述页面对象的位置和大小调用 所述下载模块从远端服务器获取对应的页面对 象数据;

资源对象及页面内容流模块,调用所述下载模 块从远端服务器获取与所获 取的页面对象数据对应的资源对象数据和页面 内容流数据;

文档显示模块, 用于根据所获取的页面对象数据、 资源对象数据和页面内 容流数据得到用户所选择的页面, 并呈现给用户;

所述下载模块, 用于根据所述页面树模块、 所述页面对象模块、 所述资源 对象及页面内容流模块的调用命令从远端服务 器下载相关数据。

其中, 上述装置还包括:

交互式表单模块, 用于当用户指定页面的页面对象包括交互式表 单时, 从所述 PDF文档获取交互式表单项中指定的所有相关对 象的位置和大小, 并 根据所提取的交互式表单项中指定的所有相关 对象的位置和大小调用下载模 块从远端服务器获取相应的表格数据, 呈现给用户并接受用户的交互式表单 操作。

其中, 所述页面对象模块还用于当获取页面树失败或 对所述页面树进行 页面数据分析失败时, 调用所述下载模块下载整个 PDF 文档, 然后呈现给 用户。 其中, 所述判断模块还用于当判断结果为所述 PDF 文档为线性文件 时,调用所述下载模块直接下载所述 PDF文档第 1页的内容,呈现给用户, 然后按照非线性文件方式对之后的页面进行处 理, 并将获取的页面呈现给 用户, 其中线性文件第 1页的内容位于 PDF文档的开头。 本发明还提供一种提高 PDF文档在线浏览加载速度的方法, 包括以下步 骤:

从远端服务器获取 PDF文档的属性信息,根据所述属性信息判断所 述 PDF 文档是否为非线性文件;

如果所述 PDF文档为非线性文件, 则从远端服务器获取所述 PDF文档的 交叉索引表数据, 从所述交叉索引表数据中各对象的位置和大小 确定所述 PDF文档的页面树的位置和大小, 并根据所确定的页面树的位置和大小从远 端服务器获取所述 PDF文档的页面树;

将所获取的页面树呈现给用户, 接受用户对所述页面树中页面的选择, 对 所述页面树进行页面数据分析, 从所述页面树中提取出用户指定页面对象的 位置和大小, 根据所述页面对象的位置和大小从远端服务器 获取对应的页面 对象数据;

从远端服务器获取与所获取的页面对象数据对 应的资源对象数据和页面 内容流数据;

根据所获取的页面对象数据、资源对象数据和 页面内容流数据得到用户所 选择的页面, 并呈现给用户。

其中, 上述方法还包括以下步骤:

当用户指定页面的页面对象包括交互式表单时 , 从所述 PDF文档获取交 互式表单项中指定的所有相关对象的位置和大 小, 并根据所提取的交互式表 单项中指定的所有相关对象的位置和大小从远 端服务器获取相应的表格数 据, 呈现给用户并接受用户的交互式表单操作。 其中, 当获取页面树失败或对所述页面树进行页面数 据分析失败时, 下 载整个 PDF文档, 然后呈现给用户。

其中, 如果所述 PDF文档为线性文件, 直接下载所述 PDF文档第 1页的 内容, 呈现给用户, 然后按照非线性文件方式对之后的页面进行处 理, 并将 获取的页面呈现给用户, 其中线性文件第 1页的内容位于 PDF文档的开头。 与现有技术相比, 本发明的有益效果在于:

提供了一种提高 PDF文档在线浏览加载速度的方法及其装置, 通过交叉 索引表和页面树, 支持用户指定页面, 只需要对 PDF文档的部分内容进行下 载就可以进行显示, 而不用等到整个文档的内容全部下载完成, 这样可以减 少用户的等待时间, 从而提高 PDF文档的在线浏览加载速度, 达到快速浏览 PDF页面的目的。 附图说明

为了更清楚地说明本发明实施例或现有技术中 的技术方案, 下面将对实 施例描述中所需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附 图仅仅是本发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创 造性劳动的前提下, 还可以根据这些附图获得其他的附图。

图 1为本发明一个实施例的提高 PDF文档在线浏览加载速度的装置的结 构框图。

图 2为本发明一个实施例的提高 PDF文档在线浏览加载速度的方法流程 图。 具体实施方式

下面将结合本发明实施例中的附图, 对本发明实施例中的技术方案进行 清楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明一部分实施例, 而 不是全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没有付 出创造性劳动前提下所获得的所有其他实施例 , 都属于本发明保护的范围。 请参阅图 1 , 图 1为本发明一个实施例的提高 PDF文档在线浏览加载速 度的装置的结构框图。 如图 1所示, 本发明还提供一种提高 PDF文档在线浏 览加载速度的装置, 包括:

判断模块, 用于从远端服务器获取 PDF文档的属性信息, 根据所述属性 信息判断所述 PDF文档是否为非线性文件; 其中, 所述属性信息是指, PDF 文件开始处(前 1024个字节内)存储的线性化数据在 PDF 文件中的位置及长 度;

页面树模块, 用于当 PDF文档为非线性文件时, 调用下载模块从远端服 务器获取所述 PDF文档的交叉索引表数据, 从所述交叉索引表数据中各对象 的位置和大小确定所述 PDF文档的页面树的位置和大小, 进而根据所确定的 页面树的位置和大小调用所述下载模块从远端 服务器获取所述 PDF文档的页 面树; 其中, 交叉索引表 (Cross-reference Table)是指能对间接对象进行随机 存取而设立的一个间接对象地址索引表; 所述间接对象构成了 PDF文件的具 体内容如字体、 页面、 图像等; 所述交叉索引表的地址在文件尾 (Trailer)声明; 所述页面树 (Pages Tree)和书签树 (Outline Tree)、 线索树 (Article Threads)、 名 字树 (Named Destination)是 PDF文件的根对象 (Catalog)下的四个子树, 反映 PDF文档的等级层次关系,根据文件尾提供的根 对象 (Catalog),控制整个 PDF 文件, 本发明通过页面树获取页面对象;

页面对象模块, 用于对所述页面树进行页面数据分析, 从所述页面树中 提取出用户指定页面对象的位置和大小, 根据所述页面对象的位置和大小调 用所述下载模块从远端服务器获取对应的页面 对象数据;

资源对象及页面内容流模块, 调用所述下载模块从远端服务器获取与所 获取的页面对象数据对应的资源对象数据和页 面内容流数据; 其中, 内容流 (Content Stream)是指数字、 字符串、 图像等; 资源对象是指所述内容流中用 到的所有资源, 比如指令集 (ProcSet)、 字体 (Font)、 色彩空间(Color space), 底紋 (Pattern)等;

文档显示模块, 用于根据所获取的页面对象数据、 资源对象数据和页面 内容流数据得到用户所选择的页面, 并呈现给用户;

所述下载模块, 用于根据所述页面树模块、 所述页面对象模块、 所述资 源对象及页面内容流模块的调用命令从远端服 务器下载相关数据。

具体实施时, 还包括: 交互式表单模块, 用于当用户指定页面的页面对象包括交互式表 单 时,从所述 PDF文档获取交互式表单项中指定的所有相关对 象的位置和大 小, 并根据所提取的交互式表单项中指定的所有相 关对象的位置和大小调 用下载模块从远端服务器获取相应的表格数据 , 呈现给用户并接受用户的 交互式表单操作。 具体实施时,所述页面对象模块还用于当获取 页面树失败或对所述页面 树进行页面数据分析失败时, 调用所述下载模块下载整个 PDF 文档, 然后 呈现给用户。

具体实施时,所述判断模块还用于当判断结果 为所述 PDF文档为线性 文件时,调用所述下载模块直接下载所述 PDF文档第 1页的内容,呈现给 用户, 然后按照非线性文件方式对之后的页面进行处 理, 并将获取的页面 呈现给用户, 其中线性文件第 1页的内容位于 PDF文档的开头。 请参阅图 2, 图 2为本发明一个实施例的提高 PDF文档在线浏览加载速 度的方法流程图。 如图 2所示, 本发明提供一种提高 PDF文档在线浏览加载 速度的方法, 包括以下步骤:

从远端服务器获取 PDF 文档的属性信息, 根据所述属性信息判断所述 PDF文档是否为非线性文件; 如果所述 PDF文档为非线性文件, 则从远端服务器获取所述 PDF文档的 交叉索引表数据, 从所述交叉索引表数据中各对象的位置和大小 确定所述 PDF文档的页面树的位置和大小, 并根据所确定的页面树的位置和大小从远 端服务器获取所述 PDF文档的页面树;

将所获取的页面树呈现给用户, 接受用户对所述页面树中页面的选择, 对 所述页面树进行页面数据分析, 从所述页面树中提取出用户指定页面对象的 位置和大小, 根据所述页面对象的位置和大小从远端服务器 获取对应的页面 对象数据;

从远端服务器获取与所获取的页面对象数据对 应的资源对象数据和页面 内容流数据;

根据所获取的页面对象数据、资源对象数据和 页面内容流数据得到用户所 选择的页面, 并呈现给用户。

具体实施时, 还包括以下步骤:

当用户指定页面的页面对象包括交互式表单时 , 从所述 PDF文档获取交 互式表单项中指定的所有相关对象的位置和大 小, 并根据所提取的交互式表 单项中指定的所有相关对象的位置和大小从远 端服务器获取相应的表格数 据, 呈现给用户并接受用户的交互式表单操作。 具体实施时, 当获取页面树失败或对所述页面树进行页面数 据分析失 败时, 下载整个 PDF文档, 然后呈现给用户。 具体实施时, 如果所述 PDF文档为线性文件, 直接下载所述 PDF文 档第 1页的内容, 呈现给用户, 然后按照非线性文件方式对之后的页面进 行处理,并将获取的页面呈现给用户,其中线 性文件第 1页的内容位于 PDF 文档的开头。 本领域普通技术人员可以理解: 附图只是一个实施例的示意图, 附图中 的模块或流程或数据并不一定是实施本发明所 必须的。 最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对其限制; 尽管参照前述实施例对本发明进行了详细的说 明, 本领域的普通技术人员应 当理解: 其依然可以对前述实施例所记载的技术方案进 行修改, 或者对其中 部分技术特征进行等同替换; 而这些修改或者替换, 并不使相应技术方案的 本质脱离本发明实施例技术方案的精神和范围 。