【技术实现步骤摘要】
文本渲染方法、系统、计算机设备及介质
[0001]本申请涉及文本渲染领域,尤其涉及一种文本渲染方法、系统、计算机设备及介质。
技术介绍
[0002]Whatsapp Business是Whatsapp提供的商业版API服务,商家在使用该服务时可通过Whatsapp Business API上的设定模板来输入营销文本后,将编辑完成的营销文本发送给用户,其中Whatsapp Business API上的设定模板支持营销文本的正文加粗、斜体和删除线等特殊格式的设定,从而使用户发出的营销文本可渲染上特殊格式;
[0003]其中,为了达到文本渲染的效果,用户在上述设定模板的编辑过程中还必须同时在Whatsapp Business API平台创建一段包含特殊格式的HTML文本来用于文本的渲染,这就导致了当用户希望通过其他平台创建的模板消息来发送带特殊格式渲染的营销文本时,Whatsapp Business API平台会由于缺失上述的HTML文本导致无法对营销文本进行特殊格式渲染,且由于Whatsapp未公开技术文档和解析算法,因此开发人员也无法对上述HTML文本进行反向解析使用,导致了开发者使用的不便,因此如何实现一种可在Whatsapp Business API平台上对其他平台创建的模板消息进行渲染的文本渲染方法,成了一个急需解决的问题。
[0004]申请内容
[0005]基于此,有必要针对上述问题,提出了一种可对其他平台创建的模板消息进行渲染输出的文本渲染方法、系统、计算机设备及介质。
[00 ...
【技术保护点】
【技术特征摘要】
1.一种文本渲染方法,其特征在于,包括:获取输入的模板消息,并对所述模板消息中的正文字符串进行提取,并将所述正文字符串进行拆分,从而形成若干个字符串数组;将所述字符串数组进行循环遍历,从而输出一个二维数组,所述二维数组用于储存所述字符串数组经由循环遍历后输出的文本信息以及格式信息;调用预设reduce高阶函数,从而将所述二维数组累加成一维数组;调用预设transformSpans函数,从而将所述一维数组中的所述文本信息以及格式信息转换成TextSpan数组;使用预设Flutter框架内部的RichText组件作为渲染容器来对所述TextSpan数组进行渲染后,通过Whatsapp Business API进行输出。2.如权利要求1所述的文本渲染方法,其特征在于,所述提取输入模板消息中的正文字符串,并将所述正文字符串进行拆分,从而形成若干个字符串数组的步骤,具体包括:提取所述模板消息中的正文字符串,并对所述正文字符串中的分割字符进行识别;以所述分割字符为起点将所述正文字符串进行拆分,从而生成所述字符串数组。3.如权利要求1所述的文本渲染方法,其特征在于,所述遍历所述字符串数组,从而将所述字符串数组解析为一个二维数组,所述二维数组用于储存所述字符串数组中的文本信息以及对应的格式信息的步骤,具体包括:提取所述字符串数组内各个节点的节点类型,并在所述节点类型添加起始字符标签以及结尾字符标签,从而生成与所述节点匹配的节点类型信息;提取所述字符串数组内所述节点的字符串参数;获取设定的节点接收数组,所述节点接收数组用于储存解析后的所述字符串参数;将各个所述字符串参数以及所述节点类型信息进行遍历处理,并将输出结果储存在所述节点接收数组中,当各个所述字符串参数的遍历处理均结束后所述节点接收数组即为所述二维数组。4.如权利要求3所述的文本渲染方法,其特征在于,所述提取所述字符串数组内各个节点的节点类型,并在所述节点类型添加起始字符标签以及结尾字符标签,从而生成与所述节点匹配的节点类型信息的步骤,具体包括:提取所述字符串数组内各个节点的节点类型,并在所述节点类型添加起始字符标签以及结尾字符标签;判断所述起始字符标签和所述结尾字符标签是否都为特殊格式字符;若是,则判定所述节点类型信息修改为与所述特殊格式字符匹配的特殊字符类型一致。5.如权利要求3所述的文本渲染方法,其特征在于,所述将各个所述字符串参数以及所述节点类型信息进行遍历处理,并将输出结果储存在所述节点接收数组中的步骤,具体包括:将所述字符串参数中的各个字符记为要素标记n,并将所述要素标记n储存到所述节点对象中
,
n的初始值为1;提取所述要素标记n中的node.body请求,并判断其中的所述node请求是否为空格符;若是,则判断所述要素标记n是否与为所述节点类型信息中的一种,若是,则标记所述
要素标记n与所述起始字符标签一致,并将所述要素标记n添加到所述节点接收数组中;判断所述要素标记n是否为所述处理字符串中最后...
【专利技术属性】
技术研发人员:蒋鹏,
申请(专利权)人:深圳市小满科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。