富文本跨平台显示方法、装置、设备和存储介质与流程
未命名
10-18
阅读:116
评论:0
1.本发明涉及金融科技技术领域,尤其涉及富文本跨平台显示方法、装置、设备和存储介质。
背景技术:
2.目前,互联网上大部分内容都属于富文本信息,富文本信息的承载方式大多是网页的html格式文档。富文本信息显示技术在金融科技场景中也有着广泛的应用,例如在金融科技服务中,富文本技术可以用于财经资讯的展示和呈现;或者金融科技企业使用富文本技术更好地呈现财报、市场报告、数据图表等数据,使其更加生动、直观和易于理解;或者在金融科技场景中,富文本技术也可以被用于开发各种交互式金融工具,如投资模拟器、风险测评等。相关技术中,如果要将网页格式承载的富文本信息在手机端直接显示,多是采用文本控件展示。但是文本控件对html格式中标签或者样式都是直接将其作为文本信息进行展示,导致用户阅读体验较差。
技术实现要素:
3.本技术实施例的主要目的在于提出富文本跨平台显示方法、装置、设备和存储介质,能够适应性调整富文本信息的显示内容,提升显示渲染效果。
4.为实现上述目的,本技术实施例的第一方面提出了一种富文本跨平台显示方法,包括:
5.获取第一设备的富文本显示数据,所述富文本显示数据包括至少一个节点数据;
6.从至少一个所述节点数据中进行节点信息提取,得到节点信息序列,所述节点信息序列包括第一显示信息;
7.基于预设映射表对所述第一显示信息进行标签映射,得到第二显示信息,所述第二显示信息的数量与所述第一显示信息的数量相同,所述第二显示信息包括第一样式;
8.基于预设样式替换表将所述第一样式替换成第二样式,得到第三显示信息;
9.获取第二设备的设备显示信息;
10.基于所述设备显示信息,在所述第二设备上显示所述第三显示信息。
11.在一实施例,所述获取第一设备的富文本显示数据,包括:
12.获取所述第一设备的第一原始数据;
13.对所述第一原始数据进行解析,得到所述第一原始数据的节点结构,所述节点结构包括多个节点;
14.基于所述节点结构得到每个节点的所述节点数据;
15.根据所述节点数据得到所述富文本显示数据。
16.在一实施例,所述从至少一个所述节点数据中进行节点信息提取,得到节点信息序列,包括:
17.从所述节点结构中获取每个节点的节点位置;
‑‑
谁的位置
18.基于所述节点位置生成所述节点的显示次序;
19.按照所述显示次序依次获取所述节点数据构成所述节点信息序列。
20.在一实施例,所述基于预设映射表对每个所述第一显示信息进行标签映射,得到第二显示信息之前,所述方法还包括:
21.获取至少一个显示类别的显示配置信息,所述显示配置信息与所述第二设备对应;
22.基于所述显示配置信息生成所述显示类别的所述预设映射表和所述预设样式替换表。
23.在一实施例,所述基于预设映射表对所述第一显示信息进行标签映射,得到第二显示信息,包括:
24.获取每个所述第一显示信息的标签信息;
25.根据所述标签信息在所述预设映射表中查找得到映射标签;
26.根据所述映射标签对所述第一显示信息进行更新,得到所述第二显示信息。
27.在一实施例,所述基于预设样式替换表将所述第二显示信息的所述第一样式替换成第二样式,得到第三显示信息,包括:
28.获取每个所述第二显示信息的所述第一样式;
29.根据所述第一样式在所述预设样式替换表中查找得到映射样式;
30.根据所述映射样式对所述第二显示信息进行更新,得到所述第三显示信息。
31.在一实施例,所述设备显示信息包括动态显示函数;所述基于所述设备显示信息,在所述第二设备上显示所述第三显示信息,包括:
32.获取所述第三显示信息中的显示参数;
33.基于所述显示参数选取动态显示函数;
34.利用所述动态显示函数在所述第二设备上显示所述第三显示信息。
35.为实现上述目的,本技术实施例的第二方面提出了一种富文本跨平台显示装置,包括:
36.第一获取单元,用于获取第一设备的富文本显示数据,所述富文本显示数据包括至少一个节点数据;
37.第一显示信息获取单元,用于从至少一个所述节点数据中进行节点信息提取,得到节点信息序列,所述节点信息序列包括第一显示信息;
38.标签映射单元,用于基于预设映射表对所述第一显示信息进行标签映射,得到第二显示信息,所述第二显示信息的数量与所述第一显示信息的数量相同,所述第二显示信息包括第一样式;
39.样式映射单元,用于基于预设样式替换表将所述第一样式替换成第二样式,得到第三显示信息;
40.第二获取单元,用于获取第二设备的设备显示信息;
41.显示单元,用于基于所述设备显示信息,在所述第二设备上显示所述第三显示信息。
42.为实现上述目的,本技术实施例的第三方面提出了一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时
实现上述第一方面所述的方法。
43.为实现上述目的,本技术实施例的第四方面提出了一种存储介质,所述存储介质为计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的方法。
44.本技术实施例提出的富文本跨平台显示方法、装置、设备和存储介质,通过获取第一设备的富文本显示数据,其中,获取第一设备的富文本显示数据,富文本显示数据包括至少一个节点数据;从至少一个节点数据中进行节点信息提取,得到节点信息序列,节点信息序列包括第一显示信息;基于预设映射表对第一显示信息进行标签映射,得到第二显示信息,第二显示信息的数量与第一显示信息的数量相同,第二显示信息包括第一样式;基于预设样式替换表将第一样式替换成第二样式,得到第三显示信息;获取第二设备的设备显示信息;基于设备显示信息,在第二设备上显示第三显示信息。本技术实施例通过预设映射表和预设样式替换表对富文本显示数据进行标签映射和样式替换,然后实时根据第二设备的设备显示信息,对该富文本显示数据进行第二设备侧的适配显示,能够扩展富文本显示的应用范围,同时提升第二设备测的富文本显示兼容性。
附图说明
45.图1是本发明实施例提供的富文本跨平台显示方法的流程图。
46.图2是图1中的步骤s110的流程图。
47.图3是本发明实施例提供的富文本跨平台显示方法的节点结构示意图。
48.图4是图1中的步骤s120的流程图。
49.图5是本发明实施例提供的富文本跨平台显示方法的预先设定预设映射表和预设样式替换表的流程图。
50.图6是图1中的步骤s130的流程图。
51.图7是图1中的步骤s140的流程图。
52.图8是图1中的步骤s160的流程图。
53.图9是本发明又一实施例提供的富文本跨平台显示方法的流程图。
54.图10是本发明又一实施例提供的富文本跨平台显示装置结构框图。
55.图11是本发明实施例提供的电子设备的硬件结构示意图。
具体实施方式
56.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
57.需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。
58.除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
59.首先,对本发明中涉及的若干名词进行解析:
60.富文本格式(rich text format,rtf):又称多文本格式,是由微软公司开发的跨平台文档格式。大多数的文字处理软件都能读取和保存rtf文档。富文本格式是一种方便于不同的设备、系统查看的文本和图形文档格式。
61.react native(rn):是一种应用较为广泛的客户端应用模块开发技术框架,可以用于开发跨ios以及android平台的不同版本移动端应用模块。在开发过程中,为了提高效率,可以将rn页面转换为超级文本标记语言(hyper text ma rkup language,html)页面,实现ios、android以及html三端跨平台统一开发。
62.javascript(js):是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。javascript是一种基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式、声明式、函数式编程范式。
63.json(javascript object notation,json):js对象简谱,是一种轻量级的数据交换格式,采用完全独立于编程语言的文本格式来存储和表示数据。json数据格式具有简洁和清晰的层次结构,易于阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
64.层叠样式表(cascading style sheets,css):是一种用来表现html(标准通用标记语言的一个应用)或xml(标准通用标记语言的一个子集)等文件样式的计算机语言。css可以静态地修饰网页,也可以配合各种脚本语言动态地对网页各元素进行格式化。
65.目前,互联网上大部分内容都属于富文本信息,富文本信息的承载方式大多是网页的html格式文档。html格式文档中包含标签,例如《p》标签,《p》标题《/p》,还包括css样式,例如换行、加粗、颜色等样式设置。
66.相关技术中,如果要将网页格式承载的富文本信息在手机端直接显示,多是采用文本控件展示。但是文本控件对html格式中标签或者样式都是直接将其作为文本信息进行展示,导致用户阅读体验较差。例如一部分文本控件直接使用手机系统的web容器(类似于浏览器)对富文本信息进行展示,但是因为html格式的富文本信息中不包含js,因此直接利用web容器进行展示,面临的问题是无法进行手机端适配或者适配效果差。另外一部分文本控件直接将对应的标签去除,使用纯文本展示,但是因为没有充分利用html格式中包含的例如换行、加粗、字体颜色等多种样式,直接显示纯文字造成显示效果差,降低用户体验。
67.基于此,本发明实施例提供一种富文本跨平台显示方法、装置、设备和存储介质,通过预设映射表和预设样式替换表对富文本显示数据进行标签映射和样式替换,然后实时根据第二设备的设备显示信息,对该富文本显示数据进行第二设备侧的适配显示,能够扩展富文本显示的应用范围,同时提升第二设备测的富文本显示兼容性。
68.本发明实施例提供富文本跨平台显示方法、装置、设备和存储介质,具体通过如下实施例进行说明,首先描述本发明实施例中的富文本跨平台显示方法。
69.本发明实施例提供的富文本跨平台显示方法,涉及金融科技技术领域。本发明实施例提供的富文本跨平台显示方法可应用于终端中,还可以是运行于终端的计算机程序。举例来说,计算机程序可以是操作系统中的原生程序或软件模块;可以是本地(native)应用程序(app,application),即需要在操作系统中安装才能运行的程序,如支持富文本显示的客户端,也可以是小程序,即只需要下载到浏览器环境中就可以运行的程序;还可以是能
够嵌入至任意app中的小程序。总而言之,上述计算机程序可以是任意形式的应用程序、模块或插件。其中,终端通过网络与服务器进行通信。该富文本跨平台显示方法可以由终端或服务器执行,或由终端和服务器协同执行。
70.在一些实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机或者智能手表等。此外,终端还可以是智能车载设备。该智能车载设备应用本实施例的富文本跨平台显示方法提供相关的服务,提升驾驶体验。服务器上可以安装富文本显示系统的服务端,通过该服务端可以与终端进行交互,例如服务端上安装对应的软件,软件可以是实现富文本跨平台显示方法的应用等,但并不局限于以上形式。终端与服务器之间可以通过蓝牙、usb(universal serial bus,通用串行总线)或者网络等通讯连接方式进行连接,本实施例在此不做限制。
71.本发明可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
72.为了便于理解本技术实施例,下面首先结合具体应用场景的例子对本实施例富文本显示的概念进行简单介绍。
73.在一应用场景中:需要将网页版的网页信息在手机端进行显示,因此先获取网页信息,该网页信息是一个富文本显示数据,格式为html格式。根据手机端的设备信息将该富文本信息进行显示,使得用户在手机端能够得到较好的观看体验。
74.下面首先描述本发明实施例中的富文本跨平台显示方法。
75.图1是本发明实施例提供的富文本跨平台显示方法的一个可选的流程图,图1中的方法可以包括但不限于包括步骤s110至步骤s160。同时可以理解的是,本实施例对图1中步骤s110至步骤s160的顺序不做具体限定,可以根据实际需求调整步骤顺序或者减少、增加某些步骤。
76.步骤s110:获取第一设备的富文本显示数据。
77.在一实施例中,第一设备可以是用于承载网页的终端设备,例如电脑、平板等设备,这里的富文本显示数据不是必须在第一设备上显示,只需要该富文本显示数据是按照第一设备的显示参数设定的即可,本实施例不限定其是否已经或者将要在第一设备上显示。
78.在一实施例中,富文本显示数据是html格式数据,该富文本显示数据包括至少一个节点数据。
79.在一实施例中,参照图2,是一实施例示出的步骤s110的一种具体实现流程图,在本实施例中获取第一设备的富文本显示数据的步骤s110,包括:
80.步骤s111:获取第一设备的第一原始数据。
81.在一实施例中,第一原始数据为html原生数据,其中包含标签和css样式信息。
82.步骤s112:对第一原始数据进行解析,得到第一原始数据的节点结构。
83.在一实施例中,步骤s112利用htmlparse2解析器对第一原始数据进行解析得到第一原始数据的节点结构,节点结构包括多个节点。本实施例中第一原始数据的节点结构为文档对象模型(document object model,dom)树结构。该树结构包括多个节点数据,不同的节点数据之间存在关联,例如一些节点数据为子节点,一些节点数据为父节点,还存在根节点。
84.htmlparse2解析器是一种html解析器,能够将html数据转化为dom树结构,dom树结构能够用来反映html数据的基本信息,树结构中包括多个节点数据,每个节点数据使用标签(tag)、属性(attribute)和文本(text)三个值来描述。
85.例如第一原始数据表示为:
[0086][0087][0088]
html标签是html语言的基本单位,html标签构建网页的基本结构。html格式的标签包括:带有标签体的标签,例如《p》xxx《/p》等;或者不带标签体的标签(例如自结束标签),例如《br/》、《hr/》等。
[0089]
参照图3,为上述示例的第一原始数据的节点结构示意图。图中第一原始数据包括:根节点《html》,根节点《html》包括两个子节点,分别是子节点《head》和子节点《body》。具体的,子节点《head》还包括:子节点《title》,子节点《title》对应的内容是文本:“实施例”。子节点《body》还包括第一分支节点《div》、第二分支节点《div》、第三分支节点《div》和节点《p》。
[0090]
其中,第一分支节点《div》包括:第一节点《span》和第二节点《span》,第一节点《span》包含文本信息:“活动类型:”,还包含属性信息:“font-weight:bold”,第二节点《span》包含文本信息:“课程”。
[0091]
第二分支节点《div》包括:第三节点《span》和第四节点《span》,第三节点《span》包含文本信息:“活动日期:”,还包含属性信息:“font-weight:bold”,第四节点《span》包含文
本信息:“2022.09.01”。
[0092]
第三分支节点《div》包括:第五节点《span》和第六节点《span》,第五节点《span》包含文本信息:“活动地点:”,还包含属性信息:“font-weight:bold”,第六节点《span》包含文本信息:“xxx街001号”。
[0093]
第四分支的节点《p》包括:第七节点《span》和第八节点《span》,第七节点《span》包含文本信息:“活动介绍:”,还包含属性信息:“font-weight:bold”,第八节点《span》包含文本信息:“xxxx”。
[0094]
上述示例中的:《html》、《span》、《div》、《p》、《title》、《head》和《body》等都是html格式的标签信息。
[0095]
由上述可知,通过第一原始数据的节点结构能够得到每个节点的标签信息、属性信息和文本信息,其中属性信息即css样式信息。
[0096]
步骤s113:基于节点结构得到每个节点数据。
[0097]
在一实施例中,参照图3,根据上述节点结构能够得到每个节点的节点数据,其中节点数据包括:标签信息、属性信息和文本信息三个值和动态交互信息。
[0098]
步骤s114:根据节点数据得到富文本显示数据。
[0099]
在一实施例中,将上述得到的每个节点的节点数据汇总,得到第一设备的第一原始数据对应的富文本显示数据。
[0100]
在一实施例中,上述步骤得到的富文本显示数据是json数组格式数据。json数组在中括号中书写,中括号[]保存的数组是值的有序集合。一个json数组以左中括号“[”开始,右中括号“]”结束,不同值之间使用逗号“,”分隔,json中数组值必须是合法的json数据类型,例如是字符串、数字、对象、数组、布尔值或null值。在javascript中,数组值可以是以上的json数据类型,也可以是javascript的表达式,包括函数,日期及undefined类型数值。
[0101]
步骤s120:从至少一个节点数据中进行节点信息提取,得到节点信息序列。
[0102]
在一实施例中,节点信息序列包括至少一个第一显示信息。上述的节点数据中包含标签信息、属性信息和文本信息三个值和动态交互信息,将每个节点数据中的标签信息、属性信息和文本信息三个值和动态交互信息提取出来得到节点信息序列。
[0103]
在一实施例中,参照图4,是一实施例示出的步骤s120的一种具体实现流程图,在本实施例中从节点数据中获取节点信息序列的步骤s120,包括:
[0104]
步骤s121:从节点结构中获取每个节点的节点位置。
[0105]
在一实施例中,节点位置可以是该节点在整个节点结构中的位置,包括该节点的父节点和子节点。例如,根节点《html》,根节点《html》包括两个子节点,分别是子节点《head》和子节点《body》。具体的,子节点《head》还包括:子节点《title》,子节点《title》对应的内容是文本:“实施例”。子节点《body》还包括三个子节点《div》和一个节点《p》。
[0106]
根节点《html》包括两个子节点,分别是子节点《head》和子节点《body》,子节点《head》包括子节点《title》,因此子节点《head》的父节点是根节点《html》,子节点《head》的子节点是子节点《title》。以此类推得到每个节点结构的节点位置。可以理解的是根节点没有父节点,部分子节点不存在子节点。
[0107]
步骤s122:基于节点位置生成节点的显示次序。
[0108]
在一实施例中,因为有些节点是存在嵌套关系的,父节点里面有可能会定义子节
点的属性信息,例如是横向排列或竖向排列,因此需要基于节点位置生成显示次序,按照显示次序得知,下一个节点是横向排列,则需要把下一个节点放到上一个节点后面。
[0109]
在一实施例中,根据节点结构的节点位置生成显示次序,这里的显示次序是显示过程中每个节点的显示顺序。例如,参照图3,根节点《html》包括两个子节点,分别是子节点《head》和子节点《body》,子节点《head》还包括:子节点《title》,子节点《body》包括三个子节点《div》和一个节点《p》,分别是:第一分支节点《div》、第二分支节点《div》、第三分支节点《div》和第四分支的子节点《div》。按照节点位置生成的显示次序是:1)根节点《html》;2)子节点《head》;3)子节点《title》;4)子节点《body》;5)第一分支节点《div》;6)第二分支节点《div》;7)第三分支节点《div》;8)第四分支的节点《p》。
[0110]
步骤s123:按照显示次序依次获取节点数据构成节点信息序列。
[0111]
在一实施例中,按照显示次序对每个节点数据的节点信息序列进行获取,由于是将每个节点数据中的标签信息、属性信息和文本信息三个值和动态交互信息提取出来得到节点信息序列,因此可以理解的是,每个节点的节点信息序列中可以包括至少一个标签信息,即节点信息序列中可以包括至少一个第一显示信息,可以理解的是,每个标签可能包括属性信息。
[0112]
例如,参照图3,根节点《html》中包括两个子节点,分别是子节点《head》和子节点《body》,因此根节点《html》的第一显示信息分别是《head》和《body》;子节点《head》还包括:子节点《title》,因此子节点《head》的第一显示信息是《title》;子节点《body》的第一显示信息是第一分支的《div》、第二分支的《div》、第三分支的《div》和第四分支的《p》。
[0113]
由上述可知,根据节点结构获得每个节点数据中的节点信息序列,即得到每个节点数据中的标签信息。
[0114]
在一实施例中,首先根据实际需要预先设定预设映射表和预设样式替换表。
[0115]
在一实施例中,参照图5,是一实施例示出的根据实际需要预先设定预设映射表和预设样式替换表的步骤,包括:
[0116]
步骤s510:获取至少一个显示类别的显示配置信息。
[0117]
在一实施例中,显示配置信息与第二设备对应。第二设备是一种手持终端式设备或显示界面较小的设备,例如手机或小型平板或车载终端等。由于第二设备的不同,其显示配置信息不同,例如不同的第二设备的显示界面大小或者显色能力不同,因此显示配置信息可以包括显示界面大小或显色能力。例如在显色较差的第二设备上,对颜色的显示需要根据第二设备的显色能力进行适配。
[0118]
步骤s520:基于显示配置信息生成显示类别的预设映射表和预设样式替换表。
[0119]
在一实施例中,针对每一个显示类别均生成预设映射表和预设样式替换表。预设映射表用于对标签信息进行映射,预设样式替换表用于对属性信息进行映射。其中,根据显示需求和第二设备的显示配置信息生成预设映射表和预设样式替换表,目的是进行定制化设置,以提高在不同第二设备的显示效果。
[0120]
可以理解的是,获取第二设备的显示配置信息并非是在每一次跨平台显示时都要对每一个第二设备进行获取,而是根据实际需求,对不同的第二设备进行归类,获取每一类第二设备的共同的显示配置信息。分类可以是显示界面的大小或分辨率等,按照不同分类结果,获取第二设备的显示配置信息。因此,可以生成第二设备和预设映射表/预设样式替
换表之间的对应关系,根据第二设备选择对应的预设映射表和预设样式替换表。
[0121]
由上述可知,本技术实施例可以预先根据第二设备的设备信息,按照对应关系查找得到对应的预设映射表和预设样式替换表。
[0122]
步骤s130:基于预设映射表对第一显示信息进行标签映射,得到第二显示信息。
[0123]
在一实施例中,参照图6,是一实施例示出的步骤s130的一种具体实现流程图,在本实施例中基于预设映射表对每个第一显示信息进行标签映射,得到第二显示信息的步骤s130,包括:
[0124]
步骤s131:获取每个第一显示信息的标签信息。
[0125]
步骤s132:根据标签信息在预设映射表中查找得到映射标签。
[0126]
步骤s133:根据映射标签对第一显示信息进行更新,得到第二显示信息。
[0127]
在一实施例中,步骤s131,每个节点数据中的标签信息即该节点数据的第一显示信息,因此根据第一显示信息得到html格式的标签信息。例如图3中的第四分支的节点《p》,标签《p》即标签信息。
[0128]
在一实施例中,预设映射表是将html格式的标签转化为react native的对应标签,相当于将html格式的标签转化为react native能够识别的标签,将react native能够识别的标签记为映射标签。例如预设映射表将上述标签《p》按照映射关系映射成react native能够识别的标签《view》。
[0129]
在一实施例中,预设映射表中标签信息和映射标签之间的映射关系可以根据实际需求设定。例如上述标签《p》在html数据中用于标识一个段落,则其在第二设备,例如手机端可以使用react native能够识别的《view》标签直接对应。也可以对应两个《view》标签,比如:《view》《view/》《/view》来实现标签《p》在html数据中的段落效果。标签信息和映射标签之间的映射关系的原则是,利用react native将html中的标签《p》的段落效果显示出来,具体的映射关系可以根据实际开发难度和需求设定。
[0130]
在一实施例中,将标签信息按照映射关系替换成映射标签,即对第一显示信息进行更新,得到第二显示信息。
[0131]
例如,富文本显示数据(部分)表示为:《p》实施例《/p》
[0132]
标签信息和映射标签之间的映射关系为一一对应,则根据映射标签对第一显示信息进行更新之后,将标签《p》替换成react native能够识别的《view》标签,得到第二显示信息,第二显示信息表示为:《view》实施例《/view》。
[0133]
可以理解的是,经过上述步骤,基于预设映射表对每个第一显示信息进行标签映射,将标签信息按照映射关系替换成映射标签,得到第二显示信息。
[0134]
在一实施例中,经过标签映射之后的第二显示信息只是替换了标签信息,如果第一显示信息中包含属性信息,上述标签映射并未对其样式做改动,因此得到的第二显示信息中包括第一样式,这里的第一样式即第一显示信息中标签信息对应的属性信息。
[0135]
步骤s140:基于预设样式替换表将第二显示信息的第一样式替换成第二样式得到第三显示信息。
[0136]
在一实施例中,参照图7,是一实施例示出的步骤s140的一种具体实现流程图,在本实施例中基于预设样式替换表将第二显示信息的第一样式替换成第二样式,得到第三显示信息的步骤s140,包括:
[0137]
步骤s141:获取每个第二显示信息的第一样式。
[0138]
步骤s142:根据第一样式在预设样式替换表中查找得到映射样式。
[0139]
步骤s143:根据映射样式对第二显示信息进行更新,得到第三显示信息。
[0140]
在一实施例中,对于每个第二显示信息,如果其标签中包含第一样式,则利用步骤s141获取该第二显示信息的第一样式,通常来说,第一样式为css相关样式。例如css样式信息:“lineheight=
‘
1.1
’”
,即为第一样式。可以理解的是,第一样式包括常用的css样式,例如:height(高度)、width(宽度)、fontsize(字体)、color(颜色)、fontcolor(字体颜色)、lineheight(行高)、margin(外边距)、pading(填充)等,本实施例在此不对第一样式做限定。
[0141]
在一实施例中预设样式替换表是将html格式的css样式信息转化为react native中对应能够识别的样式信息,相当于将html格式的css样式信息转化为react native能够识别的样式信息,将react native能够识别的样式信息记为映射样式。例如预设样式替换表将上述第一样式“lineheight=
‘
1.1
’”
按照样式替换关系映射成react native能够识别的样式信息margintop或marginbottom。
[0142]
在一实施例中,预设样式替换表中第一样式和映射样式之间的样式替换关系可以根据实际需求设定。例如上述第一样式“lineheight=
‘
1.1
’”
在html数据中用于标识行高为1.1,则其在第二设备,例如手机端可以使用react native能够识别的margintop或marginbottom样式按照基准尺寸直接转换即可,基准尺寸可以根据第二设备的显示配置信息设定。第一样式和映射样式之间的样式替换关系的原则是,利用react native将html中的样式信息的显示效果显示出来,具体的样式替换关系可以根据实际开发难度和需求设定。
[0143]
在一实施例中,将第一样式按照样式替换关系替换成映射样式,即对第二显示信息进行更新,得到第三显示信息。
[0144]
例如,第二显示信息表示为:《p lineheight=
‘
1.1’》实施例《/p》
[0145]
第一样式和映射样式之间的样式替换关系为按照基准尺寸转换的关系,则根据映射样式对第二显示信息进行更新,具体是,按照预设的基准尺寸,例如20px,将css样式信息“ineheight=
‘
1.1
’”
进行转换,根据(1.1-1)*20px=2px的样式替换关系,将css样式信息“ineheight=
‘
1.1
’”
转换为:margintop(距离顶部)=2px,marginbottom(距离底部)=2px。
[0146]
由上述可知,按照预设样式替换表可以将第一样式转换为映射样式,从而更新第二显示信息得到第三显示信息。
[0147]
在一实施例中,如果第二显示信息中不包含属性信息,可以理解为第一显示信息中属性信息可能是缺省默认值,此时,预设样式替换表中映射样式也为缺省默认值。
[0148]
例如在一实施例中,第一显示信息表示为:《h1》富文本处理《h1/》,生成的第二显示信息表示为:《text1》富文本处理《text1/》。
[0149]
由上述可知,该第二显示信息中标题标签可能没有任何样式,因此本实施例中预设样式替换表中映射样式为默认值,即保持《h1》标签默认的样式,得到的第三显示信息表示为:《text1》富文本处理《text1/》。
[0150]
这种方式能够确保类似于《h1》、《h2》、《h3》、《h4》这样的样式信息在映射成《text》
标签的第三显示信息时,保持之前的默认的样式,实现显示统一。
[0151]
下面是css的属性信息的缺省默认值示例:
[0152]
文本的字体大小:fontsize='24px',
[0153]
字体颜色:fontcolor='black'
[0154]
字体样式:fontfamily='medium'
[0155]
高度:height='30px'
[0156]
宽度:widit='100%'
[0157]
在一实施例中,对于字体大小之类的css样式,预设样式替换表根据第二设备的显示界面的分辨率进行适配设定,例如利用最小宽度适配或其他的屏幕适配方法得到映射样式。例如第二显示信息中第一样式为:fontsize=34px,用于设置字体大小的属性,可以利用屏幕适配方法的转换工具类,将所有的34px转成成对应第二设备的分辨率值,从而完成字体大小之类的css样式的转换适配。
[0158]
在一实施例中,因为html格式版本众多,第二设备的浏览器不能支持所有的版本,因此为了提升第二设备的显示兼容性,对于不适配的标签信息或者样式信息直接丢弃,以避免显示兼容性问题。
[0159]
由上述可知,本技术实施例针对第二设备,例如手机端能够进行更好的适配,针对css样式中的字体大小、上下间距、字体尺寸,在处理时都会根据第二设备的具体显示参数进行转换适配,使得css样式能很好的适应手机端的展示。
[0160]
由上述可知,本技术实施例基于预设映射表对每个第一显示信息进行标签映射,得到第二显示信息,其中,第二显示信息包括第一样式,然后基于预设样式替换表将第二显示信息的第一样式替换成第二样式,得到第三显示信息。
[0161]
步骤s150:获取第二设备的设备显示信息。
[0162]
在一实施例中,第二设备的设备显示信息即第二设备的用户界面设计(user interface,ui)布局信息,ui可以是第二设备上的显示图标、菜单、导航等内容单元,ui布局信息即显示图标、菜单、导航等内容单元的布局。例如ui布局信息可以包括:1)列表式:内容从上向下排列,导航之间的跳转要回到初始点;2)陈列馆式:布局比较灵活,可以平均分布这些网络,也可根据内容的重要性不规则分布;3)九宫格:相比陈列馆式,布局比较稳定,为一行三列式布局;4)选项卡式:导航一直存在,具有选中态,可快速切换到另一个导航;5)旋转木马:重点展示一个对象,通过手势滑动按顺序查看更多;6)行为扩展式:能在一个屏内显示更多的细节,无需页面的跳转;7)多面板:能同时呈现比较多的分类及内容。
[0163]
步骤s160:基于设备显示信息,在第二设备上显示第三显示信息。
[0164]
在一实施例中,由于第二设备不同的ui布局信息,因此在显示第三显示信息时,如果第三显示信息中还包括动态交互信息,需要根据ui布局信息选择第三显示信息之间的动态交互过程。例如动态交互过程可以是:点击输入、点击跳转等常用过程。
[0165]
在一实施例中,参照图8,是一实施例示出的步骤s160的一种具体实现流程图,在本实施例中基于设备显示信息,在第二设备上显示第三显示信息的步骤s160,包括:
[0166]
步骤s161:获取第三显示信息中的显示参数。
[0167]
步骤s162:基于显示参数选取动态显示函数。
[0168]
步骤s163:利用动态显示函数在第二设备上显示第三显示信息。
[0169]
在一实施例中,第三显示信息中的显示参数即第三显示信息中包含的动态交互信息。本实施例中预先根据常用的动态交互信息生成对应的动态显示函数,即通过构建动态显示函数的方式在第二设备上实现动态交互信息,在第二设备显示第三显示信息的过程中,在需要动态添加布局的地方使用动态显示函数来代替。可以理解的是,可以预先根据动态交互信息生成多个动态显示函数构成函数库,并且在函数库中保存动态交互信息与动态显示函数之间的对应关系,可根据动态交互信息的具体需求选取对应的动态显示函数。
[0170]
例如,需要在第二设备上动态显示字符“123”,在需要动态添加布局的地方使用预先构建的动态显示函数addview()代替,然后在return出指定的《view》标签。
[0171]
过程表示为:
[0172][0173]
由上述可知,例如在html格式的标签中定义默认样式和动态交互信息,利用动态显示函数、预设映射表和预设样式替换表能够进行相关的转换,满足自定义需求,并支持定制开发过程。例如在《span》标签中包含点击响应的动态交互信息,则只需在《span》的映射标签《view》中增加关于点击事件的动态显示函数。
[0174]
由上述步骤可以实现将原本应用于第一设备的富文本显示数据,进行跨平台显示,在第二设备上适配的显示对应的第三显示信息。
[0175]
在一实施例中,参照图9,为本实施例中富文本跨平台显示方法整体流程图。包括步骤s910至步骤s980。
[0176]
其中,步骤s910:获取第一设备的第一原始数据。
[0177]
该实施例中,第一原始数据为html原生数据,其中包含标签和css样式信息。
[0178]
步骤s920:对第一原始数据进行解析,得到json格式的富文本显示数据。
[0179]
该实施例中,利用htmlparse2解析器对第一原始数据进行解析得到第一原始数据的节点结构,然后基于节点结构得到每个节点数据,最后根据节点数据得到富文本显示数据。
[0180]
在一实施例中,根据上述节点结构能够得到每个节点的节点数据,其中节点数据包括:标签信息、属性信息和文本信息三个值和动态交互信息,其中属性信息即css样式信息。然后将上述得到的每个节点的节点数据汇总,得到第一设备的第一原始数据对应的富文本显示数据。
[0181]
步骤s930:从节点数据中获取节点信息序列。
[0182]
在一实施例中,将上述每个节点数据的标签信息、属性信息和文本信息三个值和动态交互信息提取出来得到节点信息序列。
[0183]
在一实施例中,从节点数据中获取节点信息序列的过程是:从节点结构中获取节点位置,然后基于节点位置生成显示次序,再按照显示次序依次从节点数据中获取节点信
息序列。
[0184]
在一实施例中,节点位置可以是该节点在整个节点结构中的位置,包括该节点的父节点和子节点。因为有些节点是存在嵌套关系的,父节点里面有可能会定义子节点的属性信息,例如是横向排列或竖向排列,因此需要基于节点位置生成显示次序,知道按照显示次序,下一个节点是横向排列,则需要把下一个节点放到上一个节点后面。
[0185]
在一实施例中,根据节点结构的节点位置生成显示次序,这里的显示次序是显示过程中每个节点的显示顺序。
[0186]
在一实施例中,按照显示次序对每个节点数据的节点信息序列进行获取,由于是将每个节点数据中的标签信息、属性信息和文本信息三个值和动态交互信息提取出来得到节点信息序列。
[0187]
步骤s940:基于预设映射表对每个所述第一显示信息进行标签映射,得到第二显示信息。
[0188]
在一实施例中,首先根据实际需要预先设定预设映射表和预设样式替换表。具体过程包括:获取第二设备的显示配置信息,基于显示参数生成预设映射表和预设样式替换表。
[0189]
在一实施例中,预设映射表用于对标签信息进行映射,预设样式替换表用于对属性信息进行映射。其中,根据显示需求和第二设备的显示配置信息生成预设映射表和预设样式替换表,目的是进行定制化设置,以提高在不同第二设备的显示效果。
[0190]
可以理解的是,获取第二设备的显示配置信息并非是在每一次跨平台显示时都要对每一个第二设备进行获取,而是根据实际需求,对不同的第二设备进行归类,获取每一类第二设备的共同的显示参数。分类可以是显示界面的大小或分辨率等,按照不同分类结果,获取第二设备的显示配置信息。因此,可以生成第二设备和预设映射表/预设样式替换表之间的对应关系,根据第二设备选择对应的预设映射表和预设样式替换表。
[0191]
由上述可知,本技术实施例可以预先根据第二设备的设备信息,按照对应关系查找得到对应的预设映射表和预设样式替换表。
[0192]
在一实施例中,基于预设映射表对每个第一显示信息进行标签映射,得到第二显示信息的过程为:获取每个第一显示信息的标签信息,根据标签信息在预设映射表中查找得到映射标签,最后根据映射标签对第一显示信息进行更新,得到第二显示信息。
[0193]
在一实施例中,预设映射表是将html格式的标签转化为react native的对应标签,相当于将html格式的标签转化为react native能够识别的标签,将react native能够识别的标签记为映射标签。并且预设映射表中标签信息和映射标签之间的映射关系可以根据实际需求设定。
[0194]
步骤s950:判断第二显示信息是否包含属性信息,如果包含进入步骤s960,否则进入步骤s970。
[0195]
步骤s960:基于预设样式替换表将第二显示信息的第一样式替换成第二样式,得到第三显示信息。
[0196]
在一实施例中,经过标签映射之后的第二显示信息只是替换了标签信息,如果第一显示信息中包含属性信息,上述标签映射并未对其样式做改动,因此得到的第二显示信息中包括第一样式,这里的第一样式即第一显示信息中标签信息对应的属性信息。
[0197]
在一实施例中,基于预设样式替换表将第二显示信息的第一样式替换成第二样式,得到第三显示信息具体包括:获取每个第二显示信息的第一样式,然后根据第一样式在预设样式替换表中查找得到映射样式,最后根据映射样式对第二显示信息进行更新,得到第三显示信息。
[0198]
在一实施例中预设样式替换表是将html格式的css样式信息转化为react native中对应能够识别的样式信息,相当于将html格式的css样式信息转化为react native能够识别的样式信息,将react native能够识别的样式信息记为映射样式。并且预设样式替换表中第一样式和映射样式之间的样式替换关系可以根据实际需求设定。
[0199]
步骤s970:保持第三显示信息中默认样式。
[0200]
步骤s980:基于设备显示信息,在第二设备上显示第三显示信息。
[0201]
在一实施例中,由于第二设备不同的ui布局信息,因此在显示第三显示信息时,如果第三显示信息中还包括动态交互信息,需要根据ui布局信息选择第三显示信息之间的动态交互过程。例如动态交互过程可以是:点击输入、点击跳转等常用过程。
[0202]
在一实施例中,基于设备显示信息,在第二设备上显示第三显示信息具体包括:获取第三显示信息中的显示参数,然后根据显示参数获取动态显示函数,最后利用动态显示函数在第二设备上显示第三显示信息。
[0203]
由上述可知,经过步骤s910至步骤s980完成在第二设备上对富文本显示数据进行渲染显示的过程。
[0204]
本发明实施例提供的技术方案,通过获取第一设备的富文本显示数据,其中,富文本显示数据包括至少一个节点数据;从至少一个节点数据中进行节点信息提取,得到节点信息序列,节点信息序列包括第一显示信息;基于预设映射表对第一显示信息进行标签映射,得到第二显示信息,第二显示信息的数量与第一显示信息的数量相同,第二显示信息包括第一样式;基于预设样式替换表将第一样式替换成第二样式,得到第三显示信息;获取第二设备的设备显示信息;基于设备显示信息,在第二设备上显示第三显示信息。
[0205]
在一实施例中,本发明实施例提供的富文本跨平台显示方法适用于金融科技场景。例如以下几种场景:1)在金融科技服务中,富文本技术可以用于财经资讯的展示和呈现。通过富文本技术,用户可以更好地获取各种股票、基金、债券等金融产品的相关信息,例如说明书、历史数据、风险提示等。2)在金融科技场景中,通过富文本技术开发各种交互式金融工具,如投资模拟器、风险测评等。这些工具可以通过富文本技术实现更加便捷的操作和交互,让用户更好地了解自己的投资风险和收益。3)金融科技企业使用富文本技术更好地呈现财报、市场报告、数据图表等数据,使其更加生动、直观和易于理解。上述几个场景中,不同的用户的终端不同,因此需要利用本技术实施例的富文本跨平台显示方法对该富文本显示数据进行第二设备侧的适配显示,提升第二设备测的富文本显示兼容性,提升用户体验和数据分析效率,同时也有助于企业的品牌推广和市场拓展。
[0206]
本技术实施例通过预设映射表和预设样式替换表对富文本显示数据进行标签映射和样式替换,然后实时根据第二设备的设备显示信息,对该富文本显示数据进行第二设备侧的适配显示,能够扩展富文本显示的应用范围,同时提升第二设备测的富文本显示兼容性。
[0207]
本发明实施例还提供一种富文本跨平台显示装置,可以实现上述富文本跨平台显
示方法,参照图10,该装置包括:
[0208]
第一获取单元1010,用于获取第一设备的富文本显示数据,所述富文本显示数据包括至少一个节点数据。
[0209]
第一显示信息获取单元1020,用于从至少一个所述节点数据中进行节点信息提取,得到节点信息序列,所述节点信息序列包括第一显示信息。
[0210]
标签映射单元1030,用于基于预设映射表对所述第一显示信息进行标签映射,得到第二显示信息,所述第二显示信息的数量与所述第一显示信息的数量相同,所述第二显示信息包括第一样式。
[0211]
样式映射单元1040,用于基于预设样式替换表将所述第一样式替换成第二样式,得到第三显示信息。
[0212]
第二获取单元1050,用于获取第二设备的设备显示信息。
[0213]
显示单元1060,用于基于设备显示信息,在第二设备上显示第三显示信息。
[0214]
本实施例的富文本跨平台显示装置的具体实施方式与上述富文本跨平台显示方法的具体实施方式基本一致,在此不再赘述。
[0215]
本发明实施例还提供了一种电子设备,包括:
[0216]
至少一个存储器;
[0217]
至少一个处理器;
[0218]
至少一个程序;
[0219]
所述程序被存储在存储器中,处理器执行所述至少一个程序以实现本发明实施上述的富文本跨平台显示方法。该电子设备可以为包括手机、平板电脑、个人数字助理(personal digital assistant,简称pda)、车载电脑等任意智能终端。
[0220]
请参阅图11,图11示意了另一实施例的电子设备的硬件结构,电子设备包括:
[0221]
处理器1101,可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本发明实施例所提供的技术方案;
[0222]
存储器1102,可以采用rom(readonlymemory,只读存储器)、静态存储设备、动态存储设备或者ram(randomaccessmemory,随机存取存储器)等形式实现。存储器1102可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1102中,并由处理器1101来调用执行本发明实施例的富文本跨平台显示方法;
[0223]
输入/输出接口1103,用于实现信息输入及输出;
[0224]
通信接口1104,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信;和
[0225]
总线1105,在设备的各个组件(例如处理器1101、存储器1102、输入/输出接口1103和通信接口1104)之间传输信息;
[0226]
其中处理器1101、存储器1102、输入/输出接口1103和通信接口1104通过总线1105实现彼此之间在设备内部的通信连接。
[0227]
本技术实施例还提供了一种存储介质,存储介质为计算机可读存储介质,该存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述富文本跨平台显示方法。
[0228]
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0229]
本发明实施例提出的富文本跨平台显示方法、富文本跨平台显示装置、电子设备、存储介质,通过获取第一设备的富文本显示数据,其中,富文本显示数据包括至少一个节点数据;从至少一个节点数据中进行节点信息提取,得到节点信息序列,节点信息序列包括第一显示信息;基于预设映射表对第一显示信息进行标签映射,得到第二显示信息,第二显示信息的数量与第一显示信息的数量相同,第二显示信息包括第一样式;基于预设样式替换表将第一样式替换成第二样式,得到第三显示信息;获取第二设备的设备显示信息;基于设备显示信息,在第二设备上显示第三显示信息。本技术实施例通过预设映射表和预设样式替换表对富文本显示数据进行标签映射和样式替换,然后实时根据第二设备的设备显示信息,对该富文本显示数据进行第二设备侧的适配显示,能够扩展富文本显示的应用范围,同时提升第二设备测的富文本显示兼容性。
[0230]
本技术实施例描述的实施例是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
[0231]
本领域技术人员可以理解的是,图中示出的技术方案并不构成对本技术实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
[0232]
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0233]
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
[0234]
本技术的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0235]
应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可
以是多个。
[0236]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0237]
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0238]
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例的方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等各种可以存储程序的介质。
[0239]
以上参照附图说明了本技术实施例的优选实施例,并非因此局限本技术实施例的权利范围。本领域技术人员不脱离本技术实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本技术实施例的权利范围之内。
技术特征:
1.一种富文本跨平台显示方法,其特征在于,包括:获取第一设备的富文本显示数据,所述富文本显示数据包括至少一个节点数据;从至少一个所述节点数据中进行节点信息提取,得到节点信息序列,所述节点信息序列包括第一显示信息;基于预设映射表对所述第一显示信息进行标签映射,得到第二显示信息,所述第二显示信息的数量与所述第一显示信息的数量相同,所述第二显示信息包括第一样式;基于预设样式替换表将所述第一样式替换成第二样式,得到第三显示信息;获取第二设备的设备显示信息;基于所述设备显示信息,在所述第二设备上显示所述第三显示信息。2.根据权利要求1所述的富文本跨平台显示方法,其特征在于,所述获取第一设备的富文本显示数据,包括:获取所述第一设备的第一原始数据;对所述第一原始数据进行解析,得到所述第一原始数据的节点结构,所述节点结构包括多个节点;基于所述节点结构得到每个节点的所述节点数据;根据所述节点数据得到所述富文本显示数据。3.根据权利要求2所述的富文本跨平台显示方法,其特征在于,所述从至少一个所述节点数据中进行节点信息提取,得到节点信息序列,包括:从所述节点结构中获取每个节点的节点位置;基于所述节点位置生成所述节点的显示次序;按照所述显示次序依次获取所述节点数据构成所述节点信息序列。4.根据权利要求1所述的富文本跨平台显示方法,其特征在于,所述基于预设映射表对每个所述第一显示信息进行标签映射,得到第二显示信息之前,所述方法还包括:获取至少一个显示类别的显示配置信息,所述显示配置信息与所述第二设备对应;基于所述显示配置信息生成所述显示类别的所述预设映射表和所述预设样式替换表。5.根据权利要求1所述的富文本跨平台显示方法,其特征在于,所述基于预设映射表对所述第一显示信息进行标签映射,得到第二显示信息,包括:获取每个所述第一显示信息的标签信息;根据所述标签信息在所述预设映射表中查找得到映射标签;根据所述映射标签对所述第一显示信息进行更新,得到所述第二显示信息。6.根据权利要求1所述的富文本跨平台显示方法,其特征在于,所述基于预设样式替换表将所述第二显示信息的所述第一样式替换成第二样式,得到第三显示信息,包括:获取每个所述第二显示信息的所述第一样式;根据所述第一样式在所述预设样式替换表中查找得到映射样式;根据所述映射样式对所述第二显示信息进行更新,得到所述第三显示信息。7.根据权利要求1至6任一项所述的富文本跨平台显示方法,其特征在于,所述设备显示信息包括动态显示函数;所述基于所述设备显示信息,在所述第二设备上显示所述第三显示信息,包括:获取所述第三显示信息中的显示参数;
基于所述显示参数选取动态显示函数;利用所述动态显示函数在所述第二设备上显示所述第三显示信息。8.一种富文本跨平台显示装置,其特征在于,包括:第一获取单元,用于获取第一设备的富文本显示数据,所述富文本显示数据包括至少一个节点数据;第一显示信息获取单元,用于从至少一个所述节点数据中进行节点信息提取,得到节点信息序列,所述节点信息序列包括第一显示信息;标签映射单元,用于基于预设映射表对所述第一显示信息进行标签映射,得到第二显示信息,所述第二显示信息的数量与所述第一显示信息的数量相同,所述第二显示信息包括第一样式;样式映射单元,用于基于预设样式替换表将所述第一样式替换成第二样式,得到第三显示信息;第二获取单元,用于获取第二设备的设备显示信息;显示单元,用于基于所述设备显示信息,在所述第二设备上显示所述第三显示信息。9.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的富文本跨平台显示方法。10.一种计算机可读存储介质,所述存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的富文本跨平台显示方法。
技术总结
本发明实施例提供富文本跨平台显示方法、装置、设备和存储介质,涉及金融科技技术领域。获取第一设备的富文本显示数据,然后从富文本显示数据的节点数据中获取节点信息序列的至少一个第一显示信息,基于预设映射表对每个第一显示信息进行标签映射,得到第二显示信息,基于预设样式替换表将第二显示信息的第一样式替换成第二样式,得到第三显示信息;基于获取的第二设备的设备显示信息在第二设备上显示第三显示信息。通过预设映射表和预设样式替换表对富文本显示数据进行标签映射和样式替换,根据第二设备的设备显示信息,对该富文本显示数据进行第二设备侧的适配显示,扩展富文本显示的应用范围,同时提升第二设备测的富文本显示兼容性。本显示兼容性。本显示兼容性。
技术研发人员:王珩
受保护的技术使用者:中国平安人寿保险股份有限公司
技术研发日:2023.07.10
技术公布日:2023/10/11
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种房产信息预警系统及预警方法与流程 下一篇:一种适用于纳米材料晶粒尺寸的计算方法
