ePub文件格式转换方法、装置、设备及可读存储介质与流程

文档序号:29076226发布日期:2022-03-01 22:49阅读:192来源:国知局
ePub文件格式转换方法、装置、设备及可读存储介质与流程
epub文件格式转换方法、装置、设备及可读存储介质
技术领域
1.本发明涉及数据处理技术领域,特别涉及一种epub文件格式转换方法、装置、设备及可读存储介质。


背景技术:

2.epub(英文全称:electronic publication,中文全称:电子出版)是一个自由的开放标准,属于一种可以“自动重新编排”的内容,也就是文字内容可以根据阅读设备的特性,以最适于阅读的方式显示。因此,目前很多客户端阅读只支持epub格式文件,用户在上传文件时需要先将其他格式的文件转换为epub文件格式才能上传。
3.目前而言,epub格式文件的转换涉及复杂的运算及代码转换,不仅过程繁杂,而且容易损失文件内容,同时还需要大量人工参与,导致效率非常的低下。


技术实现要素:

4.为解决上述技术问题,本发明提供一种epub文件格式转换方法、装置、设备及可读存储介质,能够兼容多格式的文件转换,减少人工处理,提高转换效率。
5.本发明一方面提供一种epub文件格式转换方法,包括:
6.获取待转换文件中包含的文件内容;
7.对所述文件内容进行关键词过滤,得到过滤后的文件内容;
8.拆分过滤后的所述文件内容中的文本元素和图像元素,并生成章节目录及所述章节目录对应的内容目录;
9.根据所述章节目录及所述内容目录,对所述文本元素和所述图像元素进行组合,生成epub格式文件。
10.优选地,所述对所述文件内容进行关键词过滤,得到过滤后的文件内容,包括:
11.将所述文件内容中的词汇逐一与预设语料库中的关键词进行相似性比对,得到相似性比对结果;
12.将相似性比对结果符合预设条件的词汇替换为随机字符,得到过滤后的文件内容。
13.优选地,在对所述文件内容进行关键词过滤,得到过滤后的文件内容之后,所述方法还包括:
14.对过滤后的所述文件内容进行解析,得到过滤后的所述文件内容对应的文件编码和文件大小。
15.优选地,所述根据所述章节目录及所述内容目录,对所述文本元素和所述图像元素进行组合,生成epub格式文件,包括:
16.根据所述章节目录及所述内容目录,将所述文本元素和所述图像元素放入预设html模板中,生成html格式文件;
17.根据所述html格式文件,生成epub格式文件。
18.优选地,所述方法还包括:
19.选取所述图像元素中符合预设规则的图像,生成所述epub格式文件的封面。
20.本发明另一方面提供一种epub文件格式转换装置,包括:
21.获取模块,用于获取待转换文件中包含的文件内容;
22.过滤模块,用于对所述文件内容进行关键词过滤,得到过滤后的文件内容;
23.拆分模块,用于拆分过滤后的所述文件内容中的文本元素和图像元素,并生成章节目录及所述章节目录对应的内容目录;
24.组合模块,用于根据所述章节目录及所述内容目录,对所述文本元素和所述图像元素进行组合,生成epub格式文件。
25.优选地,所述装置还包括:
26.解析模块,用于对过滤后的所述文件内容进行解析,得到过滤后的所述文件内容对应的文件编码和文件大小。
27.优选地,所述装置还包括:
28.生成模块,用于选取所述图像元素中符合预设规则的图像,生成所述epub 格式文件的封面。
29.本发明又一方面提供一种epub文件格式转换设备,包括:
30.存储器,用于存储计算机程序;
31.处理器,用于执行所述计算机程序时实现如上述任意一种所述的epub文件格式转换方法的步骤。
32.本发明又一方面提供一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意一种所述的epub 文件格式转换方法的步骤。
33.本发明至少具有以下有益效果:
34.本发明通过获取待转换文件中包含的文件内容,然后对文件内容进行关键词过滤,得到过滤后的文件内容,再拆分过滤后的文件内容中的文本元素和图像元素,并生成章节目录及章节目录对应的内容目录,最后根据章节目录及内容目录,对文本元素和图像元素进行组合,生成epub格式文件,这样,能够兼容多格式的文件上传,并通过算法自动统一转换为可供前端阅读的 epub格式文件,减少了人工处理,提高了转换效率。
附图说明
35.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
36.图1为本发明实施例提供的一种epub文件格式转换方法的流程示意图;
37.图2为本发明实施例提供的一种epub文件格式转换装置的流程示意图;
38.图3为本发明实施例提供的一种epub文件格式转换设备的结构示意图。
具体实施方式
39.本发明的核心是提供一种epub文件格式转换方法、装置、设备及可读存储介质,可以通过算法自动对文件进行格式转换,减少了人工处理,提高了转换效率,同时无需借助其他格式转换软件进行处理,能够兼容多格式的文件转换。
40.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
41.请参阅图1,本发明实施例一方面提供一种epub文件格式转换方法,包括:
42.s110、获取待转换文件中包含的文件内容。
43.本发明实施例中,待转换文件可以是任意格式的电子文档,如txt、pdf、 docx、html文件等。待转换文件上传至文件处理服务器后,读取待转换文件中的数据,将数据解析,获取得到待转换文件中包含的文件内容。
44.s120、对文件内容进行关键词过滤,得到过滤后的文件内容。
45.本发明实施例中,待转换文件中包含的文件内容有可能存在敏感内容等,需要通过过滤算法对文件内容进行关键词过滤,得到过滤后纯净版的文件内容。
46.s130、拆分过滤后的文件内容中的文本元素和图像元素,并生成章节目录及章节目录对应的内容目录。
47.本发明实施例中,由于电子文档中往往不仅包含文字,同时也包含图片,而文字和图片本身的属性不同,因此,需要通过拆分算法拆分过滤后的文件内容中的文本元素和图像元素,分别得到文本元素集合和图像元素集合,并保存在文件服务器中。同时,为了保证在文件转换前后文本元素和图像元素的相对位置关系相同,需要通过目录章节编排算法生成章节目录及章节目录对应的内容目录。
48.s140、根据章节目录及内容目录,对文本元素和图像元素进行组合,生成epub格式文件。
49.本发明实施例中,根据章节目录及章节目录对应的内容目录,可以通过文件组合算法对文本元素和图像元素进行组合,将其写入epub文件中,生成epub格式文件,以供前端打开进行阅读。
50.以上可知,本发明实施例通过获取待转换文件中包含的文件内容,然后对文件内容进行关键词过滤,得到过滤后的文件内容,再拆分过滤后的文件内容中的文本元素和图像元素,并生成章节目录及章节目录对应的内容目录,最后根据章节目录及内容目录,对文本元素和图像元素进行组合,生成epub 格式文件,这样,能够兼容多格式的文件上传,并通过算法自动统一转换为可供前端阅读的epub格式文件,减少了人工处理,提高了转换效率。
51.可选的,在本发明的一些实施例中,步骤s120具体包括:
52.将文件内容中的词汇逐一与预设语料库中的关键词进行相似性比对,得到相似性比对结果;
53.将相似性比对结果符合预设条件的词汇替换为随机字符,得到过滤后的文件内容。
54.本发明实施例中,可以基于模型的方法,人工标注敏感内容等关键词,形成预设语
料库。初始化需过滤词汇集合replist。将需要过滤的文件内容在词语的层次进行建模,把文件内容中每一个词汇转换成一个向量,逐个词汇跟预设语料库中的关键词进行相似性比对,得到相似性比对结果。当相似性比对结果符合预设条件时,如相似度大于90%,则将该词汇及词汇位置取出存入replist中。遍历replist,将replist中所有词汇替换为随机字符,如“*”。最后将replist替换到文件内容中,得到过滤后的文件内容。
55.可选的,在本发明的一些实施例中,在步骤s120之后,该方法还包括:
56.对过滤后的文件内容进行解析,得到过滤后的文件内容对应的文件编码和文件大小。
57.本发明实施例中,可以利用文本编码自动检测技术cpdetector对过滤后的文件内容进行解析。具体的,创建探测器代理codepagedetectorproxy,并加载parsingdetector,用于html等文件的编码测定;加载asciidetector,用于 ascii编码测定;加载unicodedetector,用于unicode家族编码的测定;加载 jchardetfacade,用于txt、pdf、docx等文件的编码测定;通过探测器代理 codepagedetectorproxy执行编码测定逻辑,得到过滤后的文件内容对应的文件编码。同时,根据过滤后的文件内容创建文件对象流,根据文件对象流获取流中的可读取数据大小,得到过滤后的文件内容对应的文件大小。
58.具体实施时,针对不同格式的待转换文件,在拆分文本元素和图像元素时,采用的拆分算法有所不同,下面举例说明。
59.以docx文件为例,可以利用swpf技术拆分过滤后的文件内容中的文本元素和图像元素。具体的,创建文件解析器xwpfparagraph;文件解析器 xwpfparagraph解析过滤后的文件内容,得到元素列表;初始化图片集合pics 和文字集合texts;遍历元素列表,判断元素节点是否为图片节点ctdrawing 或ctpicture,如果是,将该图片节点和图片节点位置信息保存至集合pics中;如果不是,将该文字节点和文字节点位置信息保存至texts中;遍历图片集合 pics,将集合pics中的图片上传至文件服务器,更新图片集合pics中图片的路径信息。
60.以pdf文件为例,可以利用spire.pdf技术拆分过滤后的文件内容中的文本元素和图像元素。具体的,创建pdf文档实例pdfdocument,初始化图片集合pics和文字集合texts;遍历pdf文件的所有页面,查询每个页面page;执行page提取所有图片extractimages,将图片、图片页面位置信息保存至集合 pics中;执行page提取所有文字extracttext,将文字、文字页面位置信息保存至集合texts中;遍历图片集合pics,将集合pics中图片上传至文件服务器,更新图片集合pics中图片的路径信息。
61.具体的,在生成章节目录及章节目录对应的内容目录时,首先设置章节正则表达式,如(^//s*第)(.{1,9})[章节卷集部篇回](//s*)(.*)(/n|/r|/r/n),初始化章节目录集合为dirs,章节目录对应的内容目录集合为dircontents;将texts集合中文本数据根据正则表达式,获取得到内容目录及章节内容、位置;若获取目录、章节信息为空,则以固定字数,如3000字,从文本内容初始位置(0,3000) 进行内容拆分成段。判断截取段末尾字符是否是句子结束符(如句号、问号等等结束符),若是,目录章节为截取段起始15个字符。反之,目录章节下内容截取继续往下遍历,直至碰到句子结束符,或文本结束符为止,定义结束符位置为len,下一个迭代拆分段为(len,len+3000),存储章节目录至集合dirs中;遍历集合dirs,将文本内容根据章节目录位置信息进行字符串截取,获取得到的字符串,即为目录章
节对应的内容,将内容存储至集合dircontents 中。
[0062]
可选的,在本发明的一些实施例中,步骤s140具体包括:
[0063]
根据章节目录及内容目录,将文本元素和图像元素放入预设html模板中,生成html格式文件;
[0064]
根据html格式文件,生成epub格式文件。
[0065]
本发明实施例中,可以预先设置epub html模板model,其中,模板model 包含有css和js,css用于页面布局渲染,js用于页面逻辑处理;初始化epubhtml集合model;遍历dircontents,定义每一章节dir,及章节内容dircontent,及内容中对应位置的图片pic;将dir、dircontent、pic存入指定模板model中,生成epub html文件,存储至htmls中;利用epublib技术;创建epub书籍对象book;将dirs和htmls信息写入book中;使用epubwriter将book写入epub 文件中,生成epub格式文件。
[0066]
可选的,在本发明的一些实施例中,在步骤s140之后,该方法还包括:
[0067]
选取图像元素中符合预设规则的图像,生成epub格式文件的封面。
[0068]
本发明实施例中,可以通过文件检索算法,选取图像元素中权重值最大的图像,作为epub格式文件的封面。具体的,遍历pics,初始化每张图片pic 权重值为w,pics集合大小为k,pics权重集合ws;检索文件中pic出现的次数n,更新pic的权重w=n/k,更新当前pic权重值w至集合ws中;权重集合 ws排序,选取权重值最大的图片pic,即为当前epub格式文件的封面;若权重集合ws权重值一致,则选取集合pics中第一个为封面图片,作为epub格式文件的封面。
[0069]
本发明实施例另一方面提供一种epub文件格式转换装置,包括:
[0070]
获取模块210,用于获取待转换文件中包含的文件内容;
[0071]
过滤模块220,用于对文件内容进行关键词过滤,得到过滤后的文件内容;
[0072]
拆分模块230,用于拆分过滤后的文件内容中的文本元素和图像元素,并生成章节目录及章节目录对应的内容目录;
[0073]
组合模块240,用于根据章节目录及内容目录,对文本元素和图像元素进行组合,生成epub格式文件。
[0074]
可选的,在本发明的一些实施例中,过滤模块220包括:
[0075]
比对单元,用于将文件内容中的词汇逐一与预设语料库中的关键词进行相似性比对,得到相似性比对结果;
[0076]
替换单元,用于将相似性比对结果符合预设条件的词汇替换为随机字符,得到过滤后的文件内容。
[0077]
可选的,在本发明的一些实施例中,该装置还包括:
[0078]
解析模块,用于对过滤后的所述文件内容进行解析,得到过滤后的所述文件内容对应的文件编码和文件大小。
[0079]
可选的,在本发明的一些实施例中,组合模块240包括:
[0080]
第一生成单元,用于根据章节目录及内容目录,将文本元素和图像元素放入预设html模板中,生成html格式文件;
[0081]
第二生成单元,用于根据html格式文件,生成epub格式文件。
[0082]
可选的,在本发明的一些实施例中,该装置还包括:
[0083]
生成模块,用于选取图像元素中符合预设规则的图像,生成epub格式文件的封面。
[0084]
本发明实施例提供的一种epub文件格式转换装置中相关部分的说明请参见本发明实施例提供的一种epub文件格式转换方法中对应部分的详细说明,且均具有本发明实施例提供的一种epub文件格式转换方法具有的对应效果,在此不再赘述。
[0085]
上文中提到的epub文件格式转换装置是从功能模块的角度描述,进一步的,本发明实施例又一方面提供一种epub文件格式转换设备,是从硬件角度描述。
[0086]
请参阅图3,该设备包括:
[0087]
存储器310,用于存储计算机程序;
[0088]
处理器320,用于执行计算机程序时实现如上述任意实施例提供的epub文件格式转换方法的步骤。
[0089]
其中,处理器320可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器320可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(field-programmablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器320也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器320可以集成有gpu(graphicsprocessingunit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器320还可以包括ai(artificialintelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。
[0090]
存储器310可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器310还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器310至少用于存储以下计算机程序,其中,该计算机程序被处理器加载并执行之后,能够实现前述任一实施例公开的epub文件格式转换方法的相关步骤。另外,存储器310所存储的资源还可以包括操作系统和数据等,存储方式可以是短暂存储或者永久存储。其中,操作系统可以包括windows、unix、linux等,数据可以包括但不限于测试结果对应的数据等。
[0091]
可以理解的是,如果上述任意实施例提供的epub文件格式转换方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本技术各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、磁碟或者光盘等各种可以存储程序代码的介质。
[0092]
有鉴于此,本发明实施例又一方面提供一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述任意实施例提供的epub文件格式转换方法的步骤。
[0093]
本发明实施例提供的可读存储介质的各功能模块的功能可根据上述任意方法实
施例中的方法具体实现,其具体实现过程可以参照上述任意方法实施例的相关描述,此处不再赘述。
[0094]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0095]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1