CN116956834A - 文本生成方法、装置、设备及存储介质 - Google Patents
文本生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116956834A CN116956834A CN202310927094.6A CN202310927094A CN116956834A CN 116956834 A CN116956834 A CN 116956834A CN 202310927094 A CN202310927094 A CN 202310927094A CN 116956834 A CN116956834 A CN 116956834A
- Authority
- CN
- China
- Prior art keywords
- text
- watermark
- html
- configuration information
- 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 60
- 238000006243 chemical reaction Methods 0.000 claims abstract description 43
- 238000007639 printing Methods 0.000 claims description 16
- 238000010586 diagram Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- 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/109—Font handling; Temporal or kinetic typography
-
- 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
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及超文本标记语言技术领域,公开了一种文本生成方法、装置、设备及存储介质,该方法包括:将初始HTML文本转换为符合PDF转换条件的标准HTML文本;判断预设配置信息中是否存在用户基于所需PDF文本设置的个性化配置信息;若是,则根据个性化配置信息对标准HTML文本进行设置,获得目标HTML文本;对目标HTML文本进行解析,获得目标PDF文本。本发明通过个性化配置信息对标准HTML文本进行设置,然后将设置后的目标HTML文本转换为目标PDF文本,实现了对个性化需求的支持,使得所生成的PDF文本更加符合用户期望,有效提高了用户使用体验。
Description
技术领域
本发明涉及超文本标记语言技术领域,尤其涉及一种文本生成方法、装置、设备及存储介质。
背景技术
目前,随着电子合同、电子保单以及电子票据等电子化产品的普及,用户更多的不再是通过软件独立创建或编辑一份PDF文件,而是将不同业务场景中的超文本标记语言(HyperText Markup Language,HTML)文本转换为各类PDF文本。
但是,上述方式在将HTML文本转换为PDF文本时,只能模板化的将HTML文本中的各标签转换为PDF形式的文本内容,并不支持页面大小调整、页面特殊填充或水印内容设置等个性化需求,使得所生成的PDF文本并不符合用户期望,导致用户使用体验不佳。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供了一种文本生成方法、装置、设备及存储介质,旨在解决现有技术不支持用户的个性化需求,使得所生成的PDF文本并不符合用户期望,导致用户使用体验不佳的技术问题。
为实现上述目的,本发明提供了一种文本生成方法,所述文本生成方法包括以下步骤:
将初始HTML文本转换为符合PDF转换条件的标准HTML文本;
判断预设配置信息中是否存在用户基于所需PDF文本设置的个性化配置信息;
若是,则根据所述个性化配置信息对所述标准HTML文本进行设置,获得目标HTML文本;
对所述目标HTML文本进行解析,获得目标PDF文本。
可选地,所述将初始HTML文本转换为符合PDF转换条件的标准HTML文本的步骤,包括:
将初始HTML文本解析为闭包HTML文本,并从所述闭包HTML文本中获取包含字体信息的所有文本标签;
判断所述文本标签中的各HTML字体是否与系统配置的PDF字体匹配;
根据匹配结果将所述闭包HTML文本转换为符合PDF转换条件的标准HTML文本。
可选地,所述根据匹配结果将所述闭包HTML文本转换为符合PDF转换条件的标准HTML文本的步骤,包括:
在各所述HTML字体中存在首个HTML字体与所述PDF字体匹配时,将所述HTML字体替换为所述PDF字体,获得符合PDF转换条件的标准HTML文本;
在各所述HTML字体均未与所述PDF字体匹配时,将所述HTML字体替换为默认字体,获得符合PDF转换条件的标准HTML文本。
可选地,所述个性化配置信息包括自定义页面打印属性以及所需添加内容,所述根据所述个性化配置信息对所述标准HTML文本进行设置,获得目标HTML文本的步骤,包括:
根据所述自定义页面打印属性设置所述标准HTML文本的页面信息,获得第一HTML文本;
对所述第一HTML文本的页面区域进行划分,将所述页面区域的预设版心区域之外的部分划分为若干填充区域;
将所述所需添加内容填充至所述填充区域中,获得第二HTML文本;
判断所述个性化配置信息中是否存在水印配置信息;
若不存在所述水印配置信息,则将所述第二HTML文本作为目标HTML文本。
可选地,所述判断所述个性化配置信息中是否存在水印配置信息的步骤之后,还包括:
若存在所述水印配置信息,则获取所述水印配置信息中的水印文本内容和旋转角度;
根据所述旋转角度对所述水印文本内容进行旋转,获得待填充水印文本内容;
将所述待填充水印文本内容填充至所述页面区域中,获得目标HTML文本。
可选地,所述将所述待填充水印文本内容填充至所述页面区域中,获得目标HTML文本的步骤,包括:
从所述水印配置信息中获取水印拥挤度,并通过所述水印拥挤度和所述页面区域的尺寸参数在所述页面区域中确定填充所述待填充水印文本内容的若干水印位置;
判断所述水印位置中是否存在延伸至下一页面区域的跨页位置;
若否,则将所述待填充水印文本内容添加至所述水印位置,获得目标HTML文本。
可选地,所述判断所述水印位置中是否存在延伸至下一页面区域的跨页位置的步骤之后,还包括:
若是,则将添加至所述跨页位置中的待填充水印文本内容作为骑缝水印文本内容;
根据所述跨页位置计算所述骑缝水印文本内容的切割距离,并基于所述切割距离对所述骑缝水印文本内容进行切割,获得第一骑缝水印文本内容和第二骑缝水印文本内容;
在将所述待填充水印文本内容填充至所述水印位置时,将所述第一骑缝水印文本内容添加至所述跨页位置中处于所述页面区域的部分,将所述第二骑缝水印文本内容添加至所述跨页位置中处于所述下一页面区域的部分,获得目标HTML文本。
此外,为实现上述目的,本发明还提出一种文本生成装置,所述文本生成装置包括:
文本转换模块,用于将初始HTML文本转换为符合PDF转换条件的标准HTML文本;
配置判断模块,用于判断预设配置信息中是否存在用户基于所需PDF文本设置的个性化配置信息;
文本设置模块,若是,则根据所述个性化配置信息对所述标准HTML文本进行设置,获得目标HTML文本;
文本解析模块,用于对所述目标HTML文本进行解析,获得目标PDF文本。
此外,为实现上述目的,本发明还提出一种文本生成设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的文本生成程序,所述文本生成程序配置为实现如上文所述的文本生成方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有文本生成程序,所述文本生成程序被处理器执行时实现如上文所述的文本生成方法的步骤。
本发明通过将初始HTML文本转换为符合PDF转换条件的标准HTML文本;然后判断预设配置信息中是否存在用户基于所需PDF文本设置的个性化配置信息;若是,则根据个性化配置信息对标准HTML文本进行设置,获得目标HTML文本;最后对目标HTML文本进行解析,获得目标PDF文本。本发明通过个性化配置信息对标准HTML文本进行设置,然后将设置后的目标HTML文本转换为目标PDF文本,相较于现有技术只能模板化的将HTML文本中的各标签转换为PDF形式的文本内容,并不支持用户的个性化需求,本发明上述方法实现了对个性化需求的支持,使得所生成的PDF文本更加符合用户期望,有效提高了用户使用体验。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的文本生成设备结构示意图;
图2为本发明文本生成方法第一实施例的流程示意图;
图3为本发明文本生成方法第二实施例的流程示意图;
图4为本发明文本生成方法第三实施例的流程示意图;
图5为本发明文本生成方法第三实施例中页面区域划分示意图;
图6为本发明文本生成方法第三实施例中水印文本内容旋转示意图;
图7为本发明文本生成方法第三实施例中骑缝水印文本内容示意图;
图8为本发明文本生成装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的文本生成设备结构示意图。
如图1所示,该文本生成设备可以包括:处理器1001,例如中央处理器(CentralProcessing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(Wireless-Fidelity,Wi-Fi)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM),也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对文本生成设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及文本生成程序。
在图1所示的文本生成设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明文本生成设备中的处理器1001、存储器1005可以设置在文本生成设备中,所述文本生成设备通过处理器1001调用存储器1005中存储的文本生成程序,并执行本发明实施例提供的文本生成方法。
本发明实施例提供了一种文本生成方法,参照图2,图2为本发明文本生成方法第一实施例的流程示意图。
本实施例中,所述文本生成方法包括以下步骤:
步骤S10:将初始HTML文本转换为符合PDF转换条件的标准HTML文本。
需要说明的是,本实施例方法的执行主体可以是具有文本生成、网络通信以及程序运行功能的计算服务设备,例如手机、平板电脑、个人电脑等,还可以是实现相同或相似功能的其他电子设备。以下以上述文本生成设备对本实施例和下述各实施例进行说明。
可理解的是,上述初始HTML文本可为业务场景中,用户所需转换的HTML文本。
需要说明的是,上述PDF转换条件可为能被上述文本生成设备或系统所识别的条件,可包括使用自闭合标签定义HTML元素以及字体符合系统字体。若上述初始HTML文本未符合PDF转换条件,即上述初始HTML文本未使用自闭合标签定义HTML元素,而是使用开始标签和结束标签定义HTML元素,或上述初始HTML文本中的字体不符合系统字体,则无法将该初始HTML文本转换为PDF文件。
在具体实现中,上述文本生成设备可接收用户输入的初始HTML文本,并对该初始HTML文本进行预处理,将上述初始HTML文本转换为使用自闭合标签定义元素的HTML文本,以及将上述初始HTML文本中文字内容部分的字体转换为系统所支持的字体,即使文字内容部分的字体符合系统字体,从而获得符合PDF转换条件的标准HTML文本。
应理解的是,上述文本生成设备可先对用户输入的初始HTML文本进行判断,判断是否符合上述初始HTML文本是否符合PDF转换条件的标准HTML文本,在符合PDF转换条件时,该初始HTML文本即为标准HTML文本,无需再进行预处理,以提高标准HTML文本转换效率。
步骤S20:判断预设配置信息中是否存在用户基于所需PDF文本设置的个性化配置信息。
需要说明的是,上述预设配置信息可为用户预先设置的自定义属性参数,包括系统默认字体、自定义字体、系统默认页面打印属性以及自定义页面打印属性等默认配置信息和自定义配置信息。
可理解的是,上述个性化配置信息可为用户根据需求进行个性化设置形成的自定义配置信息,通过更新自定义配置信息即可为所需生成的PDF文本添加个性化设置。其中,若用户并未设置上述个性化配置信息,则上述预设配置信息即为默认配置信息,生成的PDF文本使用该默认配置信息。
在具体实现中,上述文本生成设备可响应用户触发的配置更新操作,根据用户输入的配置信息设置上述预设配置信息,若输入的配置信息为默认信息和自定义信息,则生成有默认配置信息和自定义配置信息构成的预设配置信息,若输入的配置信息未包含自定义信息,则生成的预设配置信息即为默认配置信息。在上述预设配置信息配置完成时,加载上述预设配置信息,并遍历所加载的预设配置信息,判断该预设配置信息中是否存在用户基于所需PDF文本设置的个性化配置信息。
步骤S30:若是,则根据所述个性化配置信息对所述标准HTML文本进行设置,获得目标HTML文本。
在具体实现中,上述文本生成设备在检测到上述预设配置信息中存在用户基于所需PDF文本设置的个性化配置信息时,便可根据该个性化配置信息对上述步骤HTML文本进行个性化设置,获得经过个性化设置的目标HTML文本,该目标HTML文本所转换的PDF文本即可具备该个性化配置信息对应的配置。例如,该个性化配置信息为自定义设置的页面大小,该自定义设置的页面大小与默认页面大小不同,在检测到该自定义设置的页面大小时,便可调整上述HTML文本的页面大小为该自定义设置的页面大小,以完成页面大小的个性化设置,相反,若未检测到自定义设置的页面大小,则调整上述HTML文本的页面大小为默认页面大小。
步骤S40:对所述目标HTML文本进行解析,获得目标PDF文本。
在具体实现中,上述文本生成设备可使用HTML转PDF的组件或处理器,如openhtmltopdf对经过个性化配置信息进行个性化设置获得的目标HTML文本进行解析,将目标HTML文本转换为目标PDF文本,使得目标PDF文本具备个性化配置,符合用户需求,从而提高用户的使用体验。
应理解的是,对应未经过个性化设置的HTML文本,则通过默认配置信息调整HTML文本,避免了无法生成PDF文本的情况,从而实现了无论是否存在个性化配置信息均可生成PDF文本,有效提高了文本生成精度。
本实施例通过将初始HTML文本转换为符合PDF转换条件的标准HTML文本;然后判断预设配置信息中是否存在用户基于所需PDF文本设置的个性化配置信息;若是,则根据个性化配置信息对标准HTML文本进行设置,获得目标HTML文本;最后对目标HTML文本进行解析,获得目标PDF文本。本实施例通过个性化配置信息对标准HTML文本进行设置,然后将设置后的目标HTML文本转换为目标PDF文本,相较于现有技术只能模板化的将HTML文本中的各标签转换为PDF形式的文本内容,并不支持用户的个性化需求,本实施例上述方法实现了对个性化需求的支持,使得所生成的PDF文本更加符合用户期望,有效提高了用户使用体验。
参考图3,图3为本发明文本生成方法第二实施例的流程示意图。
基于上述第一实施例,在本实施例中,所述步骤S10包括:
步骤S101:将初始HTML文本解析为闭包HTML文本,并从所述闭包HTML文本中获取包含字体信息的所有文本标签。
需要说明的是,非闭包HTML文本可为使用开始标签和结束标签来定义元素的HTML文本。与非闭包HTML文本对应,上述闭包HTML文本即可为使用自闭合标签来定义元素的HTML文本,无需额外的结束标签。在HTML文本为闭包HTML文本时,方可将HTML文本转换为PDF文本。
可理解的是,上述字体信息可为文本标签中的文本内容信息,包括文字内容部分和字体名称部分,该字体名称部分在HTML中的字体标签可以如下所示:“font-family:XXXXX”和“face:XXXX”,“X”即可为相应字体名称或别名。
在具体实现中,上述文本生成设备可将初始HTML文本解析为jsoup库,通过该jsoup库将初始HTML文本转换为闭包HTML文本。然后使用正则匹配从上述闭包HTML文本中的各标签中筛选出与上述字体标签匹配的所有文本标签。
应理解的是,上述jsoup库是用于解析、操作和处理HTML文档的Java库,也即,需要将HTML文本转换jsoup库才能将HTML文本转换为PDF文本。无论是非闭包HTML文本还是闭包HTML文本均需要解析为jsoup库,而解析完成后,非闭包HTML文本会自动变成闭包HTML文本,闭包HTML文本并不会产生影响,故而上述文本生成设备可以无需判断粗还是HTML文本是否为闭包HTML文本,而是直接对初始HTML文本解析即可实现目的,从而有效提高闭包HTML文本生成的效率。
步骤S102:判断所述文本标签中的各HTML字体是否与系统配置的PDF字体匹配。
需要说明的是,上述系统配置的PDF字体可为用户为系统所配置的自定义字体,该自定义字体可为用户根据需求或不同国家额外添加的字体,若用户并未添加额外的自定义字体,则该系统配置的默认字体。其中,上述系统配置的PDF字体的名称可以是字体本名和别名,并且可以支持多个别名。
在具体实现中,上述文本生成设备可将上述所有文本标签添加至同一集合中,形成字体列表信息集合,然后查询集合中各文本标签的HTML字体,判断各文本标签的字体是否与系统配置的PDF字体匹配。
步骤S103:根据匹配结果将所述闭包HTML文本转换为符合PDF转换条件的标准HTML文本。
在具体实现中,上述文本生成设备可将与系统配置的PDF字体匹配成功的文本标签的字体替换为系统配置的PDF字体,将与系统配置的PDF字体匹配设备的文本标签的字体替换为默认字体。
应理解的是,上述符合PDF转换条件的标准HTML文本即可为闭包,且文本标签的HMTL字体符合系统配置的PDF字体或默认字体的HTML文本。
进一步地,本实施例中,所述步骤S103包括:
步骤S1031:在各所述HTML字体中存在首个HTML字体与所述PDF字体匹配时,将所述HTML字体替换为所述PDF字体,获得符合PDF转换条件的标准HTML文本。
在具体实现中,一个文本标签的HTML字体可由本名加别名构成,且别名可由多个,也即,一个文本标签的HTML字体可由多个HTML字体构成,故而在将文本标签的HTML字体与系统配置的PDF字体进行匹配时,可以将字体标签的各HTML字体依次与系统配置的PDF字体进行匹配,若前一个HTML字体并未与PDF字体匹配,则可将下一个HTML字体与PDF字体匹配,直至出现首个HTML字体与PDF字体匹配,在匹配成功后,即可认定该文本标签的字体与PDF字体匹配,便可将该文本标签的HTML字体替换为PDF字体,从而获得符合PDF转换条件的标准HTML文本。
应理解的是,由于同一文本标签的HTML字体由本名和别名构成,无论是本名还是别名,表示的均是同一字体,区别为文字名称不同。故而,若某一HTML字体与PDF字体不匹配,并不能说明该HTML字体对应的名称与PDF字体对应的名称不一致,也可能是该名称是别名,与PDF字体的名称不一致,但是其他名称可以是一致,故而需要依次将各HTML字体依次与PDF字体匹配,以提高匹配精度。
步骤S1032:在各所述HTML字体均未与所述PDF字体匹配时,将所述HTML字体替换为默认字体,获得符合PDF转换条件的标准HTML文本。
在具体实现中,上述文本生成设备可在同一文本标签的所有HTML字体均未与PDF字体匹配时,判定该文本标签的字体本名或别名均未与系统配置的字体名称一致,也即,并未对该文本标签的字体进行个性化设置,此时,可将该文本标签的HTML字体替换为默认字体,从而获得符合PDF转换条件的标准HTML文本。例如,若某个文本标签的字体属性为font-family:"楷体,fzktk,sans-serif";或者face="楷体,fzktk,sans-serif;"解析后获得字体列表信息为楷体,fzktk,sans-serif,则依次用系统配置的PDF字体的字符集的本名和别名对上述字体进行匹配,若未匹配到第一个字体则顺序匹配后续字体,若所有字体均未匹配到,则将字体属性设置为默认字体;反之,若匹配到第二个字体fzktk字时发现PDF字体中某个字体XX的本名或别名与此字体匹配,则将此字体属性设置为font-family:"XX”,如此往复,直到完成所有文本标签的字体均匹配完成。
本实施例通过将初始HTML文本解析为闭包HTML文本,并从闭包HTML文本中获取包含字体信息的所有文本标签;判断文本标签中的各HTML字体是否与系统配置的PDF字体匹配;根据匹配结果将闭包HTML文本转换为符合PDF转换条件的标准HTML文本。本实施例通过在各HTML字体中存在首个HTML字体与PDF字体匹配时,将HTML字体替换为PDF字体,从而实现了对所需生成的PDF的字体进行个性化设置,有效提高了用户的使用体验。
参考图4,图4为本发明文本生成方法第三实施例的流程示意图。
基于上述各实施例,在本实施例中,所述个性化配置信息包括自定义页面打印属性以及所需添加内容,所述根据所述个性化配置信息对所述标准HTML文本进行设置,获得目标HTML文本的步骤,包括:
步骤S301:根据所述自定义页面打印属性设置所述标准HTML文本的页面信息,获得第一HTML文本。
需要说明的是,上述页面打印属性可为在打印时所设置的属性,包括页面纸张大小、页边距、页面背景颜色等,由于页面打印属性与页面的布局和样式相关,故而可以根据该页面打印属性调整调整PDF文本的布局和样式。相应地,上述自定义页面属性即可为用户根据需求所自定义设置的配置信息。
在具体实现中,由于预设配置信息中存在用户的个性化配置信息,且该更新化配置信息包括上述自定义页面打印属性,故而上述文本生成设备可以根据该自定义页面打印属性设置上述标准HTML文本的页面信息,如页面纸张大小、页边距以及页面背景颜色等信息,从而调整标准HTML文本的布局和样式,进而使后续生成的PDF文本的布局和样式得到调整,经过自定义页面打印属性设置的标准HTML文本即可为上述第一HTML文本。
应理解的是,若预设配置信息中未存在用户的个性化配置信息,或存在上述个性化配置信息但该个性化配置信息不包括上述自定义页面打印属性,则可以使用默认的自定义页面打印属性对上述标准HTML文本进行设置,以避免生成的PDF文本页面布局和样式出现问题。
步骤S302:对所述第一HTML文本的页面区域进行划分,将所述页面区域的预设版心区域之外的部分划分为若干填充区域。
需要说明的是,上述预设版心区域可为用户指定的,页面区域中间部分的矩形区域。
在具体实现中,上述文本生成设备可对上述第一HTML文本的页面区域进行划分,首先确定用户指定的预设版心区域,然后在该预设版心区域之外的上、下、左、右四个区域中分别进行等间隔划分,形成若干填充区域。
为了便于理解,参考图5进行说明,但并不对本方案进行限定。图5为本发明文本生成方法第三实施例中页面区域划分示意图,图5中,版心区为页面区域中间部分的预设版心区域,版心区的上部分区域依次划分为左上角落区、上部左区、上部中区、上部右区以及右上角落区,版心区的下部分区域依次划分为左下角落区、下部左区、下部中区、下部右区以及右下角落区,版心区的左部分区域依次划分为左上区、左中区和左下区,版心区的右部分区域依次划分为右上区、右中区和右下区。其中,也可以通过上述自定义页面打印属性设置各填充区域的样式、页边距和页面背景颜色等属性。
步骤S303:将所述所需添加内容填充至所述填充区域中,获得第二HTML文本。
需要说明的是,上述所需添加内容可为用户根据需求在上述填充区域中需要添加的标签内容,该标签内容分为文本和元素两种类型,且标签内容依然支持诸如大小或字体等CSS属性,该标签内容对外展现的形式可以为页码、文字、图片以及LOGO等。
在具体实现中,当在上述填充区域中填入元素时,可在<head>标签中添加一个class定义,并且在<body>标签中添加对应的标签对象,以完成元素的填入。当在上述填充区域中填入页码时,可以分别使用奇数页面控制语句和偶数页面控制语句对奇数页、偶数页和首页分别进行控制,且奇数页面控制语句和偶数页面控制语句可以同时存在。
步骤S304:判断所述个性化配置信息中是否存在水印配置信息。
需要说明的是,上述水印配置信息可为用户根据需求在PDF文本中生成所需水印的配置信息。
在具体实现中,上述文本生成设备可在完成将所需添加内容填充至填充区域中后,检测上述个性化配置信息是否存在水印配置信息,以避免用户需要在所生成的PDF文本中添加水印,但并未生成水印的情况。
步骤S305:若不存在所述水印配置信息,则将所述第二HTML文本作为目标HTML文本。
在具体实现中,上述文本生成设备在检测到上述个性化配置信息中不存在上述水印配置信息时,便可判定用户无需在所生成的PDF文本中添加水印,此时便可判定上述第二HTML文本符合要求,将上述第二HTML文本作为生成PDF文本的目标HTML文本。
进一步地,本实施例中,所述步骤S304之后,还包括:
步骤S3041:若存在所述水印配置信息,则获取所述水印配置信息中的水印文本内容和旋转角度。
需要说明的是,上述水印文本内容即可为在PDF文本中对应显示的文字内容。
可理解的是,上述旋转精度可为上述水印文本内容偏离初始位置的角度,其中,上述初始位置可为上述水印文本内容在页面区域中,尚未调整的位置。
在具体实现中,上述文本生成设备可在上述个性化配置信息中存在上述水印配置信息时,判定用户需要在所生成的PDF文本中添加水印,此时便可获取上述水印配置信息中的水印文本内容和旋转角度。
步骤S3042:根据所述旋转角度对所述水印文本内容进行旋转,获得待填充水印文本内容。
在具体实现中,上述文本生成设备可根据上述旋转角度对处于初始位置的水印文本内容进行旋转,获得用于填充至页面区域中的待填充水印文本内容。
应理解的是,上述文本生成设备还可以根据上述水印配置信息中的参数信息计算上述水印文本内容在上述初始位置处所占用的像素参数,如长度和宽度,通过该像素参数在上述初始位置处生成上述水印文本内容。相应地,在水印文本内容旋转后,还需计算上述待填充水印文本内容所占用的像素参数,根据该像素参数生成上述待填充水印文本内容。
为了便于理解,参考图6进行说明,但并不对本方案进行限定。图6为本发明文本生成方法第三实施例中水印文本内容旋转示意图,图6中,处于水平位置的水印文字,即左边的水印文字可为水印文本内容,该水印文本内容所占用像素的文字像素宽度为d1,文字像素长度为h1,该水印文字经过旋转角α旋转后,即可获得上述待填充水印文本内容,该旋转后水印文字所占用像素的旋转后像素宽度为d2,旋转后像素长度为h2,该旋转后的水印文字便可以旋转后像素宽度为d2,旋转后像素长度为h2填充至上述页面区域中。
步骤S3043:将所述待填充水印文本内容填充至所述页面区域中,获得目标HTML文本。
在具体实现中,上述文本生成设备可将待填充水印文本内容以所占用的像素参数填充至上述页面区域中,从而获得上述目标HTML文本。其中,上述待填充水印文本内容可以填充至上述填充区域,也可以填充至上述预设版心区域中,也可以填充至整个页面区域中,也可以组合填充,本实施例对此不加以限定。
应理解的是,上述文本生成设备还可支持对水印文本内容中的水印文字、字体、颜色、透明度、旋转角度、拥挤度以及是否骑缝等进行设置,以提高用户的使用体验。
进一步地,本实施例中,所述步骤S3043包括:
从所述水印配置信息中获取水印拥挤度,并通过所述水印拥挤度和所述页面区域的尺寸参数在所述页面区域中确定填充所述待填充水印文本内容的若干水印位置。
需要说明的是,上述水印拥挤度可以为待填充水印文本内容在水平和垂直两个方向上水印的空白重复数,其中,在水平方向上的空白重复数即可为水平拥挤度,在垂直方向上的空白重复数即可为垂直拥挤度。
在具体实现中,上述文本生成设备可以从上述水印配置信息获取水印拥挤度,根据该水印拥挤度确定相邻待填充水印文本内容在页面区域中的间隔距离,然后根据间隔距离和页面区域的尺寸参数(即页面区域的长度和宽度)确定单个页面区域所能容纳的待填充水印文本内容的数目,最后将该所能容纳的待填充水印文本内容的数目对应的文字作为填充所述待填充水印文本内容的若干水印位置。
判断所述水印位置中是否存在延伸至下一页面区域的跨页位置。
在具体实现中,若某一待填充水印文本内容一部分处于当前页面区域,另一部分处于下一页面区域,则可以判定该待填充水印文本内容无法在当前页面区域完整显示,为骑缝水印文本内容。故而上述文本上传设备需要判断水印位置中是否存在延伸至下一页面区域的跨页位置,以针对骑缝水印文本内容做处理。
应理解的是,上述骑缝水印文本内容即可为一部分在前一页面区域,另一部分在后一页面区域,占用了两个页面区域的水印文本内容。
为了便于理解,参考图7进行说明,但并不对本方案进行限定。图7为本发明文本生成方法第三实施例中骑缝水印文本内容示意图,图7中,经过旋转角α旋转后的水印文字为待填充水印文本内容,在水平方向上的水印文字之间的间隔为水平拥挤度,在垂直方向上的水印文字之间的间隔为垂直拥挤度,由于拥挤度加上各水印文字所占用的像素尺寸应当刚好等于页面区域的尺寸,如水平拥挤度加上各水印文字占用的像素长度(水平方向上的长度)应当等于页面区域的长度(水平方向上的长度),基于此便可确定各水印文字在页面区域的水印位置。其中,若拥挤度加上各水印文字所占用的像素尺寸超出页面区域的尺寸,则超出部分的水印文字为骑缝水印,如图中的骑缝水印处于页面分割线上,且一部分在页面区域1,另一部分在页面区域2。
若否,则将所述待填充水印文本内容添加至所述水印位置,获得目标HTML文本。
在具体实现中,上述文本生成设备在检测到上述水印位置中未存在延伸至下一页面区域的跨页位置时,判定待填充水印文本内容中不存在骑缝水印文本内容,便可直接将上述待填充水印文本内容添加至上述水印位置,从而获得目标HTML文本。
进一步地,本实施例中,所述判断所述水印位置中是否存在延伸至下一页面区域的跨页位置的步骤之后,还包括:
若是,则将添加至所述跨页位置中的待填充水印文本内容作为骑缝水印文本内容。
在具体实现中,上述文本生成设备可将上述添加至上述跨页位置,即一部分处于前一页面区域,另一部分处于后一页面区域的待填充水印文本内容作为骑缝水印文本内容。
根据所述跨页位置计算所述骑缝水印文本内容的切割距离,并基于所述切割距离对所述骑缝水印文本内容进行切割,获得第一骑缝水印文本内容和第二骑缝水印文本内容。
需要说明的是,上述切割距离可为对上述骑缝水印进行切割,使骑缝水印一部分处于前一页面区域,另一部分处于后一页面区域的距离。
上述骑缝水印文本内容中平行于分割线的最远部分至页面分割线的垂直距离。如图7所示,切割距离为骑缝水印原理分割线的水平线至页面区域1的页面分割线的垂直长度。
在具体实现中,上述文本生成设备可根据上述骑缝水印文本内容所处的跨页位置确定骑缝水印文本内容中平行于分割线的最远部分至页面分割线的切割距离,并根据该切割距离对上述骑缝水印文本内容进行切割,使处于当前页面区域的部分为第一骑缝水印文本内容,使处于下一页面区域的部分为第二骑缝水印文本内容。
在将所述待填充水印文本内容填充至所述水印位置时,将所述第一骑缝水印文本内容添加至所述跨页位置中处于所述页面区域的部分,将所述第二骑缝水印文本内容添加至所述跨页位置中处于所述下一页面区域的部分,获得目标HTML文本。
在具体实现中,上述文本生成设备在切割完成获得上述第一骑缝水印文本内容和上述第二骑缝水印文本内容之后,便可填充水印文本内容至水印位置,在填充骑缝水印文本内容时,可将上述跨页位置划分为处于当前页面区域的第一部分和处于下一页面区域的第二部分,然后将第一骑缝水印文本内容填充至上述第一部分中,将上述第二骑缝水印文本内容填充至第二部分中,从而完成了水印文本内容和骑缝水印文本内容的填充。
本实施例根据自定义页面打印属性设置标准HTML文本的页面信息,获得第一HTML文本;对第一HTML文本的页面区域进行划分,将页面区域的预设版心区域之外的部分划分为若干填充区域;将所需添加内容填充至所述填充区域中,获得第二HTML文本;若述个性化配置信息中存在水印配置信息,则根据所述旋转角度对水印文本内容进行旋转,获得待填充水印文本内容,将待填充水印文本内容填充至所述页面区域中,获得目标HTML文本。本实施例通过从水印配置信息中获取水印拥挤度,并通过水印拥挤度和页面区域的尺寸参数在页面区域中确定填充待填充水印文本内容的若干水印位置,在水印位置中是存在延伸至下一页面区域的跨页位置时,将添加至跨页位置中的待填充水印文本内容作为骑缝水印文本内容,并对骑缝水印文本内容进行切割,获得第一骑缝水印文本内容和第二骑缝水印文本内容,最后将第一骑缝水印文本内容添加至跨页位置中处于所述页面区域的部分,将第二骑缝水印文本内容添加至所述跨页位置中处于所述下一页面区域的部分,实现了骑缝水印的添加,满足了用户对普通水印和骑缝水印的需求,有效提高了用户的使用体验。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有文本生成程序,所述文本生成程序被处理器执行时实现如上文所述的文本生成方法的步骤。
参照图8,图8为本发明文本生成装置第一实施例的结构框图。
如图8所示,本发明实施例提出的文本生成装置包括:
文本转换模块501,用于将初始HTML文本转换为符合PDF转换条件的标准HTML文本。
配置判断模块502,用于判断预设配置信息中是否存在用户基于所需PDF文本设置的个性化配置信息。
文本设置模块503,若是,则根据所述个性化配置信息对所述标准HTML文本进行设置,获得目标HTML文本。
文本解析模块,用于对所述目标HTML文本进行解析,获得目标PDF文本。
本实施例通过将初始HTML文本转换为符合PDF转换条件的标准HTML文本;然后判断预设配置信息中是否存在用户基于所需PDF文本设置的个性化配置信息;若是,则根据个性化配置信息对标准HTML文本进行设置,获得目标HTML文本;最后对目标HTML文本进行解析,获得目标PDF文本。本实施例通过个性化配置信息对标准HTML文本进行设置,然后将设置后的目标HTML文本转换为目标PDF文本,相较于现有技术只能模板化的将HTML文本中的各标签转换为PDF形式的文本内容,并不支持用户的个性化需求,本实施例上述装置实现了对个性化需求的支持,使得所生成的PDF文本更加符合用户期望,有效提高了用户使用体验。
基于本发明上述文本生成装置第一实施例,提出本发明文本生成装置的第二实施例。
在本实施例中,所述文本转换模块501,还用于将初始HTML文本解析为闭包HTML文本,并从所述闭包HTML文本中获取包含字体信息的所有文本标签;判断所述文本标签中的各HTML字体是否与系统配置的PDF字体匹配;根据匹配结果将所述闭包HTML文本转换为符合PDF转换条件的标准HTML文本。
作为一种实施方式,所述文本转换模块501,还用于在各所述HTML字体中存在首个HTML字体与所述PDF字体匹配时,将所述HTML字体替换为所述PDF字体,获得符合PDF转换条件的标准HTML文本;在各所述HTML字体均未与所述PDF字体匹配时,将所述HTML字体替换为默认字体,获得符合PDF转换条件的标准HTML文本。
基于本发明上述文本生成装置各实施例,提出本发明文本生成装置的第三实施例。
在本实施例中,所述个性化配置信息包括自定义页面打印属性以及所需添加内容,所述文本设置模块503,还用于根据所述自定义页面打印属性设置所述标准HTML文本的页面信息,获得第一HTML文本;对所述第一HTML文本的页面区域进行划分,将所述页面区域的预设版心区域之外的部分划分为若干填充区域;将所述所需添加内容填充至所述填充区域中,获得第二HTML文本;判断所述个性化配置信息中是否存在水印配置信息;若不存在所述水印配置信息,则将所述第二HTML文本作为目标HTML文本。
作为一种实施方式,所述文本设置模块503,还用于若存在所述水印配置信息,则获取所述水印配置信息中的水印文本内容和旋转角度;根据所述旋转角度对所述水印文本内容进行旋转,获得待填充水印文本内容;将所述待填充水印文本内容填充至所述页面区域中,获得目标HTML文本。
作为一种实施方式,所述文本设置模块503,还用于从所述水印配置信息中获取水印拥挤度,并通过所述水印拥挤度和所述页面区域的尺寸参数在所述页面区域中确定填充所述待填充水印文本内容的若干水印位置;判断所述水印位置中是否存在延伸至下一页面区域的跨页位置;若否,则将所述待填充水印文本内容添加至所述水印位置,获得目标HTML文本。
作为一种实施方式,所述文本设置模块503,还用于若是,则将添加至所述跨页位置中的待填充水印文本内容作为骑缝水印文本内容;根据所述跨页位置计算所述骑缝水印文本内容的切割距离,并基于所述切割距离对所述骑缝水印文本内容进行切割,获得第一骑缝水印文本内容和第二骑缝水印文本内容;在将所述待填充水印文本内容填充至所述水印位置时,将所述第一骑缝水印文本内容添加至所述跨页位置中处于所述页面区域的部分,将所述第二骑缝水印文本内容添加至所述跨页位置中处于所述下一页面区域的部分,获得目标HTML文本。
本发明文本生成装置的具体实现方式可参照上述各方法实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器/随机存取存储器、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种文本生成方法,其特征在于,所述文本生成方法包括以下步骤:
将初始HTML文本转换为符合PDF转换条件的标准HTML文本;
判断预设配置信息中是否存在用户基于所需PDF文本设置的个性化配置信息;
若是,则根据所述个性化配置信息对所述标准HTML文本进行设置,获得目标HTML文本;
对所述目标HTML文本进行解析,获得目标PDF文本。
2.如权利要求1所述的文本生成方法,其特征在于,所述将初始HTML文本转换为符合PDF转换条件的标准HTML文本的步骤,包括:
将初始HTML文本解析为闭包HTML文本,并从所述闭包HTML文本中获取包含字体信息的所有文本标签;
判断所述文本标签中的各HTML字体是否与系统配置的PDF字体匹配;
根据匹配结果将所述闭包HTML文本转换为符合PDF转换条件的标准HTML文本。
3.如权利要求2所述的文本生成方法,其特征在于,所述根据匹配结果将所述闭包HTML文本转换为符合PDF转换条件的标准HTML文本的步骤,包括:
在各所述HTML字体中存在首个HTML字体与所述PDF字体匹配时,将所述HTML字体替换为所述PDF字体,获得符合PDF转换条件的标准HTML文本;
在各所述HTML字体均未与所述PDF字体匹配时,将所述HTML字体替换为默认字体,获得符合PDF转换条件的标准HTML文本。
4.如权利要求1至3任一项所述的文本生成方法,其特征在于,所述个性化配置信息包括自定义页面打印属性以及所需添加内容,所述根据所述个性化配置信息对所述标准HTML文本进行设置,获得目标HTML文本的步骤,包括:
根据所述自定义页面打印属性设置所述标准HTML文本的页面信息,获得第一HTML文本;
对所述第一HTML文本的页面区域进行划分,将所述页面区域的预设版心区域之外的部分划分为若干填充区域;
将所述所需添加内容填充至所述填充区域中,获得第二HTML文本;
判断所述个性化配置信息中是否存在水印配置信息;
若不存在所述水印配置信息,则将所述第二HTML文本作为目标HTML文本。
5.如权利要求4所述的文本生成方法,其特征在于,所述判断所述个性化配置信息中是否存在水印配置信息的步骤之后,还包括:
若存在所述水印配置信息,则获取所述水印配置信息中的水印文本内容和旋转角度;
根据所述旋转角度对所述水印文本内容进行旋转,获得待填充水印文本内容;
将所述待填充水印文本内容填充至所述页面区域中,获得目标HTML文本。
6.如权利要求5所述的文本生成方法,其特征在于,所述将所述待填充水印文本内容填充至所述页面区域中,获得目标HTML文本的步骤,包括:
从所述水印配置信息中获取水印拥挤度,并通过所述水印拥挤度和所述页面区域的尺寸参数在所述页面区域中确定填充所述待填充水印文本内容的若干水印位置;
判断所述水印位置中是否存在延伸至下一页面区域的跨页位置;
若否,则将所述待填充水印文本内容添加至所述水印位置,获得目标HTML文本。
7.如权利要求6所述的文本生成方法,其特征在于,所述判断所述水印位置中是否存在延伸至下一页面区域的跨页位置的步骤之后,还包括:
若是,则将添加至所述跨页位置中的待填充水印文本内容作为骑缝水印文本内容;
根据所述跨页位置计算所述骑缝水印文本内容的切割距离,并基于所述切割距离对所述骑缝水印文本内容进行切割,获得第一骑缝水印文本内容和第二骑缝水印文本内容;
在将所述待填充水印文本内容填充至所述水印位置时,将所述第一骑缝水印文本内容添加至所述跨页位置中处于所述页面区域的部分,将所述第二骑缝水印文本内容添加至所述跨页位置中处于所述下一页面区域的部分,获得目标HTML文本。
8.一种文本生成装置,其特征在于,所述文本生成装置包括:
文本转换模块,用于将初始HTML文本转换为符合PDF转换条件的标准HTML文本;
配置判断模块,用于判断预设配置信息中是否存在用户基于所需PDF文本设置的个性化配置信息;
文本设置模块,若是,则根据所述个性化配置信息对所述标准HTML文本进行设置,获得目标HTML文本;
文本解析模块,用于对所述目标HTML文本进行解析,获得目标PDF文本。
9.一种文本生成设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的文本生成程序,所述文本生成程序配置为实现如权利要求1至7中任一项所述的文本生成方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有文本生成程序,所述文本生成程序被处理器执行时实现如权利要求1至7任一项所述的文本生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310927094.6A CN116956834A (zh) | 2023-07-25 | 2023-07-25 | 文本生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310927094.6A CN116956834A (zh) | 2023-07-25 | 2023-07-25 | 文本生成方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116956834A true CN116956834A (zh) | 2023-10-27 |
Family
ID=88447302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310927094.6A Pending CN116956834A (zh) | 2023-07-25 | 2023-07-25 | 文本生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116956834A (zh) |
-
2023
- 2023-07-25 CN CN202310927094.6A patent/CN116956834A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8707164B2 (en) | Integrated document viewer | |
JP4497432B2 (ja) | レイアウトサービスライブラリを用いたグリフの描画方法 | |
US7949942B2 (en) | System and method for identifying line breaks | |
JP4344693B2 (ja) | ブラウザの文書編集のためのシステムおよびその方法 | |
CN100356372C (zh) | 计算机版式文件生成方法和打开方法 | |
US20050216836A1 (en) | Electronic document processing | |
CN107943426B (zh) | 单据分页打印方法、单据分页打印系统及计算机装置 | |
US20040088657A1 (en) | Method for selecting a font | |
US20070055931A1 (en) | Document data output device capable of appropriately outputting document data containing a text and layout information | |
US10902193B2 (en) | Automated generation of web forms using fillable electronic documents | |
JP2002507301A (ja) | レイアウトサービスライブラリを用いたパラグラフのレイアウト方法 | |
CN109933751B (zh) | 图文绘制方法、装置、计算机可读存储介质和计算机设备 | |
CA3155636C (en) | Dynamic typesetting | |
US9886426B1 (en) | Methods and apparatus for generating an efficient SVG file | |
Krause | Introducing Bootstrap 4 | |
KR20200058754A (ko) | Svg 포맷을 이용한 폰트 편집 방법, 시스템 및 컴퓨터 판독 가능한 기록매체 | |
CN116956834A (zh) | 文本生成方法、装置、设备及存储介质 | |
CN115686492A (zh) | H5页面编辑方法及装置 | |
AU2003255777A1 (en) | Electronic document processing | |
CN113703699B (zh) | 电子文件的实时输出方法和装置 | |
JP7003457B2 (ja) | 文書再構成装置 | |
CN114548036A (zh) | 基于画布技术的智能报告生成方法、装置、设备与介质 | |
JP2023180802A (ja) | 出力用文書又は出力用画像の審査を支援するための情報処理装置、方法、プログラム、及び情報処理システム |
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 |