发明内容
本发明实施例提供一种应用于文件格式转换场景下的目录生成方法和装置,用以解决在文件格式转换下操作繁琐重复的问题,加快生成目录的速度,提高工作效率。
本发明实施例提供的应用于文件格式转换场景下的目录生成方法包括:
读取第一文档,利用匹配规则,设置所述第一文档中符合所述匹配规则的内容的样式为第二文档可识别的标题样式,所述匹配规则为预设内容与标题样式的对应关系;
根据所述第二文档可识别的标题样式,生成目录索引文件;
根据所述目录索引文件,从设置后的第一文档中提取出符合所述目录索引文件中标题样式对应的内容;
将提取的内容作为标题,生成与所述目录索引文件相匹配的目录。
所述匹配规则为预设内容与标题样式的对应关系,具体为:
预设的文字内容与标题样式的对应关系;或,
预设的大纲级别与标题样式的对应关系;或,
预设的文字格式与标题样式的对应关系;或,
预设的文字样式与标题样式的对应关系。
所述读取第一文档之前,还包括通过以下方式获取所述匹配规则:
根据所述第一文档的内容和所述第二文档的标题样式,创建符合所述第一文档转换为所述第二文档时利用的匹配规则。
所述根据所述第二文档可识别的标题样式,生成目录索引文件,具体包括:
获取所述第一文档的各样式,从所述各样式中提取所述第二文档可识别的标题样式,依据设定的目录级别及标题样式与目录级别的对应关系,生成所述目录索引文件。
所述目录索引文件为可扩展标记语言XML,所述第一文档的文件格式为Microsoft Office Word,所述第二文档的文件格式为电子出版EPub。
一种应用于文件格式转换场景下的目录生成装置,包括:样式匹配模块、目录索引模块、标题提取模块和目录生成模块;
所述样式匹配模块,用于读取第一文档,利用匹配规则,设置所述第一文档中符合所述匹配规则的内容的样式为第二文档可识别的标题样式,所述匹配规则为预设内容与标题样式的对应关系;
所述目录索引模块,用于根据所述第二文档可识别的标题样式,生成目录索引文件;
所述标题提取模块,用于根据所述目录索引文件,读取设置后的第一文档,提取出与所述第二文档可识别的标题样式对应的内容;
所述目录生成模块,用于将提取的内容作为标题,生成与所述目录索引文件相匹配的目录。
所述匹配规则为预设内容与标题样式的对应关系,具体为:
预设的文字内容与标题样式的对应关系;或,
预设的大纲级别与标题样式的对应关系;或,
预设的文字格式与标题样式的对应关系;或,
预设的文字样式与标题样式的对应关系。
所述样式匹配模块还用于通过以下方式获取所述匹配规则:
根据所述第一文档的内容和所述第二文档的标题样式,创建符合所述第一文档转换为所述第二文档时利用的匹配规则。
所述目录索引模块还用于:
获取所述第一文档的各样式,从所述各样式中提取所述第二文档可识别的标题样式,依据设定的目录级别及标题样式与目录级别的对应关系,生成所述目录索引文件。
所述目录索引文件为可扩展标记语言XML,所述第一文档的文件格式为Microsoft Office Word,所述第二文档的文件格式为电子出版EPub。
本发明实施例中,首先利用匹配规则,将第一文档中符合匹配规则的内容的样式自动设置成符合第二文档要求的标题样式;然后选择需要的标题样式,生成目录索引文件;根据目录索引文件,从第一文档中将符合标题样式的内容提取出来,作为第二文档目录的内容生成第二文档的目录。与现有技术相比,本发明实施例可以按用户的要求,自动将目录所需的内容提取出来,并同时转换格式,省去了一条一条添加目录的繁琐工序,在保证效率的同时极大地提高了生成目录的速度。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
EPub是一个完全开放和免费的电子书标准,内部用XHTML(可扩展超文本标记语言,Extensible Hyper Markup Language)来展现文件的内容,可以使用XML工具创建。
为了解决将Word文档转换为EPub文档过程中提取目录上的问题,本发明实施例提供了一种应用于文件格式转换场景下的目录生成方法,该方法的流程如图1所示,可以包括如下步骤:
S101、读取第一文档,利用匹配规则,设置第一文档中符合所述匹配规则的内容的样式为第二文档可识别的标题样式,该匹配规则为预设内容与标题样式的对应关系;
S102、根据所述第二文档可识别的标题样式,生成目录索引文件;
S103、根据目录索引文件,从设置后的第一文档中提取出符合目录索引文件中标题样式对应的内容;
S104、将提取的内容作为标题,生成与所述目录索引文件相匹配的目录。
上述实施例中,将第一文档按照匹配规则处理后,利用目录索引文件,将第一文档中的相应内容提取出来,生成与目录索引文件相匹配的目录,作为第二文档的目录,实现了文档格式转换情况下自动生成目录。
其中,目录索引文件为可扩展标记语言XML,第一文档的文件格式为Microsoft Office Word,第二文档的文件格式为电子出版EPub。
本发明实施例利用XML文件作为桥梁,使Word文档和EPub目录之间建立联系,方便Word文档在转为EPub文档的过程中直接提取与EPub相符的目录,操作简单灵活,工作速度快效率高。
在步骤S101中,通过匹配规则,自动将第一文档中的某些内容的样式转换为第二文档可识别的标题样式,为后续提取第一文档中相应的内容作为标题提供了基础。匹配规则的设定可以是根据第一文档的内容和第二文档的标题样式,创建符合第一文档转换为第二文档时利用的匹配规则。例如,大多数情况下,文档中的标题会描述为“第一章”“第1章”等,故可以设定的匹配规则可以是获取第一文档中表述为“第XX章”的样式设定为第二文档可识别的标题样式。
具体的,本发明实施例中罗列出几种匹配规则中预设内容与标题样式的对应关系:
预设的文字内容与标题样式的对应关系;或,
预设的大纲级别与标题样式的对应关系;或,
预设的文字格式与标题样式的对应关系;或,
预设的文字样式与标题样式的对应关系。
较佳地,该匹配规则可以是正则表达式,很容易通过计算机编程来实现,如,规定Word文档中的文字内容与标题样式相匹配,这里的文字内容主要是指Word文档中标题的文字内容,即将Word文档中存在特定文字或字符的标题与标题样式相匹配,如将“第[1~9]章”与一级标题相匹配,或者将“第[零一二三四五六七八九十百千万]节”与三级标题相匹配。此外,还提供另外三种匹配规则供用户选择:
a、大纲级别与标题样式匹配:若原Word文档中已将段落指定了大纲级别(1级至9级),即可将大纲级别和标题级别相匹配,如将原Word中的标题指定为2级大纲,则可将2级大纲与一级标题向对应,将2级大纲对应的内容设置成一级标题的样式。
b、文字格式与标题样式匹配:即根据文字字体和字号的组合规定标题级别,此规则较适合于原Word文档已统一设定了文字格式的情况,如Word文档中的篇标题通常采用一号黑体,章标题采用二号黑体,节标题采用三号宋体加粗,则可将一号黑体与一级标题相匹配,二号黑体和二级标题相匹配,三号宋体加粗和三级标题相匹配,即将篇标题设置为一级标题的样式,章标题设置为二级标题的样式,节标题设置为三级标题的样式。
c、文字样式与标题样式匹配:若原Word文档中已定义好样式,如已将样式应用于文中的标题上,如定义了标题1、标题2、副标题等样式,且将章标题设置为标题1,将节标题设置为副标题,则可将标题1与一级标题相匹配,副标题与二级标题相匹配,即将章标题设置为一级标题的样式,节标题设置为二级标题的样式。
此外,匹配规则还接收用户的自定义,可以通过用户自定义规则,定义出各种类型的组合与标题样式相匹配。
设置好匹配规则后,可以输出形成匹配规则文件,利用匹配规则文件中每条匹配规则,将Word文档中的内容按顺序一条条进行匹配,如果满足其中一条匹配规则,则将该段内容作为标题设置为相应的标题样式。
在步骤S102中还可通过如下方式生成目录索引文件,包括:获取第一文档的各样式,从各样式中提取第二文档可识别的标题样式,依据设定的目录级别及标题样式与目录级别的对应关系,生成所述目录索引文件。经过匹配规则设置的第一文档中包含了第二文档可识别的标题样式,从中选取出第二文档目录所需标题的样式,作为目录索引文件。
具体来说,根据EPub的目录选择需要生成的目录级别,如选“二级”,即代表EPub目录中需有两级目录,分别是一级目录和二级目录,如图2,特殊地,若EPub文档不需要生成目录也可选择“无目录”。Word文档中的标题已在步骤S101中设置了标题样式,如篇标题被设置为一级标题,章标题被设置为二级标题,节标题被设置为三级标题。用户可根据需要,选择与目录级别对应的标题级别,如选择篇标题和章标题作为目录,则需选出一级标题和二级标题,且将一级标题与一级目录对应,如图3,二级标题与二级目录对应,如图4,如此,EPub目录中的内容就会是篇标题和章标题的内容,在此基础上,可生成如下所示的XML文件:
而用户也可选择篇标题和节标题作为目录的内容,此时,则需选出一级标题与一级目录对应,三级标题与二级目录对应。相比于现有技术中生成目录时,将所有的标题都提取为目录内容,若有不需要的标题则需后期单独删除,本发明实施例中提供的方法可根据用户的实际需要提取目录,提取方式灵活,简单易操作。
为了更清楚地理解本发明,下面以具体实例对上述流程进行详细描述。该具体实例所描述场景为,将一篇Word文档转换为EPub文档,需将Word文档中的章标题和节标题提取出来作为EPub的目录,具体流程如图5所示,可以包括:
步骤S201、根据Word文档的文字内容和EPub文档的标题样式,创建符合Word文档转换为EPub文档时利用的匹配规则。
具体来说,Word文档中,第一章的标题为“导论”,第一节的标题为“1.DocBook是什么”,第一小节的标题为“1.1写一份学术著作”,第二小节的标题为“1.2一次输入多种输出”,可以看出,Word文档中章标题的结构为“两个中文字符”,节标题的结构为“阿拉伯数字+英文句号+空格+中英文”;小节标题的结构为“阿拉伯数字+英文句号+阿拉伯数字+空格+中文”。由此,可设置匹配规则为:将“小于20个字符的中文”的段落与一级标题相匹配,将“阿拉伯数字+英文句号+空格+小于30个字符的中英文”的段落与二级标题相匹配,将“阿拉伯数字+英文句号+阿拉伯数字+空格+小于40个字符的中英文”的段落与三级标题相匹配。
步骤S202、读取Word文档,利用匹配规则,将Word文档中符合匹配规则的内容的样式设置为EPub文档可识别的标题样式。
具体地,读取Word文档的全文,将文章中符合“小于20个字符的中文”这一标准的段落内容设置为一级标题,如一级标题的样式为“黑体二号居中段后一行”,则“导论”的样式则设置为“黑体二号居中段后一行”。二级标题的样式为“宋体三号加粗左对齐”,则将“1.DocBook是什么”设置为“宋体三号加粗左对齐”。同理,将Word文档中小节标题的样式也设置为相应的三级标题的样式。该步骤可由计算机自动执行,也可由用户手动操作。
步骤S203、根据EPub可识别的标题样式,生成XML文件。
具体来说,EPub可识别的标题样式即为一级标题、二级标题和三级标题的样式,根据需要,选择目录级别为“二级”,即代表EPub中有两级目录;而目录中只需节和小节的标题,则将一级目录对应选择“二级标题”,即Word文档中的二级标题作为EPub中一级目录的内容;二级目录对应选择“三级标题”,即Word文档中的三级标题作为EPub中二级目录的内容。
步骤S204、根据XML文件,从Word文档中提取符合XML中标题样式对应的内容。
具体来说,在Word文档转换为EPub文档的过程中,根据步骤S203中生成的XML文件,其中一级目录对应二级标题,二级标题样式为“宋体三号加粗左对齐”,将Word文档中符合该样式的内容提取出来,即将“1.DocBook是什么”提取出来,并记录下该段内容在EPub文档中的页号。同理的,对二级目录对应的内容做相同的处理。由于目录中不需要一级标题,则不提取“导论”。
步骤S205、将提取的内容作为标题,生成EPub文档的目录。即将上述提取的内容和页码记录下来,生成EPub文档的目录。
基于相同的技术构思,本发明实施例还提供一种应用于文件格式转换场景下的目录生成装置,如图6所示,包括:样式匹配模块1、目录索引模块2、标题提取模块3和目录生成模块4;
所述样式匹配模块1,用于读取第一文档,利用匹配规则,设置所述第一文档中符合所述匹配规则的内容的样式为第二文档可识别的标题样式,所述匹配规则为预设内容与标题样式的对应关系;
所述目录索引模块2,用于根据所述第二文档可识别的标题样式,生成目录索引文件;
所述标题提取模块3,用于根据所述目录索引文件,读取设置后的第一文档,提取出与所述第二文档可识别的标题样式对应的内容;
所述目录生成模块4,用于将提取的内容作为标题,生成与所述目录索引文件相匹配的目录。
较佳地,所述匹配规则为预设内容与标题样式的对应关系,具体为:
预设的文字内容与标题样式的对应关系;或,
预设的大纲级别与标题样式的对应关系;或,
预设的文字格式与标题样式的对应关系;或,
预设的文字样式与标题样式的对应关系。
较佳地,所述样式匹配模块1还用于通过以下方式获取所述匹配规则:
根据所述第一文档的内容和所述第二文档的标题样式,创建符合所述第一文档转换为所述第二文档时利用的匹配规则。
较佳地,所述目录索引模块2还用于:
获取所述第一文档的各样式,从所述各样式中提取所述第二文档可识别的标题样式,依据设定的目录级别及标题样式与目录级别的对应关系,生成所述目录索引文件。
较佳地,所述目录索引文件为可扩展标记语言XML,所述第一文档的文件格式为Microsoft Office Word,所述第二文档的文件格式为电子出版EPub。
总之,本发明实施例利用XML文件,在Word文档转换为EPub文档的过程中,自由灵活选择标题的级别,根据选择的标题样式自动提取目录内容,使生成目录的操作简便灵活高效,不易出错,解决了手动提取目录的繁琐和效率低等问题。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。