本发明涉及气象预报,尤其是涉及一种基于bs框架的文档实时制作方法、装置、设备及介质。
背景技术:
1、在气象业务扩展过程中,bs系统已能够实现对图片、表格等业务产品的高效查询与利用,确保业务流程的顺畅性。但文档的制作往往是作为一个系统业务的最终目的,作为集成业务信息的最终展现形式。在文档制作上,一些系统采用的定时的方式生成文档,该方式只能满足固定内容的文档需求。所以实时在线的文档制作是必不可少的。当前存在两种方式来实现。一是将文档格式、排版、样式固定,系统中只针对文字进行替换。二是采用第三方的插件来实现。
2、目前业务常见的实现方式都有其弊端。采用固定文档格式并只对其中文字进行替换的方法虽然简单易操作,却无法提供动态的实时编辑体验,因为它不支持所见即所得的文档交互制作。这种方法可能适用于那些结构不变,仅需要更新文本内容的文档,但不够灵活以应对更复杂的格式或内容调整需求。而第三方插件尽管可以提供在线实时编辑和所见即所得的体验,满足更多样化的编辑需求,但非开源的特性确实限制了开发者按需调整和定制化功能的能力。这一制约因素在业务需求频繁变化的情况下显得尤为重要,在多数情况下不能如自研的功能一样和业务紧密关联。另外,由于绝大多数第三方插件需要付费使用,这不仅增加了企业的成本负担,还可能导致对供应商的依赖性增加,如果供应商更改价格策略或终止服务,可能会给业务带来风险。
技术实现思路
1、有鉴于此,本发明的目的在于提供一种基于bs框架的文档实时制作方法、装置、设备及介质,可以灵活应对更复杂的格式或内容调整需求,还可以紧密地和业务结合,从而降低对第三方插件的依赖性。
2、第一方面,本发明实施例提供了一种基于bs框架的文档实时制作方法,应用于文档实时制作系统,所述文档实时制作系统的前端采用富文本编辑器,所述富文本编辑器配置有文档编辑区域和数据选择区域,后端采用docx4j处理库,所述方法包括:
3、通过所述富文本编辑器,从所述数据选择区域内提供的数据中确定待编辑数据,并响应针对于所述文档编辑区域内显示的所述待编辑数据的编辑操作,以生成初始文档数据;其中,所述数据选择区域提供的数据包括材料模板、材料数据、实况数据、预报专题产品数据中的一种或多种;
4、通过docx4j处理库,根据元素与自定义实体之间的映射关系、自定义实体与docx4j实体之间的映射关系,将所述初始文档数据中包含的元素转换为目标docx4j实体,并基于所述目标docx4j实体生成目标文档数据。
5、在一种实施方式中,通过所述富文本编辑器,从所述数据选择区域内提供的数据中确定待编辑数据,并响应针对于所述文档编辑区域内显示的所述待编辑数据的编辑操作,以生成初始文档数据的步骤,包括:
6、响应针对于所述数据选择区域内提供的数据的查询操作,以确定待编辑数据;
7、通过所述文档编辑区域显示编辑控件和待编辑数据;
8、响应针对于所述编辑控件的操作,以对所述文档编辑区域内显示的所述待编辑数据进行编辑,得到初始文档数据;其中,所述初始文档数据采用html格式存储。
9、在一种实施方式中,响应针对于所述数据选择区域内提供的数据的查询操作,以确定待编辑数据的步骤,包括:
10、以当前时间信息和/或气象实况数据为查询条件,从所述数据选择区域内提供的数据中筛选出待编辑数据。
11、在一种实施方式中,根据元素与自定义实体之间的映射关系、自定义实体与docx4j实体之间的映射关系,将所述初始文档数据中包含的元素转换为目标docx4j实体的步骤,包括:
12、根据元素与自定义实体之间的映射关系,将所述初始文档数据包含的元素及所述元素对应的属性信息,转换为目标自定义实体;
13、根据自定义实体与docx4j实体之间的映射关系,将所述目标自定义实体转换为目标docx4j实体。
14、在一种实施方式中,在根据元素与自定义实体之间的映射关系,将所述初始文档数据包含的元素及所述元素对应的属性信息,转换为目标自定义实体的步骤之前,所述方法还包括:
15、建立htmltodocment实体作为html解析器,通过所述html解析器对所述初始文档数据进行拆解,以得到所述初始文档数据包含的元素及所述元素对应的属性信息。
16、在一种实施方式中,所述目标docx4j实体包括p段落对象,所述p段落对象用于描述段落、段落的属性信息、段落包含的文本内容、文本内容的属性信息中的一种或多种。
17、在一种实施方式中,所述目标docx4j实体包括pict图形对象,所述pict图形对象用于描述图形元素的属性信息、文本描述信息、超链接信息、缩放比例、透明度中的一种或多种。
18、第二方面,本发明实施例还提供一种基于bs框架的文档实时制作装置,应用于文档实时制作系统,所述文档实时制作系统的前端采用富文本编辑器,所述富文本编辑器配置有文档编辑区域和数据选择区域,后端采用docx4j处理库,所述装置包括:
19、富文本编辑模块,用于通过所述富文本编辑器,从所述数据选择区域内提供的数据中确定待编辑数据,并响应针对于所述文档编辑区域内显示的所述待编辑数据的编辑操作,以生成初始文档数据;其中,所述数据选择区域提供的数据包括材料模板、材料数据、实况数据、预报专题产品数据中的一种或多种;
20、文档生成模块,用于通过docx4j处理库,根据元素与自定义实体之间的映射关系、自定义实体与docx4j实体之间的映射关系,将所述初始文档数据中包含的元素转换为目标docx4j实体,并基于所述目标docx4j实体生成目标文档数据。
21、第三方面,本发明实施例还提供一种电子设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现第一方面提供的任一项所述的方法。
22、第四方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现第一方面提供的任一项所述的方法。
23、本发明实施例提供的一种基于bs框架的文档实时制作方法、装置、设备及介质,应用于文档实时制作系统,文档实时制作系统的前端采用富文本编辑器,富文本编辑器配置有文档编辑区域和数据选择区域,后端采用docx4j处理库,首先通过富文本编辑器,从数据选择区域内提供的数据中确定待编辑数据,并响应针对于文档编辑区域内显示的待编辑数据的编辑操作,以生成初始文档数据,数据选择区域提供的数据包括材料模板、材料数据、实况数据、预报专题产品数据中的一种或多种;然后通过docx4j处理库,根据元素与自定义实体之间的映射关系、自定义实体与docx4j实体之间的映射关系,将初始文档数据中包含的元素转换为目标docx4j实体,并基于目标docx4j实体生成目标文档数据。上述方法前端采用富文本编辑器,后端采用docx4j处理库,通过将分属于前后段不同语言的技术串联,实现所见即所得的实时在线文档制作功能,本发明实施例在面对复杂多变的业务需求时,具有更强的适应性和可操作性,从而灵活应对更复杂的格式或内容调整需求,此外还可以紧密地和业务结合,进而降低对第三方插件的依赖性。
24、本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
25、为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
1.一种基于bs框架的文档实时制作方法,其特征在于,应用于文档实时制作系统,所述文档实时制作系统的前端采用富文本编辑器,所述富文本编辑器配置有文档编辑区域和数据选择区域,后端采用docx4j处理库,所述方法包括:
2.根据权利要求1所述的基于bs框架的文档实时制作方法,其特征在于,通过所述富文本编辑器,从所述数据选择区域内提供的数据中确定待编辑数据,并响应针对于所述文档编辑区域内显示的所述待编辑数据的编辑操作,以生成初始文档数据的步骤,包括:
3.根据权利要求2所述的基于bs框架的文档实时制作方法,其特征在于,响应针对于所述数据选择区域内提供的数据的查询操作,以确定待编辑数据的步骤,包括:
4.根据权利要求1所述的基于bs框架的文档实时制作方法,其特征在于,根据元素与自定义实体之间的映射关系、自定义实体与docx4j实体之间的映射关系,将所述初始文档数据中包含的元素转换为目标docx4j实体的步骤,包括:
5.根据权利要求1所述的基于bs框架的文档实时制作方法,其特征在于,在根据元素与自定义实体之间的映射关系,将所述初始文档数据包含的元素及所述元素对应的属性信息,转换为目标自定义实体的步骤之前,所述方法还包括:
6.根据权利要求4所述的基于bs框架的文档实时制作方法,其特征在于,所述目标docx4j实体包括p段落对象,所述p段落对象用于描述段落、段落的属性信息、段落包含的文本内容、文本内容的属性信息中的一种或多种。
7.根据权利要求4所述的基于bs框架的文档实时制作方法,其特征在于,所述目标docx4j实体包括pict图形对象,所述pict图形对象用于描述图形元素的属性信息、文本描述信息、超链接信息、缩放比例、透明度中的一种或多种。
8.一种基于bs框架的文档实时制作装置,其特征在于,应用于文档实时制作系统,所述文档实时制作系统的前端采用富文本编辑器,所述富文本编辑器配置有文档编辑区域和数据选择区域,后端采用docx4j处理库,所述装置包括:
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现权利要求1至7任一项所述的方法。
