CN114154458A - 格式转换的方法、装置、存储介质和电子设备 - Google Patents
格式转换的方法、装置、存储介质和电子设备 Download PDFInfo
- Publication number
- CN114154458A CN114154458A CN202111276080.XA CN202111276080A CN114154458A CN 114154458 A CN114154458 A CN 114154458A CN 202111276080 A CN202111276080 A CN 202111276080A CN 114154458 A CN114154458 A CN 114154458A
- Authority
- CN
- China
- Prior art keywords
- node
- height
- accumulated
- target
- nodes
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 35
- 238000009825 accumulation Methods 0.000 claims description 39
- 238000004590 computer program Methods 0.000 claims description 9
- 230000001186 cumulative effect Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000005236 sound signal Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种格式转换的方法、装置、存储介质和电子设备,所述方法包括:获取目标文件的各个节点的节点信息;在根据节点信息确定各个节点中存在富文本节点的情况下,获取富文本节点中的各个第一节点的节点高度,以及目标文件的各个节点中除富文本节点外的其他各个第二节点的节点高度;以逐个节点遍历的方式累计各个第一节点的节点高度和各个第二节点的节点高度;在累计高度大于预设高度阈值的情况下,新增第一目标页面;将在累计高度大于预设高度阈值之后所累计的第一高度对应的第一目标节点填充至新增的第一目标页面;将第一目标页面的格式转换至目标格式。
Description
技术领域
本申请涉及文件格式转换的领域,具体地,涉及一种格式转换的方法、装置、存储介质和电子设备。
背景技术
由于PDF(Portable Document Format,可携带文档格式)文件的稳定性良好,许多其他格式的文件(例如网页)需要转换为PDF文件格式。但是现有的文件转换插件,通常只能设定PDF文件的宽高,如果在页面末尾处的剩余高度大于用于自动截取页面的预设剩余高度,即使该高度减去该预设剩余高度的差值小于行高,该插件会默认还可以继续截取页面,所以就会导致可能截取到一部分的文字信息。
现有的解决方法中,虽然可以针对目标文件的页面高度进行分页,但如果出现页面层级嵌套,就可能导致分页出现问题,例如存在富文本的情况下,就可能会导致生成的PDF文件页面内容出现大面积空白。
发明内容
为了解决上述问题,本申请提供了一种格式转换的方法、装置、存储介质和电子设备。
第一方面,本申请提供一种格式转换的方法,所述方法包括:获取目标文件的各个节点的节点信息;在根据所述节点信息确定所述各个节点中存在富文本节点的情况下,获取所述富文本节点中的各个第一节点的节点高度,以及所述目标文件的各个节点中除所述富文本节点外的其他各个第二节点的节点高度;以逐个节点遍历的方式累计各个所述第一节点的节点高度和各个所述第二节点的节点高度;在累计高度大于预设高度阈值的情况下,新增第一目标页面;将在所述累计高度大于所述预设高度阈值之后所累计的第一高度对应的第一目标节点填充至新增的第一目标页面;将所述第一目标页面的格式转换至目标格式。
可选地,所述以逐个节点遍历的方式累计各个所述第一节点的节点高度和各个所述第二节点的节点高度,包括:当在执行最近一次累计后得到的累计高度大于所述预设高度阈值的情况下,将所述最近一次累计的节点高度作为所述第一目标页面的初始节点高度重新开始累计;或者,当在执行最近一次累计后得到的累计高度大于所述预设高度阈值的情况下,将所述最近一次累计的节点高度与预设的标准页面高度的和值作为所述第一目标页面当前的累计高度,并将所述预设高度阈值更新为最近一次更新后的预设高度阈值与所述标准页面高度的和值。
可选地,所述方法还包括:在所述累计高度小于或者等于所述预设高度阈值的情况下,将所述累计高度对应的第二目标节点填充至当前的第二目标页面;将所述第二目标页面的格式转换至目标格式。
可选地,所述方法还包括:在各个所述第一节点的节点高度和各个所述第二节点的节点高度遍历完成之后,删除所述富文本节点。
第二方面,本申请提供一种格式转换的装置,所述装置包括:获取模块,用于获取目标文件的各个节点的节点信息,所述节点信息包括节点格式,以及,在根据所述节点信息确定所述各个节点中存在富文本节点的情况下,获取所述富文本节点中的各个节点的第一节点的节点高度,以及所述目标文件的各个节点中除所述富文本节点外的其他各个节点的第二节点的节点高度;累计模块,用于以逐个节点遍历的方式累计各个所述第一节点的节点高度和各个所述第二节点的节点高度;页面管理模块,用于在累计高度大于预设高度阈值的情况下,新增第一目标页面;填充模块,用于将所述累计高度大于所述预设高度阈值后所累计的第一累计高度对应的第一目标节点填充至新增的第一目标页面;转换模块,用于将所述第一目标页面的格式转换至目标格式。
可选地,所述累计模块,用于:当在执行最近一次累计后得到的累计高度大于所述预设高度阈值的情况下,将所述最近一次累计的节点高度作为所述第一目标页面的初始节点高度重新开始累计;或者,当在执行最近一次累计后得到的累计高度大于所述预设高度阈值的情况下,将所述最近一次累计的节点高度与预设的标准页面高度的和值作为所述第一目标页面当前的累计高度,并将所述预设高度阈值更新为最近一次更新后的预设高度阈值与所述标准页面高度的和值。
可选地,所述填充模块,还用于在所述累计高度小于或者等于所述预设高度阈值的情况下,将所述累计高度对应的第二目标节点填充至当前的第二目标页面;所述转换模块,还用于将所述第二目标页面的格式转换至目标格式。
可选地,所述装置还包括:删除模块,用于在各个所述第一节点的节点高度和各个所述第二节点的节点高度遍历完成之后,删除所述富文本节点。
第三方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述方法的步骤。
第四方面,本申请提供一种电子设备,包括:存储器,其上存储有计算机程序;处理器,用于执行所述存储器中的所述计算机程序,以实现上述方法的步骤。
通过上述技术方案,可以根据目标文件的节点信息对目标文件进行划分,识别目标文件中各个节点,并在存在富文本节点的情况下,通过对富文本节点内容的遍历,获取富文本节点中的各个节点,从而获取富文本节点中的各个节点的节点高度以及目标文件中其他各个节点的节点高度,并通过逐个节点遍历的方式对各个节点的节点高度进行累计,然后根据累计得到的累计高度确定是否进行分页,并在累计高度大于预设高度阈值的情况下进行分页。这样,不仅避免了目标文件转化为的PDF文件中可能出现的文字被截取一部分的情况,另外在存在页面层级嵌套的情况下,也可以提取出嵌套层级中的文本内容,从而能够避免在生成的PDF文件中出现大面积空白的情况出现。
本申请的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本申请的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本申请,但并不构成对本申请的限制。在附图中:
图1是根据一示例性实施例示出的一种格式转换的方法的流程图;
图2是根据一示例性实施例示出的另一种格式转换的方法的流程图;
图3是根据一示例性实施例示出的一种格式转换的装置框图;
图4是根据一示例性实施例示出的另一种格式转换的装置框图;
图5是根据一示例性实施例示出的一种电子设备。
具体实施方式
以下结合附图对本申请的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本申请,并不用于限制本申请。
首先对本申请的应用场景进行说明,由于PDF文件的稳定性,许多其他格式的文件需要转换为PDF文件格式,但是目前文件转换插件只能设定生成PDF文件的宽高。以网页编译的场景为例,在即时编译保存国标表单信息时,一般在用户付费后,前端会根据表单内容自动生成国标PDF文件,供用户观看,但目前所用的格式转换插件(jspdf)只能设定生成的PDF文件的宽高,这样在截取页面生成PDF文件的过程中可能存在问题,例如,待转换文件的行高是30px,设定生成的PDF文件的页面高度是800px,页面底部的保留高度是10px,该保留高度用于表征在目标行距离页面的底部的高度小于或者等于10px的位置对该页面进行截取,在进行转换的过程中,如果存在目标页面中目标行的上一行距离该目标页面的底部还有20px的情况下,由于20px大于10px保留高度,会导致该插件将目标行填充至该目标页面,但是剩余高度20px不足以完整填充目标行的信息,所以就会导致该目标页面截取到目标行的一部分信息,破坏了该目标行信息的完整性。
针对文字信息被截断的现象,在划分页面时,需要判断该页面的页面高度是否满足文本高度,在不满足该文本高度的情况下进行分页,因此,现有的解决方法中,可以针对目标文件的高度进行划分,在该页面的剩余页面高度小于文本高度的情况下进行分页,但如果出现页面层级嵌套,例如出现富文本,就会导致分页的时候页面高度小于该文本高度的情况下,对该富文本直接进行分页,可能出现生成的PDF文件页面内容出现大面积空白,体验不太好的问题。
为了解决上述问题,本申请提供了一种格式转换的方法、装置、存储介质和电子设备,获取目标文件的各个节点的节点信息,在根据该节点信息确定该各个节点中存在富文本节点的情况下,获取该富文本节点中的各个节点的第一节点的节点高度,以及该目标文件的各个节点中除该富文本节点外的其他各个节点的第二节点的节点高度,以逐个节点遍历的方式累计各个该第一节点的节点高度和各个该第二节点的节点高度,在累计高度大于预设高度阈值的情况下,新增第一目标页面,这样,不仅避免了目标文件转化为的PDF文件中可能出现的文字被截取一部分的情况,另外在存在页面层级嵌套的情况下,也可以提取出嵌套层级中的文本内容,从而能够避免在生成的PDF文件中出现大面积空白的情况出现。
图1是本申请根据一示例性实施例示出的一种格式转换的方法,如图1所示,该方法包括:
S101、获取目标文件的各个节点的节点信息。
其中,目标文件可以存在多个节点,该多个节点可以存在不同的节点格式,因此该节点信息可以包括节点格式,该节点格式包括图片、文字或者富文本。
S102、在根据节点信息确定各个节点中存在富文本节点的情况下,获取富文本节点中的各个第一节点的节点高度,以及目标文件的各个节点中除富文本节点外的其他各个第二节点的节点高度。
其中,该节点高度用于表征节点在页面中所占的像素高度,该富文本节点嵌套于该目标文件中,通常富文本节点中可以包括多个第一节点,该第一节点可以包括多种节点格式。
示例地,该目标文件可以是用户提交的在线简历,该在线简历可以包括文字段落、表格、照片以及富文本等不同格式的内容,根据该在线简历的内容结构,划分不同的节点,如该目标文件可以划分为基本信息、教育经历、工作经历和项目展示4个节点,该基本信息可以包括文字段落和照片,该教育经历和工作经历可以包括表格,该项目展示可以包括富文本,因此该基本信息、教育经历、工作经历为3个第二节点,该项目展示为富文本节点,依据其中所包含的内容可以得到多个第一节点。可以根据该项目展示的具体内容,划分该项目展示中的多个第一节点,可以将该项目展示中的不同项目,如将项目A、项目B和项目C作为多个不同第一节点进行划分。然后获取该在线简历的基本信息、教育经历和工作经历的节点高度,得到3个第二节点的节点高度,并获取项目A、项目B和项目C的节点高度,从而获取3个第一节点的节点高度。
S103、以逐个节点遍历的方式累计各个该第一节点的节点高度和各个该第二节点的节点高度。
按照各个该第一节点和各个该第二节点的排版顺序依次进行遍历,获取该第一节点和该第二节点的节点高度并依次累计。
示例地,以上述在线简历为例,按照排版顺序,依次遍历基本信息、教育经历和工作经历这三个第二节点以及项目内容中的项目A、项目B、项目C这3个第一节点,并按照遍历顺序累计该基本信息、该教育经历和该工作经历的这3个第二节点的节点高度以及该项目展示中项目A、项目B和项目C这3个第一节点的节点高度。
S104、在累计高度大于预设高度阈值的情况下,新增第一目标页面。
示例的,该累计高度大于预设高度阈值之后,再进行上述的节点遍历以累计高度时,可以存在两种实现方式。
在一种实现方式中,当在执行最近一次累计后得到的累计高度大于预设高度阈值的情况下,将该最近一次累计的节点高度作为该第一目标页面的初始节点高度重新开始累计。即可以理解为,在执行最近一次累计后得到的累计高度大于预设高度阈值的情况下,以第一目标页面作为新的一页,将该最近一次累计的节点高度从之前的累计高度中去除,作为该第一目标页面的初始节点高度,当执行下一次累计时,将下一个遍历到的节点高度增加到该初始节点高度,以此类推,直至在该第一目标页面上重新累计所得到的累积高度再次大于该预设高度阈值时,再次新建一个页面,并重复执行上述操作,直至完成整个目标文件的分页。
示例地,以上述该目标文件为在线简历为例,该预设高度阈值可以是800px,该基本信息的节点高度可以是300px,该教育经历的节点高度可以是400px,该工作经历的节点高度可以是400px,该项目A、项目B、项目C的节点高度可以分别都是300px,按照排版顺序依次进行遍历,并按照遍历顺序进行累计,在累计至工作经历的时候,该累计高度为1100px,大于预设高度阈值,则新增第一目标页面,并将该工作经历的节点高度400px作为初始高度重新开始累计,则此时前一页面的累计高度变为700px,然后在第一目标页面继续累计,在累计至项目B的时候(即又累计了项目A和B的节点高度),该累计高度为400+300+300=1000px,大于该预设高度阈值,再次新增一个第一目标页面,并将该项目B的节点高度作为初始高度重新开始累计。
在另一种实现方式中,当在执行最近一次累计后得到的累计高度大于该预设高度阈值的情况下,将最近一次累计的节点高度与预设标准页面高度的和值作为该第一目标页面当前的累计高度,并将该预设高度阈值更新为最近一次更新后的预设高度阈值与该标准页面高度的和值。即可以理解为,在本实现方式中,预设高度阈值是随着目标页面的增加而更新,每增加一个新的页面,预设高度阈值就增加一个标准页面高度。
示例地,以上述该目标文件为在线简历为例,第一次该预设高度阈值可以是800px,标准页面高度也是800px,该基本信息的节点高度可以是300px,该教育经历的节点高度可以是400px,该工作经历的节点高度可以是400px,该项目A、项目B、项目C的节点高度可以分别都是300px,按照排版顺序依次进行遍历,并按照遍历顺序进行累计,在累计至工作经历的时候,该累计高度为1100px,大于预设高度阈值,则新增第一目标页面,并将该工作经历的节点高度400px与第一次该标准页面高度800px的和值1200px作为新增的该第一目标页面当前的累计高度继续进行累计,此时第一目标页面的前一页面的累计高度为该累计高度为1100px减去工作经历这个节点的节点高度400px,即700px。然后更新第二次的该预设高度阈值为该第一次预设高度阈值800px与新增的该标准页面高度800px的和值1600px。在累计至项目B的时候,该累计高度为1800px,大于第二次更新的预设高度阈值,再次新增第一目标页面,并将该项目B的节点高度300px与第二次更新的预设高度阈值的1600px的和值1900px作为再次新增的该第一目标页面当前的累计高度继续进行累计,然后更新第三次的预设高度阈值为该第二次更新的预设高度阈值1600px与标准页面高度800px的和值2400px。
S105、将在累计高度大于预设高度阈值之后所累计的第一高度对应的第一目标节点填充至新增的第一目标页面。
其中,在累计高度大于预设高度阈值之后所累计的第一高度,可以理解为,在执行最近一次累计后所得到的累计高度大于预设高度阈值时,后续继续对剩余节点的遍历所累加的高度即为该第一高度,其中对于执行最近一次累计的节点高度,其处理方法参照步骤104该的内容,不再赘述。
示例地,以上述该目标文件为在线简历为例,如上述示例所示,在累计至工作经历的时候,该累计高度大于预设高度阈值,在累计至该工作经历之前,该累计高度小于该预设高度阈值,因此将该工作经历的节点高度作为第一高度,将该工作经历作为对应于该第一高度的第一目标节点,并将作为该第一目标节点的该工作经历填充至新增的该第一目标页面。同理的,在累计至项目B的时候,该累计高度再次大于预设高度阈值,此时需要再增加一个新的第一目标页面,在累计至该项目B之前且累计至该工作经历之后,该累计高度小于该预设高度阈值,因此将该项目B的节点高度作为新的第一高度,将该项目B作为对应于新的该第一高度的新的第一目标节点,并将作为新的该第一目标节点的该项目B填充至再次新增的第一目标页面。
另外,还需要说明的是,在累计高度小于或者等于预设高度阈值的情况下,将累计高度对应的第二目标节点填充至当前的第二目标页面。该第二目标页面为第一目标页面之前的页面。
示例地,以上述该目标文件为在线简历为例,如上述示例所示,在累计至工作经历之前,该累计高度小于该预设高度阈值,如累计至该基本信息的时候,该累计高度为300px,累计至该教育经历的时候,该累计高度为700px,该基本信息和该教育经历的累计高度都小于该预设高度阈值,因此将该基本信息和该教育经历填充至当前的该第二目标页面,并不新增该第一目标页面;同理的,将该工作经历填充至该第一目标页面之后,该第一目标页面作为新的当前的第二目标页面,在累计至该项目B之前该累计高度都小于该预设高度阈值,因此将该工作经历、项目A都填充至新的当前的该第二目标页面内,以此类推,直至完成整个目标文件的页面划分。
S106、将该第一目标页面的格式转换至目标格式。
其中,在各个该第一节点的节点高度和各个该第二节点的节点高度依次遍历并进行填充完成之后,删除该富文本节点,并将该第一目标页面和该第二目标页面的格式转换至目标格式。
需要说明的是,上述以该目标文件为在线简历、该预设高度阈值以及各个节点的节点信息都仅是举例说明,并不用于限制本申请。
采用上述方法,可以根据目标文件的节点信息对目标文件进行划分,识别目标文件中各个节点,并在存在富文本节点的情况下,通过对富文本节点内容的遍历,获取富文本节点中的各个节点,从而获取富文本节点中的各个节点的节点高度以及目标文件中其他各个节点的节点高度,并通过逐个节点遍历的方式对各个节点的节点高度进行累计,然后根据累计得到的累计高度确定是否进行分页,并在累计高度大于预设高度阈值的情况下进行分页。这样,不仅避免了目标文件转化为的PDF文件中可能出现的文字被截取一部分的情况,另外在存在页面层级嵌套的情况下,也可以提取出嵌套层级中的文本内容,从而能够避免在生成的PDF文件中出现大面积空白的情况出现,有利于提高用户体验。
图2是本申请根据一示例性实施例示出的另一种格式转换的方法,如图1所示,该方法包括:
S201、获取目标文件的各个节点的节点信息。
该节点信息包括节点格式,该节点格式包括富文本格式以及非富文本格式。
S202、根据该节点信息确定各个节点中是否存在富文本格式。
在存在至少一个节点是富文本格式的情况下,执行步骤S203和S204;
S203、获取该富文本节点中的各个第一节点的节点高度。
S204、获取各个节点中除该富文本节点外的其他各个第二节点的节点高度。
其中,可以创建目标数组,将该第一节点的节点高度和第二节点的节点高度按照排版顺序保存至目标数组。
S205、以逐个节点遍历的方式累计各个第一节点的节点高度和各个第二节点的节点高度。
在不存在富文本格式的节点的情况下,该目标文件的各个节点均为第二节点,获取目标文件中的各个第二节点的节点高度,并执行以逐个节点遍历的方式累计目标文件中的各个第二节点的节点高度,并根据获得的累计高度执行步骤S206~S210。
其中,可以通过遍历目标数组的方式,达到快速累计各个第一节点和各个第二节点的节点高度的目的。
S206、判断累计高度是否大于预设高度阈值。
在该累计高度大于该预设高度阈值的情况下,执行步骤S207;
在该累计高度小于或等于该预设高度阈值的情况下,执行步骤S208。
S207、新增第一目标页面,将在该累计高度大于该预设高度阈值之后所累计的第一高度对应的第一目标节点填充至新增的第一目标页面。
S208、将该累计高度对应的第二目标节点填充至当前的第二目标页面。
其中,可以创建对应于各个第一节点和各个第二节点的节点对象,通过引用该节点对象的方式,对该第一目标页面和该第二目标页面进行填充。
S209、删除该富文本节点。
S210、将该第一目标页面和该第二目标页面转换至目标格式。
采用上述方法,可以快速有效地将目标文件的格式转换为目标格式,且可以避免生成的目标格式的文件中可能出现的文字被截取一部分的情况,以及在存在页面层级嵌套的情况下,避免目标格式的文件中出现大面积空白的情况,有利于提高用户体验。
图3是本申请根据一示例性实施例示出的一种格式转换的装置,如图3所示,该装置包括:
获取模块301,用于获取目标文件的各个节点的节点信息,该节点信息包括节点格式,以及,在根据该节点信息确定各个节点中存在富文本节点的情况下,获取该富文本节点中的各个节点的第一节点的节点高度,以及该目标文件的各个节点中除该富文本节点外的其他各个节点的第二节点的节点高度;
累计模块302,用于以逐个节点遍历的方式累计各个该第一节点的节点高度和各个该第二节点的节点高度;
页面管理模块303,用于在累计高度大于预设高度阈值的情况下,新增第一目标页面;
填充模块304,用于将该累计高度大于该预设高度阈值后所累计的第一累计高度对应的第一目标节点填充至新增的第一目标页面;
转换模块305,用于将该第一目标页面的格式转换至目标格式。
可选地,该累计模块302,用于:当在执行最近一次累计后得到的累计高度大于该预设高度阈值的情况下,将该最近一次累计的节点高度作为该第一目标页面的初始节点高度重新开始累计;或者,当在执行最近一次累计后得到的累计高度大于该预设高度阈值的情况下,将该最近一次累计的节点高度与预设的标准页面高度的和值作为该第一目标页面当前的累计高度,并将该预设高度阈值更新为最近一次更新后的预设高度阈值与该标准页面高度的和值。
可选地,该填充模块304,还用于在该累计高度小于或者等于该预设高度阈值的情况下,将该累计高度对应的第二目标节点填充至当前的第二目标页面;该转换模块305,还用于将该第二目标页面的格式转换至目标格式。
图4是本申请根据一示例性实施例示出的另一种格式转换的装置,在图3的基础上,如图4所示,该装置还包括:该装置还包括:删除模块306,用于在各个该第一节点的节点高度和各个该第二节点的节点高度遍历完成之后,删除该富文本节点。
采用上述装置,可以根据目标文件的节点信息对目标文件进行划分,识别目标文件中各个节点,并在存在富文本节点的情况下,通过对富文本节点内容的遍历,获取富文本节点中的各个节点,从而获取富文本节点中的各个节点的节点高度以及目标文件中其他各个节点的节点高度,并通过逐个节点遍历的方式对各个节点的节点高度进行累计,然后根据累计得到的累计高度确定是否进行分页,并在累计高度大于预设高度阈值的情况下进行分页。这样,不仅避免了目标文件转化为的PDF文件中可能出现的文字被截取一部分的情况,另外在存在页面层级嵌套的情况下,也可以提取出嵌套层级中的文本内容,从而能够避免在生成的PDF文件中出现大面积空白的情况出现。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图5是根据一示例性实施例示出的一种电子设备500的框图。如图5所示,该电子设备500可以包括:处理器501,存储器502。该电子设备500还可以包括多媒体组件503,输入/输出(I/O)接口504,以及通信组件505中的一者或多者。
其中,处理器501用于控制该电子设备500的整体操作,以完成上述的格式转换的方法中的全部或部分步骤。存储器502用于存储各种类型的数据以支持在该电子设备500的操作,这些数据例如可以包括用于在该电子设备500上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器502可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件503可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器502或通过通信组件505发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口504为处理器501和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件505用于该电子设备500与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件505可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,电子设备500可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的格式转换的方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的格式转换的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器502,上述程序指令可由电子设备500的处理器501执行以完成上述的格式转换的方法。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的格式转换的方法的代码部分。
以上结合附图详细描述了本申请的优选实施方式,但是,本申请并不限于上述实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种可能的组合方式不再另行说明。
此外,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。
Claims (10)
1.一种格式转换的方法,其特征在于,所述方法包括:
获取目标文件的各个节点的节点信息;
在根据所述节点信息确定所述各个节点中存在富文本节点的情况下,获取所述富文本节点中的各个第一节点的节点高度,以及所述目标文件的各个节点中除所述富文本节点外的其他各个第二节点的节点高度;
以逐个节点遍历的方式累计各个所述第一节点的节点高度和各个所述第二节点的节点高度;
在累计高度大于预设高度阈值的情况下,新增第一目标页面;
将在所述累计高度大于所述预设高度阈值之后所累计的第一高度对应的第一目标节点填充至新增的第一目标页面;
将所述第一目标页面的格式转换至目标格式。
2.根据权利要求1所述的方法,其特征在于,所述以逐个节点遍历的方式累计各个所述第一节点的节点高度和各个所述第二节点的节点高度,包括:
当在执行最近一次累计后得到的累计高度大于所述预设高度阈值的情况下,将所述最近一次累计的节点高度作为所述第一目标页面的初始节点高度重新开始累计;或者,
当在执行最近一次累计后得到的累计高度大于所述预设高度阈值的情况下,将所述最近一次累计的节点高度与预设的标准页面高度的和值作为所述第一目标页面当前的累计高度,并将所述预设高度阈值更新为最近一次更新后的预设高度阈值与所述标准页面高度的和值。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述累计高度小于或者等于所述预设高度阈值的情况下,将所述累计高度对应的第二目标节点填充至当前的第二目标页面;
将所述第二目标页面的格式转换至目标格式。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在各个所述第一节点的节点高度和各个所述第二节点的节点高度遍历完成之后,删除所述富文本节点。
5.一种格式转换的装置,其特征在于,所述装置包括:
获取模块,用于获取目标文件的各个节点的节点信息,所述节点信息包括节点格式,以及,在根据所述节点信息确定所述各个节点中存在富文本节点的情况下,获取所述富文本节点中的各个节点的第一节点的节点高度,以及所述目标文件的各个节点中除所述富文本节点外的其他各个节点的第二节点的节点高度;
累计模块,用于以逐个节点遍历的方式累计各个所述第一节点的节点高度和各个所述第二节点的节点高度;
页面管理模块,用于在累计高度大于预设高度阈值的情况下,新增第一目标页面;
填充模块,用于将所述累计高度大于所述预设高度阈值后所累计的第一累计高度对应的第一目标节点填充至新增的第一目标页面;
转换模块,用于将所述第一目标页面的格式转换至目标格式。
6.根据权利要求5所述的装置,其特征在于,所述累计模块,用于:
当在执行最近一次累计后得到的累计高度大于所述预设高度阈值的情况下,将所述最近一次累计的节点高度作为所述第一目标页面的初始节点高度重新开始累计;或者,
当在执行最近一次累计后得到的累计高度大于所述预设高度阈值的情况下,将所述最近一次累计的节点高度与预设的标准页面高度的和值作为所述第一目标页面当前的累计高度,并将所述预设高度阈值更新为最近一次更新后的预设高度阈值与所述标准页面高度的和值。
7.根据权利要求5所述的装置,其特征在于,所述填充模块,还用于在所述累计高度小于或者等于所述预设高度阈值的情况下,将所述累计高度对应的第二目标节点填充至当前的第二目标页面;
所述转换模块,还用于将所述第二目标页面的格式转换至目标格式。
8.根据权利要求5所述的装置,其特征在于,所述装置还包括:
删除模块,用于在各个所述第一节点的节点高度和各个所述第二节点的节点高度遍历完成之后,删除所述富文本节点。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1-4中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-4中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111276080.XA CN114154458A (zh) | 2021-10-29 | 2021-10-29 | 格式转换的方法、装置、存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111276080.XA CN114154458A (zh) | 2021-10-29 | 2021-10-29 | 格式转换的方法、装置、存储介质和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114154458A true CN114154458A (zh) | 2022-03-08 |
Family
ID=80458900
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111276080.XA Pending CN114154458A (zh) | 2021-10-29 | 2021-10-29 | 格式转换的方法、装置、存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114154458A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100736336B1 (ko) * | 2006-08-04 | 2007-07-06 | (주)인트라테크 | 분철 페이지 문서 가상 바인딩 방법 및 그 시스템 |
CN108984709A (zh) * | 2018-07-06 | 2018-12-11 | 盐城天眼查信息咨询有限公司 | 一种数据导入方法、装置和计算机可读介质 |
CN109891406A (zh) * | 2016-11-04 | 2019-06-14 | 微软技术许可有限责任公司 | 多级数据分页 |
US20190236403A1 (en) * | 2018-01-31 | 2019-08-01 | Analytical Graphics, Inc. | Systems and Methods for Converting Massive Point Cloud Datasets to a Hierarchical Storage Format |
CN112036123A (zh) * | 2020-08-31 | 2020-12-04 | 北京奇虎鸿腾科技有限公司 | 基于网页页面的pdf生成方法、装置、设备及存储介质 |
CN112861481A (zh) * | 2021-01-29 | 2021-05-28 | 北京尚医智信健康管理有限公司 | 分页处理的方法、装置、电子设备及计算机可读存储介质 |
-
2021
- 2021-10-29 CN CN202111276080.XA patent/CN114154458A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100736336B1 (ko) * | 2006-08-04 | 2007-07-06 | (주)인트라테크 | 분철 페이지 문서 가상 바인딩 방법 및 그 시스템 |
CN109891406A (zh) * | 2016-11-04 | 2019-06-14 | 微软技术许可有限责任公司 | 多级数据分页 |
US20190236403A1 (en) * | 2018-01-31 | 2019-08-01 | Analytical Graphics, Inc. | Systems and Methods for Converting Massive Point Cloud Datasets to a Hierarchical Storage Format |
CN108984709A (zh) * | 2018-07-06 | 2018-12-11 | 盐城天眼查信息咨询有限公司 | 一种数据导入方法、装置和计算机可读介质 |
CN112036123A (zh) * | 2020-08-31 | 2020-12-04 | 北京奇虎鸿腾科技有限公司 | 基于网页页面的pdf生成方法、装置、设备及存储介质 |
CN112861481A (zh) * | 2021-01-29 | 2021-05-28 | 北京尚医智信健康管理有限公司 | 分页处理的方法、装置、电子设备及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109582909B (zh) | 网页自动生成方法、装置、电子设备和存储介质 | |
CN108717437B (zh) | 搜索结果展示方法、装置及存储介质 | |
CN108874393B (zh) | 渲染方法、装置、存储介质和计算机设备 | |
CN107203574B (zh) | 数据管理和数据分析的聚合 | |
CN110070593B (zh) | 图片预览信息的显示方法、装置、设备及介质 | |
CN109145272B (zh) | 文本渲染和布局方法、装置、设备和存储介质 | |
CN109542911B (zh) | 一种元数据组织方法、系统、设备及计算机可读存储介质 | |
CN110941779B (zh) | 加载页面的方法、装置、存储介质及电子设备 | |
CN111831815B (zh) | 问卷显示的控制方法、装置、存储介质和电子设备 | |
CN114579561A (zh) | 数据处理方法和装置、存储介质 | |
CN113760276A (zh) | 一种生成页面代码的方法和装置 | |
CN110308907B (zh) | 数据转换方法、装置、存储介质及电子设备 | |
CN110309239B (zh) | 一种可视化地图编辑方法和装置 | |
CN114154458A (zh) | 格式转换的方法、装置、存储介质和电子设备 | |
CN108255486B (zh) | 用于表单设计的视图转换方法、装置和电子设备 | |
CN113297156A (zh) | 一种数据同步方法、装置、设备及介质 | |
CN113609433B (zh) | 一种算式布局确定方法、装置、电子设备及存储介质 | |
CN111078773A (zh) | 一种数据处理方法及装置 | |
CN114637499B (zh) | 可视化组件处理方法、装置、设备及介质 | |
CN113535160B (zh) | 应用模块复用的方法、装置、系统、电子装置和存储介质 | |
CN104598554A (zh) | 网页页面加载方法及装置 | |
CN104102728A (zh) | 一种新闻列表展示方法和装置 | |
CN111858158B (zh) | 数据处理方法、装置及电子设备 | |
CN112100553B (zh) | 一种网页页面配置方法、装置、电子设备及存储介质 | |
CN116775174A (zh) | 一种基于用户界面框架的处理方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230727 Address after: 224008 Rooms 404-405 and 504, Building B-17-1, Big data Industrial Park, Kecheng Street, Yannan High tech Zone, Yancheng, Jiangsu Province Applicant after: Yancheng Tianyanchawei Technology Co.,Ltd. Address before: 224008 room 501-503, building b-17-1, Xuehai road big data Industrial Park, Kecheng street, Yannan high tech Zone, Yancheng City, Jiangsu Province (CNK) Applicant before: Yancheng Jindi Technology Co.,Ltd. |
|
TA01 | Transfer of patent application right |