发明内容
本发明实施例所要解决的技术问题在于,提供一种文档合并方法和系统。可使用户在一个合成的文档中方便地对照浏览相似内容的不同版本。
为了解决上述技术问题,本发明实施例提供了一种文档合并方法,包括:
根据预设的单元划分规则将每个原始文档分别划分为至少一个读取单元;
根据预设的单元读取规则依次从每个原始文档中提取对应的读取单元放入预置的存储空间中;
根据所述存储空间中的读取单元生成合成文档。
其中,所述单元划分规则包括:每个原始文档的一页为一个读取单元;
所述单元读取规则包括:按照页码顺序读取。
其中,所述单元划分规则包括:每个原始文档的偶数页为一个读取单元,奇数页为另一个读取单元。
其中,所述单元划分规则包括:不同原始文档的读取单元的大小是根据所述原始文档的语言类型确定的。
其中,所述单元划分规则包括:每个原始文档包含的读取单元的数目相同。
相应地,本发明还提供一种文档合并系统,包括:
读取单元划分模块,用于根据预设的单元划分规则将每个原始文档分别划分为至少一个读取单元;
读取单元排列模块,用于根据预设的单元读取规则依次从每个原始文档中提取对应的读取单元放入预置的存储空间中;
合成文档生成模块,用于根据所述存储空间中的读取单元生成合成文档。
其中,所述单元划分规则包括:每个原始文档的一页为一个读取单元;
所述单元读取规则包括:按照页码顺序读取。
其中,所述单元划分规则包括:每个原始文档的偶数页为一个读取单元,奇数页为另一个读取单元。
其中,所述单元划分规则包括:不同原始文档的读取单元的大小是根据所述原始文档的语言类型确定的。
其中,所述单元划分规则包括:每个原始文档包含的读取单元的数目相同。
实施本发明实施例,具有如下有益效果:通过将每个原始文档划分为至少一个读取单元,按照一定的规则将不同原始文档中对应的读取单元排列在一起,然后生成合并后的文档,可以方便用户在一个文档中对照浏览相似内容的不同版本,解决了现有技术的文档处理软件在合并文档时,只能按照整体顺序依次进行合并导致的浏览繁琐问题,提升了用户体验。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,是本发明提供的文档合并方法的第一实施例流程图,该方法包括:
在步骤S100,根据预设的单元划分规则将每个原始文档分别划分为至少一个读取单元。单元划分规则可以是系统默认的或由用户预先根据自己的需求进行设置的任意合适规则。例如,单元划分规则可以是:每个原始文档的一页为一个读取单元。又例如,单元划分规则可以是:每个原始文档的偶数页为一个读取单元,奇数页为另一个读取单元。
在步骤S101,根据预设的单元读取规则依次从每个原始文档中提取对应的读取单元放入预置的存储空间中。单元读取规则同样可以是系统默认的或由用户预先根据自己的需求进行设置的任意合适规则。例如,单元读取规则可以是:按照页码顺序读取。又例如,单元读取规则还可以是:先读取奇数页码,再读取偶数页码。
在步骤S102,根据所述存储空间中的读取单元生成合成文档。
需要说明的是,本发明实施例提供的文档合并方法中的文档是只是针对PDF文档而言的,那么在进行PDF文档合并时,要从PDF文档和其他文档的属性来说,PDF文档有“页”的概念,而其他文档是没有“页”的概念的,这里的“页”和我们在Word里的看到的页是有区别的。首先,PDF文档中的页和页上的内容是独立的,而word等其他文档中的页和内容是互相依赖的,PDF文档删除掉页上的内容,页面依然存在。而Word删除掉了页上的内容,页也就被删除掉了,所以Word里没有删除页面这个功能。其次,在进行PDF文档合并时,需要提取每个文档中每一页的信息结构然后重新写到合并后文档的数据结构中,而其他文档的合并只是内容上的一个追加而已。
本发明实施例提供的文档合并方法,通过将每个原始文档划分为至少一个读取单元,按照一定的规则将不同原始文档中对应的读取单元排列在一起,然后生成合并后的文档,可以方便用户在一个文档中对照浏览相似内容的不同版本,提升了用户体验。
请参见图2,是本发明提供的文档合并方法的第二实施例流程图。在该实施例中,假设有n个原始文档,每个原始文档都有m页。下面将以每个读取单元为原始页码的一页为例进行说明。该方法包括:
在步骤S200,将每个原始文档的每一页作为一个提取单元。
在步骤S201,初始化x0的值,令x0=1。
在步骤S202,判断x0的值是否大于m。
若步骤S202的判断结果为否,则执行步骤S203。在步骤S203,按照原始文档1~原始文档n的顺序依次提取每个原始文档的第x0页,作为合成文档的第n*(x0-1)+1页至第n*x0页,放入预置的存储空间中。
在步骤S204,将x0的值增加1。然后返回执行步骤S202。
若步骤S202的判断结果为是,则执行步骤S205。在步骤S205,根据存储空间中的读取单元生成合成文档。
图2仅仅是本发明的一个实施例,当每个原始文档的页码相同,且需要每页对照时较常使用,因为它实现简单,处理速度较快,有利于提高效率。但是当原始文档的页码不同,每页的内容并不完全对应时,这种方法可能存在影响阅读效果。例如,若原始文档是同一文件的不同语言版本,由于相同内容以不同语言表示时长度可能不一样,例如同样的内容用中文表示需要2页,用英文表示可能需要3页,用日文表示可能需要4页,若仍然以1页为读取单元,很可能造成内容上的不对应。这时,可以采取其他单元划分方法,例如,使每个原始文档包含的读取单元的数目相同。又例如,可以根据原始文档的语言类型来确定该原始文档中选取的读取单元的大小,将中文的读取单元设为2页,英文的读取单元设为3页,日文的读取单元设为4页等。
请参见图3,是本发明提供的文档合并系统的第一实施例结构示意图,该系统包括:
读取单元划分模块310,用于根据预设的单元划分规则将每个原始文档分别划分为至少一个读取单元。单元划分规则可以是系统默认的或由用户预先根据自己的需求进行设置的任意合适规则。例如,单元划分规则可以是:每个原始文档的一页为一个读取单元。又例如,单元划分规则可以是:每个原始文档的偶数页为一个读取单元,奇数页为另一个读取单元。
读取单元排列模块320,用于根据预设的单元读取规则依次从每个原始文档中提取对应的读取单元放入预置的存储空间中。单元读取规则同样可以是系统默认的或由用户预先根据自己的需求进行设置的任意合适规则。例如,单元读取规则可以是:按照页码顺序读取。又例如,单元读取规则还可以是:先读取奇数页码,再读取偶数页码。
合成文档生成模块330,用于根据所述存储空间中的读取单元生成合成文档。
本发明实施例提供的文档合并系统,通过将每个原始文档划分为至少一个读取单元,按照一定的规则将不同原始文档中对应的读取单元排列在一起,然后生成合并后的文档,可以方便用户在一个文档中对照浏览相似内容的不同版本,提升了用户体验。
以读取单元划分模块310取原始文档的一页为读取单元来举例说明,假设有n个原始文档,每个原始文档有m页。读取单元排列模块320可以按照原始文档1~原始文档n的顺序依次提取每个原始文档的第1页,作为合成文档的第1至n页,放入预置的存储空间;然后按照原始文档1~原始文档n的顺序依次提取每个原始文档的第2页,作为合成文档的第n+1至2n页,放入该存储空间;以此类推,按照原始文档1~原始文档n的顺序依次提取每个原始文档的第m页,作为合成文档的第n(m-1)+1至nm页,放入该存储空间。最后,合成文档生成模块330根据该存储空间中存储的读取单元合并生成合成文档。当然,这仅仅是本发明的一个实施例,当每个原始文档的页码相同,且需要每页对照时较常使用,因为它实现简单,处理速度较快,有利于提高效率。但是当原始文档的页码不同,每页的内容并不完全对应时,这种方法可能存在影响阅读效果。例如,若原始文档是同一文件的不同语言版本,由于相同内容以不同语言表示时长度可能不一样,例如同样的内容用中文表示需要2页,用英文表示可能需要3页,用日文表示可能需要4页,若仍然以1页为读取单元,很可能造成内容上的不对应。这时,可以采取其他单元划分方法,例如,使每个原始文档包含的读取单元的数目相同。又例如,可以根据原始文档的语言类型来确定该原始文档中选取的读取单元的大小,将中文的读取单元设为2页,英文的读取单元设为3页,日文的读取单元设为4页等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。