界面绘制方法、相关设备及通信系统与流程

摘要: 本技术涉及计算机,尤其涉及界面绘制方法、相关设备及通信系统。背景技术:1、视窗作为现代桌面操作系统的核心模块,以窗口管理和显示服务为核心,为操作系统提供了图形渲...
界面绘制方法、相关设备及通信系统与流程

本技术涉及计算机,尤其涉及界面绘制方法、相关设备及通信系统。

背景技术:

1、视窗作为现代桌面操作系统的核心模块,以窗口管理和显示服务为核心,为操作系统提供了图形渲染、界面交互、显示管理等基础能力。其中,显示服务的一大核心功能是对用户界面进行绘制,并将绘制结果上屏显示。但是,当前已有的界面绘制方法存在较强的局限性。

技术实现思路

1、本技术实施例提供了界面绘制方法、相关设备及通信系统,应用进程直接将界面元素的轻量级的绘制参数传递至渲染服务进程,然后由渲染服务进程基于界面元素的绘制参数构建出绘制引擎的图元对象和样式对象。相比在应用进程和渲染服务进程中传递基于绘制参数构建的大数据量的绘制引擎对象,直接传递绘制参数这种轻量级数据能够显著降低应用进程和渲染服务进程之间的数据传输量,从而降低设备的负载。

2、第一方面,本技术实施例提供了一种界面绘制方法,该界面绘制方法可以包括:通过应用进程对用户界面中的界面元素进行解析,得到需要绘制的用户界面中的界面元素的绘制参数。其中,界面元素的绘制参数可以包含形状参数和样式参数。获得界面元素的绘制参数后,可以将界面元素的绘制参数从应用进程传递至渲染服务进程。然后,可以通过渲染服务进程基于绘制参数中的形状参数构建图元对象,基于形状参数中的样式参数构建样式对象。其中,图元对象可以用于定义绘制界面元素的形状,样式对象可以用于定义绘制界面元素的显示效果。最后,可以利用上述构建出的图元对象和样式对象绘制出对应上述界面元素的用户界面。

3、通过实施第一方面提供的方法,应用进程直接将界面元素的轻量级的绘制参数传递至渲染服务进程,显著降低应用进程和渲染服务进程之间的数据传输量,从而降低设备的负载。

4、结合第一方面,在一些实施例中,将界面元素的绘制参数从应用进程传递至渲染服务进程,可以包括:以第一数据格式对界面元素的绘制参数编码,然后再将编码后的界面元素的绘制参数从应用进程传递至渲染服务进程。其中,第一数据格式可以包括形状参数字段和样式参数字段,形状参数字段可以用于填充绘制参数中的形状参数,样式参数字段可以用于填充绘制参数中的样式参数。

5、结合第一方面,在一些实施例中,在通过渲染服务进程基于形状参数构建图元对象、基于样式参数构建样式参数之前,还包括:从以第一数据格式进行编码的界面元素的绘制参数中解析出形状参数和样式参数。

6、在上述实施例中,渲染服务进程接收到的是根据第一数据格式进行编码的绘制参数,其中通过形状参数字段和样式参数字段分别用填充形状参数和样式参数,可以提升渲染服务进程从绘制参数中解析形状参数和样式参数并构建图元对象和样式对象的效率,进而提升界面绘制的效率。

7、结合第一方面,在一些实施例中,第一数据格式中的样式参数字段还可以包括第一掩码。第一掩码可以包括多个比特位。其中,每一个比特位对应于绘制参数中的一个样式参数。基于第一掩码的设置,样式参数字段的长度可以与第一掩码的取值正相关,每一个比特位可以用于指示样式参数字段中是否包括与这个比特位对应的样式参数的字段。

8、结合第一方面,在一些实施例中,每一个比特位可以用于指示样式参数字段中是否包括与这个比特位对应的样式参数的字段,可以包括:当一个样式参数对应的比特位为第一值时,样式参数字段中可以包括这个样式参数的字段;当一个样式参数对应的比特位不为第一值时,样式参数字段中可以不包括这个样式参数的字段。第一值可以示例性的设置为1。所谓的样式参数字段的长度与第一掩码的取值正相关可以解释为:第一掩码中取值为第一值的比特位越多,样式参数字段中可以包含更多的字段,相应的样式参数字段的长度可以更长。

9、在上述实施例中,可以有效地通过第一掩码中各个比特位的取值来确定样式参数字段中包含哪些样式参数,降低参数解析难度,进而提升界面绘制的效率。

10、结合第一方面,在一些实施例中,界面元素的样式参数可以包括第一样式参数,第一样式参数可以包括颜色、抗锯齿、混合模式等。当第一样式参数在界面元素的绘制参数中的取值不是默认值时,第一掩码中对应第一样式参数的比特位可以第一值;相应的,当第一样式参数在界面元素的绘制参数中的取值是默认值时,第一掩码中对应第一样式参数的比特位不为第一值。

11、在上述实施例中,对于第一样式参数,只有当第一样式参数在绘制参数中的取值与默认值不同时,才将第一样式参数在第一掩码中对应的比特位设备为第一值。也就是说,只有当第一样式参数在绘制参数中的取值与默认值不同时,样式参数字段中才包含第一样式参数的字段并填充第一样式参数。当第一样式参数在绘制参数中的取值与默认值相同时,样式参数字段中可以不填充第一样式参数,减少不必要的数据传输,从而减少数据传输量,降低设备负载。

12、结合第一方面,在一些实施例中,界面元素的样式参数还可以包括第二样式参数,第二样式参数可以包括以下一项或多项:着色器效果、颜色滤波、蒙版滤波、图像滤波、色域、路径效果、描边、混合器等。在第一数据格式的样式参数字段中,包括第一样式参数的字段和第二样式参数的字段。其中,第一样式参数的字段可以用于填充第一样式参数的数据。第二样式参数的字段可以进一步包括索引字段和数据字段,索引字段可以用于填充数据字段的地址,数据字段可以用于填充第二样式参数的数据。

13、在上述实施例中,可以在第二样式参数的字段中设置用于指示数据填充位置的索引字段,提升数据可读性,从而可以提升界面绘制的效率。

14、结合第一方面,在一些实施例中,第一数据格式中还可以包括以下一项或多项:形状大小字段、样式大小字段。其中,形状大小字段可以用于填充形状参数字段的长度,样式大小字段可以用于填充样式参数字段的长度。形状大小字段和样式大小字段可以设置在第一数据格式的最前面,这样就可以有效的确定形状参数字段、样式参数字段的长度和地址,从而提高绘制参数的解析效率。

15、结合第一方面,在一些实施例中,应用进程和渲染服务进程可以运行在同一个设备上,此时,将所述界面元素的绘制参数从所述应用进程传递至渲染服务进程,具体包括:通过进程间通信,将界面元素的绘制参数从应用进程传递至渲染服务进程。进程间通信可以包括:基于共享内存的进程间通信等等。

16、在上述实施例中,可以通过进程间通信直接将界面元素的绘制参数从应用进程传递至渲染服务进程,传递轻量级的绘制参数可以降低数据传输量,进而降低设备负载。

17、结合第一方面,在一些实施例中,应用进程运行在第一设备上,渲染服务进程运行在第二设备上,第一设备和所述第二设备之间建立有第一通信连接。将所述界面元素的绘制参数从所述应用进程传递至渲染服务进程,具体包括:通过第一通信连接,第一设备将界面元素的绘制参数传递至第二设备。其中,第一通信连接可以是以下任意一项:蓝牙(bluetooth,bt)通信连接、近场通信(near field communication,nfc)连接、无线局域网(wireless local area network,wlan)通信连接、蜂窝移动通信连接等等。

18、在上述实施例中,第一设备通过第一通信连接将界面元素的绘制参数传递至第二设备,第二设备可以直接根据界面元素的绘制参数构建绘制引擎的图元对象和样式对象,从而避免由于第一设备和第二设备的绘制引擎不同,第二设备无法解析第一设备构建的绘制引擎对象,从而导致界面绘制失败的问题。

19、第二方面,本技术实施例提供了一种电子设备,其中可以包括存储器、处理器。其中,存储器上可以存储计算机程序,当处理器执行上述计算机程序时,可以执行如第一方面以及第一方面中任一可能的实现方式描述的方法。

20、第三方面,本技术实施例提供了一种通信系统,该通信系统可以包括第一设备和第二设备。第一设备上可以运行有应用进程,第二设备上可以运行有渲染服务进程,第一设备和第二设备可以共同实现界面绘制。其中,第一设备可以用于对用户界面中的界面元素进行解析,得到界面元素的绘制参数。其中,界面元素的绘制参数可以包含形状参数和样式参数。在得到界面元素的绘制参数以后,第一设备可以用于将界面元素的绘制参数传递至第二设备。第二设备接收到来自第一设备的界面元素的绘制参数以后,可以用于基于绘制参数中的形状参数构建图元对象,基于绘制参数中的样式参数构建样式对象。然后,第二设备还可以用于利用构建出的图元对象和样式对象绘制对应界面元素的用户界面。

21、通过第三方面提供的通信系统,可以直接将第一设备解析出的界面元素传递至第二设备,第二设备可以根据界面元素的绘制参数构建渲染引擎对象,包括图元对象和样式对象。然后第二设备可以根据构建出的渲染引擎对象绘制用户界面。在界面绘制的过程中,不依赖于第一设备的绘制引擎,从而不需要第一设备和第二设备的绘制引擎类型一致。

22、结合第三方面,在一些实施例中,第一设备用于将界面元素的绘制参数传递至第二设备,可以包括:以第一数据格式对界面元素的绘制参数编码,然后再将编码后的绘制参数从第一设备传递至第二设备。其中,第一数据格式可以包括形状参数字段和样式参数字段,形状参数字段可以用于填充绘制参数中的形状参数,样式参数字段可以用于填充绘制参数中的样式参数。

23、结合第三方面,在一些实施例中,在第二设备用于基于形状参数构建图元对象、基于样式参数构建样式参数之前,第二设备还可以用于从以第一数据格式进行编码的界面元素的绘制参数中解析出形状参数和样式参数。

24、在上述实施例中,第二设备接收到的是根据第一数据格式进行编码的绘制参数,其中通过形状参数字段和样式参数字段分别用填充形状参数和样式参数,可以提升第二设备从绘制参数中解析形状参数和样式参数并构建图元对象和样式对象的效率,进而提升界面绘制的效率。

25、结合第三方面,在一些实施例中,第一数据格式中的样式参数字段还可以包括第一掩码。第一掩码可以包括多个比特位。其中,每一个比特位对应于绘制参数中的一个样式参数。基于第一掩码的设置,样式参数字段的长度可以与第一掩码的取值正相关,每一个比特位可以用于指示样式参数字段中是否包括与这个比特位对应的样式参数的字段。

26、结合第三方面,在一些实施例中,每一个比特位可以用于指示样式参数字段中是否包括与这个比特位对应的样式参数的字段,可以包括:当一个样式参数对应的比特位为第一值时,样式参数字段中可以包括这个样式参数的字段;当一个样式参数对应的比特位不为第一值时,样式参数字段中可以不包括这个样式参数的字段。第一值可以示例性的设置为1。所谓的样式参数字段的长度与第一掩码的取值正相关可以解释为:第一掩码中取值为第一值的比特位越多,样式参数字段中可以包含更多的字段,相应的样式参数字段的长度可以更长。

27、在上述实施例中,可以有效地通过第一掩码中各个比特位的取值来确定样式参数字段中包含哪些样式参数,降低参数解析难度,进而提升界面绘制的效率。

28、结合第三方面,在一些实施例中,界面元素的样式参数可以包括第一样式参数,第一样式参数可以包括颜色、抗锯齿、混合模式等。当第一样式参数在界面元素的绘制参数中的取值不是默认值时,第一掩码中对应第一样式参数的比特位可以第一值;相应的,当第一样式参数在界面元素的绘制参数中的取值是默认值时,第一掩码中对应第一样式参数的比特位不为第一值。

29、在上述实施例中,对于第一样式参数,只有当第一样式参数在绘制参数中的取值与默认值不同时,才将第一样式参数在第一掩码中对应的比特位设备为第一值。也就是说,只有当第一样式参数在绘制参数中的取值与默认值不同时,样式参数字段中才包含第一样式参数的字段并填充第一样式参数。当第一样式参数在绘制参数中的取值与默认值相同时,样式参数字段中可以不填充第一样式参数,减少不必要的数据传输,从而减少数据传输量,降低设备负载。

30、结合第三方面,在一些实施例中,界面元素的样式参数还可以包括第二样式参数,第二样式参数可以包括以下一项或多项:着色器效果、颜色滤波、蒙版滤波、图像滤波、色域、路径效果、描边、混合器等。在第一数据格式的样式参数字段中,包括第一样式参数的字段和第二样式参数的字段。其中,第一样式参数的字段可以用于填充第一样式参数的数据。第二样式参数的字段可以进一步包括索引字段和数据字段,索引字段可以用于填充数据字段的地址,数据字段可以用于填充第二样式参数的数据。

31、在上述实施例中,可以在第二样式参数的字段中设置用于指示数据填充位置的索引字段,提升数据可读性,从而可以提升界面绘制的效率。

32、结合第三方面,在一些实施例中,第一数据格式中还可以包括以下一项或多项:形状大小字段、样式大小字段。其中,形状大小字段可以用于填充形状参数字段的长度,样式大小字段可以用于填充样式参数字段的长度。形状大小字段和样式大小字段可以设置在第一数据格式的最前面,这样就可以有效的确定形状参数字段、样式参数字段的长度和地址,从而提高绘制参数的解析效率。

33、结合第三方面,在一些实施例中,第一设备和第二设备之间可以建立第一通信连接,第一设备用于将界面元素的绘制参数传递至第二设备,具体包括:第一设备可以用于通过第一通信连接将界面元素的绘制参数传递至第二设备。其中,第一通信连接可以是以下任意一项:蓝牙(bluetooth,bt)通信连接、近场通信(near field communication,nfc)连接无线局域网(wireless local area network,wlan)通信连接、蜂窝移动通信连接等等。

34、第四方面,本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,当计算机程序被处理器执行时,可以实现如第一方面以及第一方面中任一可能的实现方式,或第三方面以及第三方面中任一可能的实现方式。

35、第五方面,本技术实施例提供一种计算机程序产品,当计算机程序被处理器执行时,可以实现如第一方面以及第一方面中任一可能的实现方式,或第三方面以及第三方面中任一可能的实现方式。