CN109948581A - 图文渲染方法、装置、设备及可读存储介质 - Google Patents
图文渲染方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN109948581A CN109948581A CN201910243874.2A CN201910243874A CN109948581A CN 109948581 A CN109948581 A CN 109948581A CN 201910243874 A CN201910243874 A CN 201910243874A CN 109948581 A CN109948581 A CN 109948581A
- Authority
- CN
- China
- Prior art keywords
- image
- target
- text
- target image
- parameter
- 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.)
- Granted
Links
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种图文渲染方法、装置、设备及可读存储介质,涉及终端技术领域。该方法包括:接收目标应用程序的内容显示信号,目标应用程序对应有图像集合;确定目标图像在图像集合中的图像参数;确定目标图像与目标文本之间对应的位置关系;根据位置关系在目标文本对应的文本组件中,增加目标图像的图像参数;对文本组件中的目标文本和目标图像进行渲染。通过在文本组件中增加目标图像对应的参数,在对目标文本和目标图像进行渲染时,直接对文本组件中的目标文本进行整体渲染,以及对文本组件中的目标图像进行整体渲染,避免针对一段图文混合的内容需要通过多个文本组件和图像组件进行渲染而导致渲染效率低下,增加计算量的问题。
Description
技术领域
本申请实施例涉及终端技术领域,特别涉及一种图文渲染方法、装置、设备及可读存储介质。
背景技术
在基于Unity引擎开发的应用程序的界面显示过程中,界面内容中通常包括文字内容、图像内容、视频内容等,且界面内容通常处于不断地更新中,如:在帐号A和帐号B的对话框中,当前界面中一次显示有消息1、消息2和消息3,帐号B向帐号A发送消息4时,消息1取消显示在界面中,而界面中显示消息2、消息3和消息4。
相关技术中,当界面中需要更新或显示的内容中既包括文本内容又包括图像内容时(如:聊天对话框中既包括文本内容又包括表情图像),则需要针对每一段文本内容通过一个文本组件进行文本渲染,并针对每一个图像内容通过一个图像组件进行图像渲染,示意性的,针对文本框中的内容“文本/表情/文本/表情/文本”,则需要通过三个文本组件以及两个图像组件单独进行渲染。
然而,通过上述方式进行渲染时,三个文本组件和两个图像组件都需要通过中央处理器(Central Processing Unit,CPU)进行计算后,由CPU向图形处理器(GraphicsProcessing Unit,GPU)发送计算结果,并由GPU进行渲染,CPU的计算量大,且GPU的渲染压力也较大,易产生应用程序界面显示中的卡顿现象。
发明内容
本申请实施例提供了一种图文渲染方法、装置、设备及可读存储介质,可以解决渲染过程中CPU的计算量大,且GPU的渲染压力也较大,易产生应用程序界面显示中的卡顿现象的问题。所述技术方案如下:
一方面,提供了一种图文渲染方法,所述方法包括:
接收目标应用程序的内容显示信号,所述内容显示信号用于在终端界面中显示目标文本和目标图像,所述目标应用程序对应有图像集合,所述图像集合中包括所述目标图像;
确定所述目标图像在所述图像集合中的图像参数,所述图像参数中包括用于对所述目标图像进行标识的标识参数;
确定所述目标图像与所述目标文本之间对应的位置关系,所述位置关系下,所述目标图像和所述目标文本被分为至少三部分,每个部分对应所述目标图像或所述目标文本;
根据所述位置关系在所述目标文本对应的文本组件中,增加所述目标图像的所述图像参数;
对所述文本组件中的所述目标文本和所述目标图像进行渲染。
另一方面,提供了一种图文渲染装置,所述装置包括:
接收模块,用于接收目标应用程序的内容显示信号,所述内容显示信号用于在终端界面中显示目标文本和目标图像,所述目标应用程序对应有图像集合,所述图像集合中包括所述目标图像;
确定模块,用于确定所述目标图像在所述图像集合中的图像参数,所述图像参数中包括用于对所述目标图像进行标识的标识参数;
所述确定模块,还用于确定所述目标图像与所述目标文本之间对应的位置关系,所述位置关系下,所述目标图像和所述目标文本被分为至少三部分,每个部分对应所述目标图像或所述目标文本;
所述确定模块,还用于根据所述位置关系在所述目标文本对应的文本组件中,增加所述目标图像的所述图像参数;
渲染模块,用于对所述文本组件中的所述目标文本和所述目标图像进行渲染。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述本申请实施例中提供的图文渲染方法。
另一方面,提供了一种计算机可读存储介质,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述本申请实施例中提供的图文渲染方法。
另一方面,提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行如上述本申请实施例中提供的图文渲染方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过在文本组件中增加目标图像对应的参数,在对目标文本和目标图像进行渲染时,直接对文本组件中的目标文本进行整体渲染,以及对文本组件中的目标图像进行整体渲染,即使目标图像中的多个图像分布在目标文本的不同位置,也可以通过文本组件进行整体渲染,或,即使多段文本被目标图像隔开也可以通过将目标图像以参数的形式增加在文本组件中而对多段文本在一个文本组件中进行渲染,避免针对一段图文混合的内容需要通过多个文本组件和图像组件进行渲染而导致渲染效率低下,增加计算量的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的图文显示方式以及结合该显示方式对应的图文渲染方式的示意图;
图2是本申请一个示例性实施例提供的文本内容处理过程和图像处理过程的示意图;
图3是本申请一个示例性实施例提供的图文渲染方式的流程图;
图4是基于图3示出的实施例提供的图文渲染方式的整体过程的示意图;
图5是本申请另一个示例性实施例提供的图文渲染方式的流程图;
图6是基于图5示出的实施例提供的图像顶点数据计算方式的示意图;
图7是基于图5示出的实施例提供的内置图像纹理的示意图;
图8是本申请另一个示例性实施例提供的图文渲染方式的流程图;
图9是本申请一个示例性实施例提供的图像渲染方式的流程图;
图10是本申请一个示例性实施例提供的终端的结构框图;
图11是本申请一个示例性实施例提供的图文渲染装置的结构框图;
图12是本申请另一个示例性实施例提供的图文渲染装置的结构框图;
图13是本申请一个示例性实施例提供的终端的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先,对本申请实施例中涉及的名词进行简单介绍:
文本组件、图像组件:文本组件是指用于对文本内容进行显示的单元,图像组件是指用于对图像内容进行显示的单元。可选地,每个文本组件用于显示一段文本内容,每个图像组件用于显示一张图像。可选地,该文本组件和图像组件为Unity引擎提供的用于对文本和图像进行显示的单元。
其次,结合上述对文本组件和图像组建的介绍,对相关技术中终端界面中的文本内容和图像内容的显示过程进行简单介绍:
相关技术中,在对终端界面中的文本内容和图像内容进行显示时,需要通过多个文本组件与图像组件混合排布的方式进行实现,示意性的,请参考图1,在聊天界面100中包括帐号A发送的内容110,该内容110中包括文本内容以及图像内容,其中,该内容110中共包括3段文本内容,分别为文本内容111、文本内容112以及文本内容113,2个图像内容分别为图像内容121和图像内容122。则在该内容110的显示过程中,针对文本内容111生成文本组件,通过CPU计算该文本内容111的显示位置、显示高度以及显示宽度等信息,并提交至GPU进行渲染;针对文本内容112生成文本组件,通过CPU计算该文本内容112的显示位置、显示高度以及显示宽度等信息,并提交至GPU进行渲染;针对文本内容113生成文本组件,通过CPU计算该文本内容113的显示位置、显示高度以及显示宽度等信息,并提交至GPU进行渲染;针对图像内容121生成图像组件,通过CPU计算该图像内容121的显示位置、显示高度以及显示宽度等信息,并提交至GPU进行渲染;针对图像内容122生成图像组件,通过CPU计算该图像内容122的显示位置、显示高度以及显示宽度等信息,并提交至GPU进行渲染。
也即,相关技术中,CPU需要针对文本组件和图像组件,分别向GPU提交渲染数据,针对上述图1所示的聊天界面100,CPU需要向GPU提交5次渲染数据对文本内容以及图像内容进行渲染,而CPU每次向GPU提交渲染数据都会给CPU带来一定的耗时,影响CPU的计算过程。
值得注意的是,上述举例中以聊天界面100为例进行说明,该聊天界面100仅为示意性的举例,本申请实施例提供的图文渲染方案可以应用于任意图像和文本混合显示的应用场景中。
可选地,CPU提交到GPU的渲染数据中主要包括纹理数据和顶点数据,GPU根据渲染数据计算在终端界面中的显示位置以及显示内容,请参考图2,示意性的,针对文本内容处理过程210,以文本内容为“测试文本”为例,CPU将文本内容的字体纹理211以及顶点数据212提交至GPU230,由GPU230根据字体纹理211和顶点数据212显示文本内容“测试文本”;针对图像内容处理过程220,以图像221为例,CPU将图像221的图像纹理222以及顶点数据223提交至GPU230,由GPU230根据图像纹理222和顶点数据223显示图像221。
结合上述对相关技术中图文的显示方法的说明,对本申请实施例中提供的图文渲染方法进行介绍,图3是本申请一个示例性实施例提供的图文渲染方法的流程图,该方法可以应用于终端中,如图3所示,该方法包括:
步骤301,接收目标应用程序的内容显示信号,该内容显示信号用于在终端界面中显示目标文本和目标图像。
可选地,该目标应用程序对应有图像集合,该图像集合中包括该目标图像。
可选地,该目标应用程序为基于Unity引擎开发的应用程序。可选地,该目标应用程序可以是游戏应用程序、社交应用程序、金融应用程序、音视频应用程序中的任意一种。
可选地,该内容显示信号可以是根据规律性的界面更新生成的,也可以是根据用户在界面上的操作生成的,还可以是根据终端接收到的消息生成的,示意性的,对该三种情况分别进行说明:
第一,根据规律性的界面更新生成内容显示信号是指,终端界面每隔预设时长需要进行一次更新,如:每隔一秒进行一次界面刷新,根据该规律性的界面更新,生成内容显示信号对界面内容进行计算并渲染;
第二,根据用户在界面上的操作生成内容显示信号是指,当终端显示屏接收到用户的触摸操作,或,终端接收到外部输入设备输入的操作信号时,根据操作生成内容显示信号,对终端界面中的显示内容进行刷新。示意性的,以用户在终端显示屏的触摸操作为例,当用户在刷新控件上进行触摸后,生成内容显示信号对终端界面中的显示内容进行刷新,或,以用户通过外部输入设备输入操作信号为例,当用户通过键盘输入文本内容后,需要在终端界面中显示用户输入的文本内容,根据该输入操作对终端界面中的显示内容进行刷新;
第三,根据终端接收到的消息生成内容显示信号是指,当终端在运行目标应用程序时,接收到该目标应用程序对应的服务器发送的消息,并需要根据该服务器发送的消息在终端界面中显示当前未显示的内容时,生成内容显示信号以对需要显示的内容进行显示。
可选地,上述目标文本和目标图像可以是终端界面中原本没有,需要新生成的内容,也可以是终端界面中原本存在,需要更新显示位置,或需要被刷新显示的内容,还可以部分是终端界面中原本没有,部分是终端界面中原本存在的内容,本申请实施例对此不加以限定。如:终端界面中原本显示有文本内容“测试文本1”以及图像内容图像1,当接收到内容显示信号后,该内容显示信号指示终端在终端界面中显示文本内容“测试文本1”、图像内容图像1,以及文本内容“测试文本2”,则将文本内容“测试文本1”和文本内容“测试文本2”作为目标文本,并将图像1作为目标图像。
可选地,上述图像集合的实现方式包括如下方式中的任意一种:
第一,该图像集合可以实现为内置图像纹理,也即一张集合有可选图像的图像纹理,其中,目标图像为该内置图像纹理中的一张或一组图像;
第二,该图像集合可以实现为图像文件夹,其中,该目标图像为该图像文件夹中的一个或一组文件。
步骤302,确定目标图像在图像集合中的图像参数。
可选地,该图像参数中包括用于对目标图像进行标识的标识参数。
可选地,该图像参数中还包括占位符参数、目标图像的图像尺寸参数、目标图像的位置偏移参数中的至少一种。其中,占位符参数用于根据目标图像与目标文本之间的位置关系,在目标文本中对目标图像所处的位置通过占位框进行占位;位置偏移参数用于表示目标图像在占位框中的预设偏移量。
可选地,占位框的大小为固定的,图像集合中的每个图像都对应有在占位框中的预设偏移量。
可选地,该预设偏移量包括横向偏移量和纵向偏移量,其中,横向偏移量对应图像宽度方向上的偏移,纵向偏移量对应图像高度方向上的偏移。其中,偏移量的表示方式可以是通过方向指示与数值进行表示,也可以通过带有方向性的正负号与数值进行表示。示意性的,当通过方向指示与数值进行表示时,该预设偏移量的表达方式如下:“widthoff=right 1.2heightoff=up 0.1”,即,向右偏移1.2个单位,并向上偏移0.1个单位;当通过带有方向性的正负号与数值进行表示时,该预设偏移量的表达方式如下:“widthoff=1.2heightoff=-0.1”,即,向右偏移1.2个单位,并向下偏移0.1个单位。
步骤303,确定目标图像与目标文本之间对应的位置关系。
可选地,在该位置关系下,目标图像和目标文本被分为至少三部分,每个部分对应目标图像或目标文本。
可选地,该至少三部分中,每两个相邻部分所对应的内容不同,也即,两个相邻部分中,一个部分对应目标图像,而另一个部分对应目标文本。
可选的,该位置关系是指目标图像在目标文本中所处的位置,如目标文本的文本内容为“测试文本1测试文本2”,而目标图像位于“1”和“测”之间,则在该“1”和“测”之间的位置,即为目标图像与目标文本之间对应的位置关系中,目标图像所处的位置。
可选地,上述步骤302和步骤303,可以先执行步骤302,也可以先执行步骤303,还可以步骤302和步骤303同时执行,本申请实施例对此不加以限定。
步骤304,根据位置关系在目标文本对应的文本组件中,增加目标图像的图像参数。
可选地,该文本组件用于对目标文本进行显示,也即,目标文本通过该文本组件进行显示。
可选地,该文本组件中包括目标文本的文本内容。可选地,根据目标文本和目标图像之间对应的位置关系,将目标图像的图像参数增加至文本组件的内容中。
示意性的,在文本1与文本2之间增加目标图像后,该文本1和文本2对应的文本组件中的内容包括“文本1<quad name=Emoji_QQ_AoMan size=80widthoff=1.2heightoff=0.1/>文本2”,其中,quad为占位符,name=Emoji_QQ_AoMan表示该目标图像的标识为Emoji_QQ_AoMan,size=80表示该目标图像的尺寸为80,widthoff=1.2heightoff=0.1用于表示该目标图像在占位框中的预设偏移量。
步骤305,对文本组件中的目标文本和目标图像进行渲染。
可选地,对该文本组件中的目标文本和目标图像进行渲染时,对目标文本和目标图像的渲染是分开进行的,其中,对目标文本的渲染直接根据文本组件中的渲染数据进行渲染,对目标图像进行渲染时,根据目标图像与目标文本的位置关系确定目标图像的顶点数据,以及根据标识参数获取纹理数据后,对该目标图像进行渲染。
可选地,该目标图像可以是一张图像,也可以包括多张子图像。当该目标图像包括多张子图像时,对该多张子图像进行渲染的过程中,确定该多张子图像的顶点数据和纹理数据后,将该多张子图像的整体作为一张图像进行渲染。
综上所述,本实施例提供的图文渲染方法,通过在文本组件中增加目标图像对应的参数,在对目标文本和目标图像进行渲染时,直接对文本组件中的目标文本进行整体渲染,以及对文本组件中的目标图像进行整体渲染,即使目标图像中的多个图像分布在目标文本的不同位置,也可以通过文本组件进行整体渲染,或,即使多段文本被目标图像隔开也可以通过将目标图像以参数的形式增加在文本组件中而对多段文本在一个文本组件中进行渲染,避免针对一段图文混合的内容需要通过多个文本组件和图像组件进行渲染而导致渲染效率低下,增加计算量的问题。
图4是本申请一个示例性实施例提供的图文渲染方法的过程示意图,请参考图4,终端根据内容显示信号确定需要终端界面400中需要显示内容410,根据图4可知,该内容410中包括文本内容“测试文本1测试文本2”,且在“测试文本1”和“测试文本2”之间包括有一个表情图像411,则在该内容410的显示过程中,文本内容“测试文本1测试文本2”对应的文本组件420中的内容包括“测试文本1<quad name=Emoji_AoMan size=80widthoff=1.2heightoff=0.1/>测试文本2”,则对该文本组件420中的内容进行渲染时,分为两部分进行渲染。首先对文本部分421进行渲染,该文本部分421中“测试文本1”和“测试文本2”之间的空格为表情图像411对应的占位符,通过GPU430对该文本部分421进行渲染;对图像部分422进行渲染时,根据该表情图像411在文本部分421中的占位符以及表情图像411的图像参数确定表情图像411的顶点数据,以及确定该表情图像411的纹理数据后,通过GPU430对图像部分422进行渲染,得到终端界面400中的显示内容410。
在一个可选的实施例中,目标图像的渲染过程需要根据顶点数据和纹理数据进行渲染,图5是本申请另一个示例性实施例提供的图文渲染方法的流程图,该方法可以应用于终端中,如图5所示,该方法包括:
步骤501,接收目标应用程序的内容显示信号,该内容显示信号用于在终端界面中显示目标文本和目标图像。
可选地,该目标应用程序对应有图像集合,该图像集合中包括该目标图像。
可选地,该接收目标应用程序的内容显示信号的接收方式在上述步骤301中已进行了详细说明,此处不再赘述。
步骤502,确定目标图像在图像集合中的图像参数。
可选地,该图像参数中包括用于对目标图像进行标识的标识参数。
可选地,该图像参数中还包括占位符参数、目标图像的图像尺寸参数、目标图像的位置偏移参数中的至少一种。其中,占位符参数用于根据目标图像与目标文本之间的位置关系,在目标文本中对目标图像所处的位置通过占位框进行占位;位置偏移参数用于表示目标图像在占位框中的预设偏移量。
步骤503,确定目标图像与目标文本之间对应的位置关系。
可选地,在该位置关系下,目标图像和目标文本被分为至少三部分,每个部分对应目标图像或目标文本。
可选地,该至少三部分中,每两个相邻部分所对应的内容不同,也即,两个相邻部分中,一个部分对应目标图像,而另一个部分对应目标文本。
步骤504,根据位置关系在目标文本对应的文本组件中,增加目标图像的图像参数。
可选地,该文本组件用于对目标文本进行显示,也即,目标文本通过该文本组件进行显示。
可选地,该文本组件中包括目标文本的文本内容。可选地,根据目标文本和目标图像之间对应的位置关系,将目标图像的图像参数增加至文本组件的内容中。
步骤505,对文本组件中的目标文本进行渲染。
可选地,确定目标文本的纹理数据和顶点数据后,对该目标文本进行渲染。可选地,当目标文本中,文本之间包括目标图像时,该目标图像所处的位置被占位符占位,故直接对文本组件中的目标文本进行渲染会保留目标图像所需要显示的区域。
可选地,目标文本的顶点数据根据目标文本所需要显示的位置进行确定,该位置可以是根据目标文本的文本长度确定的,也可以是预设位置,还可以是随机生成的位置,本申请实施例对此不加以限定。
步骤506,根据目标图像的图像参数以及目标图像与目标文本之间的位置关系,确定目标图像的顶点数据。
可选地,该目标图像的顶点数据,根据该目标图像与目标文本之间的位置关系,也即根据目标图像对应的占位符在目标文本中的位置,以及目标图像的图像参数确定。可选地,目标图像对应的占位符在目标文本中的位置可以得到该占位符对应的顶点数据,根据目标图像的位置偏移参数可以确定目标图像在占位框中的预设偏移量,以及根据目标图像的尺寸可以得到目标图像的实际顶点数据。
示意性的,请参考图6,占位符所占的占位框600中包括表情图像610,该表情图像610的尺寸为80,占位框600的尺寸为100,该表情图像610在占位框600中的预设偏移量为向下偏移5个单位,得到表情图像610的实际显示框620,占位框600的左上角顶点坐标为(20,20),则该显示框620的左上角顶点坐标为(5,30)。
步骤507,根据目标图像的标识参数,从图像集合中获取目标图像的纹理数据。
可选地,该图像集合的实现方式包括如下方式中的任意一种:
第一,该图像集合可以实现为内置图像纹理,也即一张集合有可选图像的图像纹理,其中,目标图像为该内置图像纹理中的一张或一组图像;
示意性的,请参考图7,图7是一个示例性实施例提供的内置图像纹理700的示意图,其中,图像710为内置图像纹理700中的一张图像,用于表示一个静止状态的表情,图像721、图像722以及图像723为一组图像,用于表示一个动态的表情,当该动态表情在终端界面中显示时,每隔预设时长需要对该动态表情的显示内容进行更新,如:从图像721更新为图像722,再从图像722更新为图像723,循环更新实现动态表情的动态效果。
第二,该图像集合可以实现为图像文件夹,其中,该目标图像为该图像文件夹中的一个或一组文件。
针对上述两种情况分别进行说明:
第一,当图像集合实现为内置图像纹理时,该内置图像纹理对应有图像信息关系表,该图像信息关系表中包括目标图像的标识参数与目标图像在内置图像纹理中的位置之间的对应关系,则根据目标图像的标识参数,从图像信息关系表中获取目标图像在内置图像纹理中的位置,并根据目标图像在内置图像纹理中的位置,获取内置图像纹理中目标图像的纹理数据;
可选地,目标图像在内置图像纹理中的位置可以以行列坐标的形式表示,也可以以次序的形式表达,还可以以编号的形式表达,本申请实施例对此不加以限定。
第二,当图像集合实现为图像文件夹时,该图像文件夹中包括目标图像对应的文件,根据目标图像的标识参数,从图像文件夹中确定目标图像对应的文件,并从目标图像对应的文件中获取目标图像的纹理数据。
步骤508,根据顶点数据和纹理数据对目标图像进行渲染。
可选地,根据顶点数据和纹理数据,确定目标图像对应的图像组件,并对该图像组件中的目标图像进行渲染。
综上所述,本实施例提供的图文渲染方法,通过在文本组件中增加目标图像对应的参数,在对目标文本和目标图像进行渲染时,直接对文本组件中的目标文本进行整体渲染,以及对文本组件中的目标图像进行整体渲染,即使目标图像中的多个图像分布在目标文本的不同位置,也可以通过文本组件进行整体渲染,或,即使多段文本被目标图像隔开也可以通过将目标图像以参数的形式增加在文本组件中而对多段文本在一个文本组件中进行渲染,避免针对一段图文混合的内容需要通过多个文本组件和图像组件进行渲染而导致渲染效率低下,增加计算量的问题。
本实施例提供的方法,通过目标图像与目标文本之间的位置关系,确定目标图像的顶点坐标,并根据顶点坐标和纹理坐标完成对目标图像的渲染,对目标图像进行渲染的过程较为便捷。
本实施例提供的方法,通过内置图像纹理对目标图像的纹理数据进行获取,提高了目标图像的纹理数据的获取便捷程度。
在一个可选的实施例中,目标图像中包括至少两个子图像,该至少两个子图像实现在一个待生成图像中进行统一渲染,图8是本申请另一个示例性实施例提供的图文渲染方法的流程图,该方法可以实现在终端中,如图8所示,该方法包括:
步骤801,在目标应用程序的启动过程中,加载内置图像纹理。
步骤802,根据内置图像纹理中每个图像的信息建立图像信息关系表。
可选地,该图像信息关系表中包括目标图像的标识参数与目标图像在内置图像纹理中的位置之间的对应关系,可选地,目标图像在内置图像纹理中的位置可以以行列坐标的形式表示,也可以以次序的形式表达,还可以以编号的形式表达,本申请实施例对此不加以限定。可选地,该图像信息关系表中还包括图像的尺寸。
示意性的,以行列坐标标识位置为例,该图像信息关系表如下表一所示:
表一
图像标识参数 | 图像尺寸 | 图像位置 |
010 | 80 | (1,3) |
020 | 75 | (3,4) |
030 | 85 | (2,3) |
040 | 80 | (1,8) |
其中,标识参数为010的图像尺寸为80,在内置图像纹理中位于第一行第三列;标识参数为020的图像尺寸为75,在内置图像纹理中位于第三行第四列;标识参数为030的图像尺寸为85,在内置图像纹理中位于第二行第三列;标识参数为040的图像尺寸为80,在内置图像纹理中位于第一行第八列。
可选地,上表一中以图像信息关系表中包括图像标识参数、图像尺寸以及图像位置的对应关系为例进行说明,该表一中还可以包括图像的位置偏移量参数对应的占位符数量等,本申请实施例对表格的内容不加以限定。
步骤803,接收目标应用程序的内容显示信号,该内容显示信号用于在终端界面中显示目标文本和目标图像。
可选地,该目标应用程序对应有图像集合,该图像集合中包括该目标图像。
可选地,该接收目标应用程序的内容显示信号的接收方式在上述步骤301中已进行了详细说明,此处不再赘述。
步骤804,确定目标图像在图像集合中的图像参数。
可选地,该图像参数中包括用于对目标图像进行标识的标识参数。
可选地,该图像参数中还包括占位符参数、目标图像的图像尺寸参数、目标图像的位置偏移参数中的至少一种。其中,占位符参数用于根据目标图像与目标文本之间的位置关系,在目标文本中对目标图像所处的位置通过占位框进行占位;位置偏移参数用于表示目标图像在占位框中的预设偏移量。
可选地,当目标图像中包括至少两个子图像时,确定该至少两个子图像在图像集合中的图像参数。
可选地,该图像集合为内置图像纹理,该至少两个子图像都是内置图像纹理中的图像。
可选地,根据标识参数获取图像参数的过程中,可以通过上述表一中的数据根据标识参数进行查找,或,图像参数以其他存储形式进行存储时,也可以通过该存储方式对应的获取方式进行获取。
步骤805,确定目标图像与目标文本之间对应的位置关系。
可选地,在该位置关系下,目标图像和目标文本被分为至少三部分,每个部分对应目标图像或目标文本。
可选地,该至少三部分中,每两个相邻部分所对应的内容不同,也即,两个相邻部分中,一个部分对应目标图像,而另一个部分对应目标文本。
可选地,当目标图像中包括至少两个子图像时,确定该至少两个子图像与目标文本之间对应的位置关系。
步骤806,根据位置关系在目标文本对应的文本组件中,增加目标图像的图像参数。
可选地,该文本组件用于对目标文本进行显示,也即,目标文本通过该文本组件进行显示。
可选地,该文本组件中包括目标文本的文本内容。可选地,根据目标文本和目标图像之间对应的位置关系,将目标图像的图像参数增加至文本组件的内容中。
可选地,当目标图像中包括至少两个子图像时,将该至少两个子图像中每个子图像的图像参数增加至文本组件中。
步骤807,对文本组件中的目标文本进行渲染。
可选地,确定目标文本的纹理数据和顶点数据后,对该目标文本进行渲染。可选地,当目标文本中,文本之间包括目标图像时,该目标图像所处的位置被占位符占位,故直接对文本组件中的目标文本进行渲染会保留目标图像所需要显示的区域。
步骤808,根据目标图像的图像参数以及目标图像与目标文本之间的位置关系,确定目标图像的顶点数据。
可选地,该目标图像中包括至少两个子图像时,确定该至少两个子图像的待生成图像。可选地,该待生成图像的尺寸与终端界面的尺寸一致,或,该待生成图像的尺寸为包括该至少两个子图像的最小尺寸。
根据该至少两个子图像中每个子图像与目标文本之间的位置关系以及每个子图像的图像参数,确定每个子图像在待生成图像中的顶点数据。
可选地,当该待生成图像的尺寸与终端界面尺寸一致时,每个子图像的顶点数据的计算方式可以参考上述步骤506;当该待生成图像的尺寸为包括该至少两个子图像的最小尺寸时,根据每个子图像与目标文本之间的位置关系,框选出包括该每个子图像的最小区域,并将该最小区域确定为待生成图像对应的区域,也即,框选出包括目标文本中所有占位符所占的占位框的最小区域,根据占位框的坐标确定该待生成图像的坐标,以及确定每个子图像对应的占位框以及子图像的参数,如:位置偏移参数、尺寸参数等,确定子图像在该待生成图像中的顶点数据。
步骤809,根据目标图像的标识参数,从图像信息关系表中获取目标图像在内置图像纹理中的位置。
可选地,当目标图像中包括至少两个子图像时,根据该至少两个子图像中每个子图像的标识参数,从图像信息关系表中获取每个子图像在内置图像纹理中的位置。
可选地,该根据标识参数获取目标图像在内置图像纹理中的位置的方式可以参考上表一中存储的图像信息,根据该图像信息以及参数标识从该表一中获取目标图像在内置图像纹理中的位置。
步骤810,根据目标图像在内置图像纹理中的位置,获取内置图像纹理中目标图像的纹理数据。
步骤811,根据顶点数据和纹理数据对目标图像进行渲染。
可选地,根据顶点数据和纹理数据,确定目标图像对应的图像组件,并对该图像组件中的目标图像进行渲染。
可选地,当目标图像中包括至少两个子图像时,根据纹理数据对待生成图像进行渲染,可选地,该待生成图像中,除至少两个子图像以外的区域不进行渲染,或,被渲染为透明色。
综上所述,本实施例提供的图文渲染方法,通过在文本组件中增加目标图像对应的参数,在对目标文本和目标图像进行渲染时,直接对文本组件中的目标文本进行整体渲染,以及对文本组件中的目标图像进行整体渲染,即使目标图像中的多个图像分布在目标文本的不同位置,也可以通过文本组件进行整体渲染,或,即使多段文本被目标图像隔开也可以通过将目标图像以参数的形式增加在文本组件中而对多段文本在一个文本组件中进行渲染,避免针对一段图文混合的内容需要通过多个文本组件和图像组件进行渲染而导致渲染效率低下,增加计算量的问题。
本实施例提供的方法,当目标图像中包括至少两个子图像时,将该至少两个子图像在一个待生成图像中进行统一渲染,也即,将至少两个子图像在一个图像组件中进行渲染,而无需针对多个图像通过多个图像组件进行渲染,提高了图像渲染效率,以及减小了CPU的计算压力。
图9是本申请另一个示例性实施例提供的图像渲染过程的流程图,其主要是针对上述目标图像的渲染过程进行说明,如图9所示,该方法包括:
步骤901,解析内置图像信息。
可选地,该内置图像即为内置在文本组件中的图像,也即嵌在目标文本之间的图像。该内置图像内置在文本组件中时,以图像参数也即图像信息的形式进行内置,获取该图像信息,并对该图像信息进行解析。
步骤902,计算内置图像顶点、纹理数据。
根据上述图像信息计算内置图像顶点、纹理数据。可选地,该图像信息中包括内置图像的标识参数、位置偏移参数、尺寸参数等。根据上述参数以及内置图像与目标文本之间的位置关系,确定该内置图像的顶点数据以及纹理数据。
步骤903,更新输出内置图像顶点、纹理数据。
可选地,当该内置图像为原本显示在终端界面中的图像,且需要进行更新时,对该内置图像的顶点数据和纹理数据进行更新。
步骤904,提交GPU渲染。
通过GPU以及更新后的顶点数据和纹理数据对内置图像的显示进行渲染。
综上所述,本实施例提供的图文渲染方法,通过在文本组件中增加目标图像对应的参数,在对目标文本和目标图像进行渲染时,直接对文本组件中的目标文本进行整体渲染,以及对文本组件中的目标图像进行整体渲染,即使目标图像中的多个图像分布在目标文本的不同位置,也可以通过文本组件进行整体渲染,或,即使多段文本被目标图像隔开也可以通过将目标图像以参数的形式增加在文本组件中而对多段文本在一个文本组件中进行渲染,避免针对一段图文混合的内容需要通过多个文本组件和图像组件进行渲染而导致渲染效率低下,增加计算量的问题。
图10是本申请一个示例性实施例提供的终端的结构框图,如图10所示,该终端包括:处理器1010、显示屏1020以及存储器1030;
其中,处理器1010包括CPU和GPU,CPU主要负责实现终端的计算任务,GPU主要负责实现终端的显示任务,即GPU负责根据CPU传递的数据对显示内容进行渲染,并通过显示屏1020对显示内容进行显示。
可选地,该终端中安装有基于Unity引擎1031开发的目标应用程序1032,针对该目标应用程序1032中的显示内容,结合Unity引擎1031的显示规则,由Unity引擎1031根据显示内容提供文本组件以及图像组件,通过CPU对文本组件中文本的顶点数据以及纹理数据进行计算后,CPU将文本的顶点数据以及纹理数据传递至GPU进行文本渲染,针对在文本中与文本内容混合显示的图像,根据图像与文本混合显示时对应的位置关系,在文本组件中增加图像参数,通过CPU对图像的顶点数据以及纹理数据进行计算后,CPU将图像的顶点数据以及纹理数据传递至GPU进行图像渲染,从而实现该显示内容中的文本与图像在显示屏1020中的显示。
图11是本申请一个示例性实施例提供的图文渲染装置的结构框图,该装置可以实现在终端中,如图11所示,该装置包括:接收模块1110、确定模块1120以及渲染模块1130;
接收模块1110,用于接收目标应用程序的内容显示信号,所述内容显示信号用于在终端界面中显示目标文本和目标图像,所述目标应用程序对应有图像集合,所述图像集合中包括所述目标图像;
确定模块1120,用于确定所述目标图像在所述图像集合中的图像参数,所述图像参数中包括用于对所述目标图像进行标识的标识参数;
所述确定模块1120,还用于确定所述目标图像与所述目标文本之间对应的位置关系,所述位置关系下,所述目标图像和所述目标文本被分为至少三部分,每个部分对应所述目标图像或所述目标文本;
所述确定模块1120,还用于根据所述位置关系在所述目标文本对应的文本组件中,增加所述目标图像的所述图像参数;
渲染模块1130,用于对所述文本组件中的所述目标文本和所述目标图像进行渲染。
在一个可选的实施例中,所述渲染模块1130,还用于对所述文本组件中的所述目标文本进行渲染;
所述确定模块1120,还用于根据所述目标图像的所述图像参数以及所述目标图像与所述目标文本之间的所述位置关系,确定所述目标图像的顶点数据,所述顶点数据用于表示所述目标图像在所述终端界面中的显示位置;
如图12所示,所述装置,还包括:
获取模块1140,用于根据所述目标图像的所述标识参数,从所述图像集合中获取所述目标图像的纹理数据;
所述渲染模块1130,还用于根据所述顶点数据和所述纹理数据对所述目标图像进行渲染。
在一个可选的实施例中,所述目标图像中包括至少两个子图像;
所述确定模块1120,还用于确定包括所述至少两个子图像的待生成图像;
所述确定模块1120,还用于根据所述至少两个子图像中每个所述子图像与所述目标文本之间的所述位置关系以及每个子图像的图像参数,确定每个所述子图像在所述待生成图像中的顶点数据;
所述渲染模块1130,还用于根据所述纹理数据对所述待生成图像进行渲染;
其中,所述待生成图像的尺寸与所述终端界面的尺寸一致,或,所述待生成图像的尺寸为包括所述至少两个子图像的最小尺寸。
在一个可选的实施例中,当所述待生成图像的尺寸为包括所述至少两个子图像的最小尺寸时,所述确定模块1120,还用于根据每个所述子图像与所述目标文本之间的所述位置关系,框选包括每个所述子图像的最小区域;
所述确定模块1120,还用于将所述最小区域确定为所述待生成图像对应的区域。
在一个可选的实施例中,所述图像参数中还包括占位符参数、所述目标图像的图像尺寸参数、所述目标图像的位置偏移参数中的至少一种;
其中,所述占位符参数用于根据所述目标图像与所述目标文本之间的所述位置关系,在所述目标文本中对所述目标图像所处的位置通过占位框进行占位;
所述位置偏移参数用于表示所述目标图像在所述占位框中的预设偏移量。
在一个可选的实施例中,所述图像集合为内置图像纹理,所述内置图像纹理对应有图像信息关系表,所述图像信息关系表中包括所述目标图像的标识参数与所述目标图像在所述内置图像纹理中的位置之间的对应关系;
所述获取模块1140,还用于根据所述目标图像的所述标识参数,从所述图像信息关系表中获取所述目标图像在所述内置图像纹理中的位置;
所述获取模块1140,还用于根据所述目标图像在所述内置图像纹理中的位置,获取所述内置图像纹理中所述目标图像的所述纹理数据。
在一个可选的实施例中,所述装置,还包括:
加载模块1150,用于在所述目标应用程序启动过程中,加载所述内置图像纹理;
建立模块1160,用于根据所述内置图像纹理中每个图像的信息建立所述图像信息关系表,所述每个图像的信息包括每个所述图像的标识参数和每个所述图像在所述内置图像纹理中的位置。
在一个可选的实施例中,所述图像集合为图像文件夹,所述图像文件夹中包括所述目标图像对应的文件;
所述获取模块1140,还用于根据所述目标图像的所述标识参数,从所述图像文件夹中确定所述目标图像对应的文件;从所述目标图像对应的文件中获取所述目标图像的所述纹理数据。
需要说明的是:上述实施例提供的图文渲染装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的图文渲染装置与图文渲染方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图13示出了本发明一个示例性实施例提供的终端1300的结构框图。该终端1300可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio LayerIII,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group AudioLayer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1300还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端1300包括有:处理器1301和存储器1302。
处理器1301可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1301可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1301可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1301还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1301所执行以实现本申请中方法实施例提供的图文渲染方法。
在一些实施例中,终端1300还可选包括有:外围设备接口1303和至少一个外围设备。处理器1301、存储器1302和外围设备接口1303之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1303相连。具体地,外围设备包括:射频电路1304、触摸显示屏1305、摄像头1306、音频电路1307、定位组件1308和电源1309中的至少一种。
外围设备接口1303可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1301和存储器1302。在一些实施例中,处理器1301、存储器1302和外围设备接口1303被集成在同一芯片或电路板上;在一些其他实施例中,处理器1301、存储器1302和外围设备接口1303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1304用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1304通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1304将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1304包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1304可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1304还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1305用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1305是触摸显示屏时,显示屏1305还具有采集在显示屏1305的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1301进行处理。此时,显示屏1305还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1305可以为一个,设置终端1300的前面板;在另一些实施例中,显示屏1305可以为至少两个,分别设置在终端1300的不同表面或呈折叠设计;在再一些实施例中,显示屏1305可以是柔性显示屏,设置在终端1300的弯曲表面上或折叠面上。甚至,显示屏1305还可以设置成非矩形的不规则图形,也即异形屏。显示屏1305可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1306用于采集图像或视频。可选地,摄像头组件1306包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1306还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1307可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1301进行处理,或者输入至射频电路1304以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1300的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1301或射频电路1304的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1307还可以包括耳机插孔。
定位组件1308用于定位终端1300的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件1308可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
电源1309用于为终端1300中的各个组件进行供电。电源1309可以是交流电、直流电、一次性电池或可充电电池。当电源1309包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1300还包括有一个或多个传感器1310。该一个或多个传感器1310包括但不限于:加速度传感器1311、陀螺仪传感器1312、压力传感器1313、指纹传感器1314、光学传感器1315以及接近传感器1316。
加速度传感器1311可以检测以终端1300建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1311可以用于检测重力加速度在三个坐标轴上的分量。处理器1301可以根据加速度传感器1311采集的重力加速度信号,控制触摸显示屏1305以横向视图或纵向视图进行用户界面的显示。加速度传感器1311还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1312可以检测终端1300的机体方向及转动角度,陀螺仪传感器1312可以与加速度传感器1311协同采集用户对终端1300的3D动作。处理器1301根据陀螺仪传感器1312采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1313可以设置在终端1300的侧边框和/或触摸显示屏1305的下层。当压力传感器1313设置在终端1300的侧边框时,可以检测用户对终端1300的握持信号,由处理器1301根据压力传感器1313采集的握持信号进行左右手识别或快捷操作。当压力传感器1313设置在触摸显示屏1305的下层时,由处理器1301根据用户对触摸显示屏1305的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1314用于采集用户的指纹,由处理器1301根据指纹传感器1314采集到的指纹识别用户的身份,或者,由指纹传感器1314根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1301授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1314可以被设置终端1300的正面、背面或侧面。当终端1300上设置有物理按键或厂商Logo时,指纹传感器1314可以与物理按键或厂商Logo集成在一起。
光学传感器1315用于采集环境光强度。在一个实施例中,处理器1301可以根据光学传感器1315采集的环境光强度,控制触摸显示屏1305的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1305的显示亮度;当环境光强度较低时,调低触摸显示屏1305的显示亮度。在另一个实施例中,处理器1301还可以根据光学传感器1315采集的环境光强度,动态调整摄像头组件1306的拍摄参数。
接近传感器1316,也称距离传感器,通常设置在终端1300的前面板。接近传感器1316用于采集用户与终端1300的正面之间的距离。在一个实施例中,当接近传感器1316检测到用户与终端1300的正面之间的距离逐渐变小时,由处理器1301控制触摸显示屏1305从亮屏状态切换为息屏状态;当接近传感器1316检测到用户与终端1300的正面之间的距离逐渐变大时,由处理器1301控制触摸显示屏1305从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图13中示出的结构并不构成对终端1300的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。该计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如图3、图5、图8任一所述的图文渲染方法。
可选地,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、固态硬盘(SSD,Solid State Drives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(ReRAM,Resistance RandomAccess Memory)和动态随机存取存储器(DRAM,Dynamic Random Access Memory)。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种图文渲染方法,其特征在于,所述方法包括:
接收目标应用程序的内容显示信号,所述内容显示信号用于在终端界面中显示目标文本和目标图像,所述目标应用程序对应有图像集合,所述图像集合中包括所述目标图像;
确定所述目标图像在所述图像集合中的图像参数,所述图像参数中包括用于对所述目标图像进行标识的标识参数;
确定所述目标图像与所述目标文本之间对应的位置关系,所述位置关系下,所述目标图像和所述目标文本被分为至少三部分,每个部分对应所述目标图像或所述目标文本;
根据所述位置关系在所述目标文本对应的文本组件中,增加所述目标图像的所述图像参数;
对所述文本组件中的所述目标文本和所述目标图像进行渲染。
2.根据权利要求1所述的方法,其特征在于,所述对所述文本组件中的所述目标文本和所述目标图像进行渲染,包括:
对所述文本组件中的所述目标文本进行渲染;
根据所述目标图像的所述图像参数以及所述目标图像与所述目标文本之间的所述位置关系,确定所述目标图像的顶点数据,所述顶点数据用于表示所述目标图像在所述终端界面中的显示位置;
根据所述目标图像的所述标识参数,从所述图像集合中获取所述目标图像的纹理数据;
根据所述顶点数据和所述纹理数据对所述目标图像进行渲染。
3.根据权利要求2所述的方法,其特征在于,所述目标图像中包括至少两个子图像;
所述根据所述目标图像的所述图像参数以及所述目标图像与所述目标文本之间的所述位置关系,确定所述目标图像的顶点数据,包括:
确定包括所述至少两个子图像的待生成图像;
根据所述至少两个子图像中每个所述子图像与所述目标文本之间的所述位置关系以及每个子图像的图像参数,确定每个所述子图像在所述待生成图像中的顶点数据;
所述根据所述顶点数据和所述纹理数据对所述目标图像进行渲染,包括:
根据所述纹理数据对所述待生成图像进行渲染;
其中,所述待生成图像的尺寸与所述终端界面的尺寸一致,或,所述待生成图像的尺寸为包括所述至少两个子图像的最小尺寸。
4.根据权利要求3所述的方法,其特征在于,当所述待生成图像的尺寸为包括所述至少两个子图像的最小尺寸时,所述确定包括所述至少两个子图像的待生成图像,包括:
根据每个所述子图像与所述目标文本之间的所述位置关系,框选包括每个所述子图像的最小区域;
将所述最小区域确定为所述待生成图像对应的区域。
5.根据权利要求1至4任一所述的方法,其特征在于,所述图像参数中还包括占位符参数、所述目标图像的图像尺寸参数、所述目标图像的位置偏移参数中的至少一种;
其中,所述占位符参数用于根据所述目标图像与所述目标文本之间的所述位置关系,在所述目标文本中对所述目标图像所处的位置通过占位框进行占位;
所述位置偏移参数用于表示所述目标图像在所述占位框中的预设偏移量。
6.根据权利要求2至4任一所述的方法,其特征在于,所述图像集合为内置图像纹理,所述内置图像纹理对应有图像信息关系表,所述图像信息关系表中包括所述目标图像的标识参数与所述目标图像在所述内置图像纹理中的位置之间的对应关系;
所述根据所述目标图像的所述标识参数,从所述图像集合中获取所述目标图像的纹理数据,包括:
根据所述目标图像的所述标识参数,从所述图像信息关系表中获取所述目标图像在所述内置图像纹理中的位置;
根据所述目标图像在所述内置图像纹理中的位置,获取所述内置图像纹理中所述目标图像的所述纹理数据。
7.根据权利要求6所述的方法,其特征在于,所述接收目标应用程序的内容显示信号之前,还包括:
在所述目标应用程序启动过程中,加载所述内置图像纹理;
根据所述内置图像纹理中每个图像的信息建立所述图像信息关系表,所述每个图像的信息包括每个所述图像的标识参数和每个所述图像在所述内置图像纹理中的位置。
8.根据权利要求2至4任一所述的方法,其特征在于,所述图像集合为图像文件夹,所述图像文件夹中包括所述目标图像对应的文件;
所述根据所述目标图像的所述标识参数,从所述图像集合中获取所述目标图像的纹理数据,包括:
根据所述目标图像的所述标识参数,从所述图像文件夹中确定所述目标图像对应的文件;
从所述目标图像对应的文件中获取所述目标图像的所述纹理数据。
9.一种图文渲染装置,其特征在于,所述装置包括:
接收模块,用于接收目标应用程序的内容显示信号,所述内容显示信号用于在终端界面中显示目标文本和目标图像,所述目标应用程序对应有图像集合,所述图像集合中包括所述目标图像;
确定模块,用于确定所述目标图像在所述图像集合中的图像参数,所述图像参数中包括用于对所述目标图像进行标识的标识参数;
所述确定模块,还用于确定所述目标图像与所述目标文本之间对应的位置关系,所述位置关系下,所述目标图像和所述目标文本被分为至少三部分,每个部分对应所述目标图像或所述目标文本;
所述确定模块,还用于根据所述位置关系在所述目标文本对应的文本组件中,增加所述目标图像的所述图像参数;
渲染模块,用于对所述文本组件中的所述目标文本和所述目标图像进行渲染。
10.根据权利要求9所述的装置,其特征在于,所述渲染模块,还用于对所述文本组件中的所述目标文本进行渲染;
所述确定模块,还用于根据所述目标图像的所述图像参数以及所述目标图像与所述目标文本之间的所述位置关系,确定所述目标图像的顶点数据,所述顶点数据用于表示所述目标图像在所述终端界面中的显示位置;
所述装置,还包括:
获取模块,用于根据所述目标图像的所述标识参数,从所述图像集合中获取所述目标图像的纹理数据;
所述渲染模块,还用于根据所述顶点数据和所述纹理数据对所述目标图像进行渲染。
11.根据权利要求10所述的装置,其特征在于,所述目标图像中包括至少两个子图像;
所述确定模块,还用于确定包括所述至少两个子图像的待生成图像;
所述确定模块,还用于根据所述至少两个子图像中每个所述子图像与所述目标文本之间的所述位置关系以及每个子图像的图像参数,确定每个所述子图像在所述待生成图像中的顶点数据;
所述渲染模块,还用于根据所述纹理数据对所述待生成图像进行渲染;
其中,所述待生成图像的尺寸与所述终端界面的尺寸一致,或,所述待生成图像的尺寸为包括所述至少两个子图像的最小尺寸。
12.根据权利要求11所述的装置,其特征在于,当所述待生成图像的尺寸为包括所述至少两个子图像的最小尺寸时,所述确定模块,还用于根据每个所述子图像与所述目标文本之间的所述位置关系,框选包括每个所述子图像的最小区域;
所述确定模块,还用于将所述最小区域确定为所述待生成图像对应的区域。
13.根据权利要求9至12任一所述的装置,其特征在于,所述图像参数中还包括占位符参数、所述目标图像的图像尺寸参数、所述目标图像的位置偏移参数中的至少一种;
其中,所述占位符参数用于根据所述目标图像与所述目标文本之间的所述位置关系,在所述目标文本中对所述目标图像所处的位置通过占位框进行占位;
所述位置偏移参数用于表示所述目标图像在所述占位框中的预设偏移量。
14.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至8任一所述的图文渲染方法。
15.一种计算机可读存储介质,其特征在于,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至8任一所述的图文渲染方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910243874.2A CN109948581B (zh) | 2019-03-28 | 2019-03-28 | 图文渲染方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910243874.2A CN109948581B (zh) | 2019-03-28 | 2019-03-28 | 图文渲染方法、装置、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109948581A true CN109948581A (zh) | 2019-06-28 |
CN109948581B CN109948581B (zh) | 2023-05-05 |
Family
ID=67012224
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910243874.2A Active CN109948581B (zh) | 2019-03-28 | 2019-03-28 | 图文渲染方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109948581B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110368692A (zh) * | 2019-07-19 | 2019-10-25 | 网易(杭州)网络有限公司 | 一种图文混排方法和装置 |
CN110599581A (zh) * | 2019-08-29 | 2019-12-20 | Oppo广东移动通信有限公司 | 图像模型数据处理方法、装置以及电子设备 |
CN110827391A (zh) * | 2019-11-12 | 2020-02-21 | 腾讯科技(深圳)有限公司 | 图像渲染方法、装置、设备及存储介质 |
WO2021037201A1 (zh) * | 2019-08-28 | 2021-03-04 | 腾讯科技(深圳)有限公司 | 字符串显示处理方法、装置、终端及存储介质 |
CN113641926A (zh) * | 2021-07-21 | 2021-11-12 | 深圳市六度人和科技有限公司 | 信息显示方法、设备及存储介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1173494A (ja) * | 1997-06-12 | 1999-03-16 | Hewlett Packard Co <Hp> | イメージ処理方法 |
US20060087709A1 (en) * | 2004-10-25 | 2006-04-27 | Canon Kabushiki Kaisha | Image processing apparatus and method |
CN102722861A (zh) * | 2011-05-06 | 2012-10-10 | 新奥特(北京)视频技术有限公司 | 一种基于cpu的图形渲染引擎及实现方法 |
CN103678267A (zh) * | 2012-09-17 | 2014-03-26 | 腾讯科技(深圳)有限公司 | 一种图文混合内容的排版和渲染方法及系统 |
CN105096361A (zh) * | 2014-05-06 | 2015-11-25 | 伊莱比特汽车公司 | 用于处理字符串以在人/机界面上进行图形表示的技术 |
CN105095161A (zh) * | 2014-05-07 | 2015-11-25 | 腾讯科技(北京)有限公司 | 一种显示富文本信息的方法及装置 |
CN105183760A (zh) * | 2015-07-24 | 2015-12-23 | 北京奇虎科技有限公司 | 一种网页组件加载方法和装置 |
CN106341723A (zh) * | 2016-09-30 | 2017-01-18 | 广州华多网络科技有限公司 | 一种弹幕显示方法及装置 |
CN106462559A (zh) * | 2014-02-07 | 2017-02-22 | 谷歌公司 | 任意大小内容项生成 |
CN108205960A (zh) * | 2016-12-19 | 2018-06-26 | 北京四维图新科技股份有限公司 | 一种文字渲染的方法和装置、电子地图制作系统及导航系统 |
CN108765520A (zh) * | 2018-05-18 | 2018-11-06 | 腾讯科技(深圳)有限公司 | 文本信息的渲染方法和装置、存储介质、电子装置 |
CN108805960A (zh) * | 2018-05-31 | 2018-11-13 | 北京字节跳动网络技术有限公司 | 图文混排方法、装置、计算机可读存储介质和终端 |
CN109408136A (zh) * | 2018-09-12 | 2019-03-01 | Oppo广东移动通信有限公司 | 信息处理方法、装置、存储介质及电子设备 |
-
2019
- 2019-03-28 CN CN201910243874.2A patent/CN109948581B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1173494A (ja) * | 1997-06-12 | 1999-03-16 | Hewlett Packard Co <Hp> | イメージ処理方法 |
US20060087709A1 (en) * | 2004-10-25 | 2006-04-27 | Canon Kabushiki Kaisha | Image processing apparatus and method |
CN102722861A (zh) * | 2011-05-06 | 2012-10-10 | 新奥特(北京)视频技术有限公司 | 一种基于cpu的图形渲染引擎及实现方法 |
CN103678267A (zh) * | 2012-09-17 | 2014-03-26 | 腾讯科技(深圳)有限公司 | 一种图文混合内容的排版和渲染方法及系统 |
CN106462559A (zh) * | 2014-02-07 | 2017-02-22 | 谷歌公司 | 任意大小内容项生成 |
CN105096361A (zh) * | 2014-05-06 | 2015-11-25 | 伊莱比特汽车公司 | 用于处理字符串以在人/机界面上进行图形表示的技术 |
CN105095161A (zh) * | 2014-05-07 | 2015-11-25 | 腾讯科技(北京)有限公司 | 一种显示富文本信息的方法及装置 |
CN105183760A (zh) * | 2015-07-24 | 2015-12-23 | 北京奇虎科技有限公司 | 一种网页组件加载方法和装置 |
CN106341723A (zh) * | 2016-09-30 | 2017-01-18 | 广州华多网络科技有限公司 | 一种弹幕显示方法及装置 |
CN108205960A (zh) * | 2016-12-19 | 2018-06-26 | 北京四维图新科技股份有限公司 | 一种文字渲染的方法和装置、电子地图制作系统及导航系统 |
CN108765520A (zh) * | 2018-05-18 | 2018-11-06 | 腾讯科技(深圳)有限公司 | 文本信息的渲染方法和装置、存储介质、电子装置 |
CN108805960A (zh) * | 2018-05-31 | 2018-11-13 | 北京字节跳动网络技术有限公司 | 图文混排方法、装置、计算机可读存储介质和终端 |
CN109408136A (zh) * | 2018-09-12 | 2019-03-01 | Oppo广东移动通信有限公司 | 信息处理方法、装置、存储介质及电子设备 |
Non-Patent Citations (2)
Title |
---|
无幻: "Unity Text 插入图片", 《HTTPS://BLOG.CSDN.NET/AKOF1314/ARTICLE/DETAILS/49028279》 * |
神码编程: "Unity UGUI实现图文混排", 《HTTPS://BLOG.CSDN.NET/QQ992817263/ARTICLE/DETAILS/51000744》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110368692A (zh) * | 2019-07-19 | 2019-10-25 | 网易(杭州)网络有限公司 | 一种图文混排方法和装置 |
CN110368692B (zh) * | 2019-07-19 | 2023-08-22 | 网易(杭州)网络有限公司 | 一种图文混排方法和装置 |
WO2021037201A1 (zh) * | 2019-08-28 | 2021-03-04 | 腾讯科技(深圳)有限公司 | 字符串显示处理方法、装置、终端及存储介质 |
CN114885202A (zh) * | 2019-08-28 | 2022-08-09 | 腾讯数码(天津)有限公司 | 字符串显示处理方法、装置、终端及存储介质 |
US11743556B2 (en) | 2019-08-28 | 2023-08-29 | Tencent Technology (Shenzhen) Company Limited | Character string display processing method and apparatus, terminal, and storage medium |
CN110599581A (zh) * | 2019-08-29 | 2019-12-20 | Oppo广东移动通信有限公司 | 图像模型数据处理方法、装置以及电子设备 |
CN110599581B (zh) * | 2019-08-29 | 2023-03-31 | Oppo广东移动通信有限公司 | 图像模型数据处理方法、装置以及电子设备 |
CN110827391A (zh) * | 2019-11-12 | 2020-02-21 | 腾讯科技(深圳)有限公司 | 图像渲染方法、装置、设备及存储介质 |
CN110827391B (zh) * | 2019-11-12 | 2021-02-12 | 腾讯科技(深圳)有限公司 | 图像渲染方法、装置、设备及存储介质 |
CN113641926A (zh) * | 2021-07-21 | 2021-11-12 | 深圳市六度人和科技有限公司 | 信息显示方法、设备及存储介质 |
CN113641926B (zh) * | 2021-07-21 | 2024-05-07 | 深圳市六度人和科技有限公司 | 信息显示方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109948581B (zh) | 2023-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109948581A (zh) | 图文渲染方法、装置、设备及可读存储介质 | |
CN109712224A (zh) | 虚拟场景的渲染方法、装置及智能设备 | |
CN108595239A (zh) | 图片处理方法、装置、终端及计算机可读存储介质 | |
CN109977333A (zh) | 网页显示方法、装置、计算机设备及存储介质 | |
CN109634489A (zh) | 发表评论的方法、装置、设备及可读存储介质 | |
CN110121094A (zh) | 视频合拍模板的显示方法、装置、设备及存储介质 | |
CN110309243A (zh) | 获取实景电子地图的方法、装置、设备和存储介质 | |
CN110064200A (zh) | 基于虚拟环境的物体构建方法、装置及可读存储介质 | |
CN110046018A (zh) | 显示消息的方法、装置、电子设备及介质 | |
CN110047152A (zh) | 基于虚拟环境的物体构建方法、装置及可读存储介质 | |
CN110288689A (zh) | 对电子地图进行渲染的方法和装置 | |
CN109886208A (zh) | 物体检测的方法、装置、计算机设备及存储介质 | |
CN110335224A (zh) | 图像处理方法、装置、计算机设备及存储介质 | |
CN110059686A (zh) | 字符识别方法、装置、设备及可读存储介质 | |
CN108491748A (zh) | 图形码的识别及生成方法、装置及计算机可读存储介质 | |
CN109992685A (zh) | 一种检索图片的方法及装置 | |
CN109922356A (zh) | 视频推荐方法、装置和计算机可读存储介质 | |
CN108829488A (zh) | 生成Web可交互页面的方法、装置及存储介质 | |
CN110081902A (zh) | 导航中的方向指示方法、装置及终端 | |
CN109947338A (zh) | 图像切换显示方法、装置、电子设备及存储介质 | |
CN108900925A (zh) | 设置直播模板的方法和装置 | |
CN109241497A (zh) | 文本处理方法及装置 | |
CN110147503A (zh) | 信息发布方法、装置、计算机设备和存储介质 | |
CN109218751A (zh) | 推荐音频的方法、装置及系统 | |
CN110290426A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |