一种显示画面拉伸布局调整方法及装置与流程

文档序号:31211401发布日期:2022-08-20 03:37阅读:73来源:国知局
一种显示画面拉伸布局调整方法及装置与流程

1.本发明涉及画面显示技术领域,尤其涉及一种显示画面拉伸布局调整方法及装置。


背景技术:

2.在无线投屏行业,设备投屏显示是很重要的一个环节,要如何布局投屏画面显得尤为重要,不同的布局能给用户不同的感受,一般的投屏显示画面布局是将所有投屏画面尽可能等分地平分屏幕尺寸,例如,显示4个投屏设备,一般会将屏幕分成4等分,分别平分屏幕的宽和高,形成屏幕上部分2个画面,下部分2个画面,又如显示5个投屏设备一般会将屏幕分成6等分,以屏幕的宽的一半为准,屏幕上方为3个设备画面(取3等分),屏幕下方为2个设备画面(上方2个设备画面,下方3个设备画面亦可)(取2等分,剩下1等分进行间隔);当用户希望突出某个窗口的画面而不影响其他窗口显示时,该如何处理呢。
3.在现有技术中,该策略可以通用从左往右排列(或从右往左排列)的画面动态布局,也可以通用从上往下排列(或从下往上排列)的画面动态布局。在该布局下,用户可通过对某个(或多个)窗口进行拉伸操作,而其他窗口在其拉伸过程中实现自动布局,该种布局设计者或用户,无需考虑多个设备投屏画面的显示问题,有多少设备进行拉伸操作,就会对其他投屏设备进行自动适应布局,100个设备,乃至1000个设备同样适用。对于当前实现重点突出某设备画面的方式,多见于把想要突出的设备画面进行全屏放大操作,而其他设备是暂时隐藏;另外一种方式属于固定布局,固定好会有一个较大的设备画面展示区域,而其余区域放置其周围;现有技术导致的问题为显示不友好、加大设计者的工作量及布局不灵活;即:在多设备进行投屏时,若用户需要重点突出某个投屏设备画面与其他设备画面内容进行对比,此时仅显示当前重点画面明显是一种不合适的情况,这样用户需要从“全屏”和“还原”状态不断切换,不断进行对比,导致画面显示情况不友好;而对于固定布局而言,首先,只能固定画面尺寸为重点显示画面,而无法根据用户的需要进行动态调整,导致整个布局比较死板,不够灵活;其次,设计者需要根据用户不同的需求设计不同数量的重点画面显示区域,如此,设计者的工作量无形中就慢慢变大且繁琐;最后,该固定布局的重点画面区域一般无法进行伸缩变换,也导致它不够灵活。


技术实现要素:

4.本发明的目的在于克服现有技术的不足,本发明提供了一种显示画面拉伸布局调整方法及装置,实现在多画面显示中呈现一种不一样的画面展示方式,同时用户能对不同显示画面进行伸缩操作,增加了显示画面布局的新鲜度,同时减少了显示画面的适配难度。
5.为了解决上述技术问题,本发明实施例提供了一种显示画面拉伸布局调整方法,所述方法包括:
6.在用户进行设备上的显示画面的拉伸操作时,获得用户选取的拉伸显示画面;
7.将所述拉伸显示画面从第一存储空间中备份到第二存储空间中,并对所述拉伸显
示画面的宽和高进行记录;
8.基于所述拉伸显示画面的宽和高在所述设备上进行显示画面的重新布局处理,形成重新布局显示画面;
9.对所述重新布局显示画面进行画面比例成型修正处理,并在画面比例成型修正处理后进行显示。
10.可选的,所述在用户进行设备上的显示画面的拉伸操作之前,还包括:
11.基于设备的基本布局显示策略对当前显示的显示画面进行显示布局处理,形成初始布局显示画面;
12.其中,所述基本布局显示策略为从左到右及从上到下的方向进行布局显示的策略,并且基于用户的设置将所述基本显示策略分为在设备上限制显示画面的显示数量和在设备上无限制显示画面的显示数量。
13.可选的,所述在用户进行设备上的显示画面的拉伸操作之前,还包括:
14.将所述初始布局显示画面中的每一个显示画面存储至第一存储空间中。
15.可选的,所述将所述拉伸显示画面从第一存储空间中备份到第二存储空间中,包括:
16.从所述第一存储空间中的初始布局显示画面中的第一个显示画面开始进行遍历处理,并判断遍历到的当前显示画面是否为用户选择的拉伸显示画面;
17.若是,则将当前显示画面从所述第一从此空间中备份到所述第二存储空间中,并进入下一个显示画面的遍历处理;
18.若否,则进入下一个显示画面的遍历处理;
19.直至遍历完所述第一存储空间中的初始布局显示画面中的所有显示画面。
20.可选的,所述对所述拉伸显示画面的宽和高进行记录,包括:
21.将所述拉伸显示画面的宽记录为scalewidth,所述拉伸显示画面的高记录为scaleheigh;其中,minw≤scalewidth≤maxw,minh≤scaleheigh≤maxh;minw、minh为所述设备的屏幕宽的5%、屏幕高的5%;maxw、maxh为所述设备的屏幕最大宽高。
22.可选的,所述对所述拉伸显示画面的宽和高进行记录之后,还包括:
23.获得所述设备上显示画面的总行数和所述拉伸显示画面所在行中的显示画面总数;
24.令temph为除拉伸显示画面所在行以外所有行的最小高度总和,tempw为拉伸显示画面所在行中除拉伸显示画面以外的所有显示画面的最小宽度总和;
25.判断scaleheigh+temph是否大于设备的屏幕高度,若否则结束;
26.若是,则将temph的值重新赋予为设备的屏幕高度减去scaleheigh;
27.判断scalewidth+tempw否大于设备的屏幕宽度,若否则结束;
28.若是,则将tempw的值重新赋予为设备的屏幕宽度减去scalewidth。
29.可选的,所述tempw的值改变后,所述拉伸显示画面的所在行的其他显示画面的平均宽度计算公式为:
[0030][0031]
其中,avewidth表示拉伸显示画面的所在行的其他显示画面的平均宽度;w表示设
备的屏幕宽度;scalewidth表示拉伸显示画面的宽度;sum表示拉伸显示画面的所在行显示画面总数;
[0032]
所述temph的值改变后,所述拉伸显示画面的所在行的其他显示画面的平均高度计算公式为:
[0033][0034]
其中,aveheigh表示拉伸显示画面的所在行的其他显示画面的平均高度;h表示设备的屏幕高度;scaleheigh表示拉伸显示画面的高度;rolsum表示设备上显示画面的总行数。
[0035]
可选的,所述基于所述拉伸显示画面的宽和高在所述设备上进行显示画面的重新布局处理,形成重新布局显示画面,包括:
[0036]
在所述第一存储空间中的所述设备上的显示画面的第一行开始进行遍历处理,并判断遍历的当前行中是否存在拉伸显示画面;
[0037]
若当前行中存在拉伸显示画面,则求出当前行中的拉伸显示画面的所在行的其他显示画面的平均宽度和拉伸显示画面的高度,并遍历当前行中所有的显示画面是否为所述拉伸显示画面;
[0038]
若为所述拉伸显示画面时,以拉伸显示画面的宽度和拉伸显示画面的高度的尺寸为在所述设备的屏幕上显示的尺寸;
[0039]
若不为所述拉伸显示画面时,以当前行中的拉伸显示画面的所在行的其他显示画面的平均宽度和拉伸显示画面的高度的尺寸为在所述设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面;
[0040]
若当前行中不存在拉伸显示画面,则求出当前行中显示画面的平均宽度和拉伸显示画面的所在行的其他显示画面的平均高度,并以当前行中显示画面的平均宽度和拉伸显示画面的所在行的其他显示画面的平均高度为在所述设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面。
[0041]
可选的,所述对所述重新布局显示画面进行画面比例成型修正处理,并在画面比例成型修正处理后进行显示,包括:
[0042]
判断重新布局显示画面的当前行中是否存在拉伸显示画面;
[0043]
若存在拉伸显示画面时,则遍历当前行中的所有显示画面,并判断遍历的当前显示画面是否为拉伸显示画面;
[0044]
若为拉伸显示画面时,则以拉伸显示画面的宽和高的尺寸进行显示;
[0045]
若不为拉伸显示画面时,则以拉伸显示画面的高和所述拉伸显示画面的所在行的其他显示画面的平均宽的尺寸进行显示;
[0046]
若不存在拉伸显示画面时,获得当前行中的显示画面数量,并判断当前行中的显示画面数量是否与第一行中的显示画面数量相同;
[0047]
若相同,则以当前行的显示画面的宽和拉伸显示画面的所在行的其他显示画面的平均高度的尺寸进行显示;
[0048]
若不相同,则基于当前行中的显示画面数量求取得到当前行的剩余宽度;
[0049]
基于所述当前行的剩余宽度计算获得当前行的显示画面空余值,并根据所述当前
行的显示画面空余值进行显示间隔,并根据当前行的显示画面的宽和拉伸显示画面的所在行的其他显示画面的平均高度的尺寸进行显示。
[0050]
另外,本发明实施例还提供了一种显示画面拉伸布局调整装置,所述装置包括:
[0051]
获取模块:用于在用户进行设备上的显示画面的拉伸操作时,获得用户选取的拉伸显示画面;
[0052]
备份记录模块:用于将所述拉伸显示画面从第一存储空间中备份到第二存储空间中,并对所述拉伸显示画面的宽和高进行记录;
[0053]
重新布局模块:用于基于所述拉伸显示画面的宽和高在所述设备上进行显示画面的重新布局处理,形成重新布局显示画面;
[0054]
修正模块:用于对所述重新布局显示画面进行画面比例成型修正处理,并在画面比例成型修正处理后进行显示。
[0055]
在本发明实施例中,实现在多画面显示中呈现一种不一样的画面展示方式,同时用户能对不同显示画面进行伸缩操作,增加了显示画面布局的新鲜度,同时减少了显示画面的适配难度。
附图说明
[0056]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见的,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0057]
图1是本发明实施例中的显示画面拉伸布局调整方法的流程示意图;
[0058]
图2是本发明实施例中的显示画面拉伸布局调整装置的结构组成示意图;
[0059]
图3是本发明实施例中的显示画面与显示画面或屏幕与显示画面之间的空余值示意图。
具体实施方式
[0060]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0061]
实施例一
[0062]
请参阅图1,图1是本发明实施例中的显示画面拉伸布局调整方法的流程示意图。
[0063]
如图1所示,一种显示画面拉伸布局调整方法,所述方法包括:
[0064]
s11:在用户进行设备上的显示画面的拉伸操作时,获得用户选取的拉伸显示画面;
[0065]
在本发明具体实施过程中,所述在用户进行设备上的显示画面的拉伸操作之前,还包括:基于设备的基本布局显示策略对当前显示的显示画面进行显示布局处理,形成初始布局显示画面;其中,所述基本布局显示策略为从左到右及从上到下的方向进行布局显示的策略,并且基于用户的设置将所述基本显示策略分为在设备上限制显示画面的显示数
量和在设备上无限制显示画面的显示数量。
[0066]
进一步的,所述在用户进行设备上的显示画面的拉伸操作之前,还包括:将所述初始布局显示画面中的每一个显示画面存储至第一存储空间中。
[0067]
具体的,首先需要根据设备的基本布局显示策略来对当前所需要显示的显示画面进行一个显示布局处理,从而形成一个初始布局显示画面;基本布局显示策略为从左到右及从上到下的方向进行布局显示的策略,并且基于用户的设置将所述基本显示策略分为在设备上限制显示画面的显示数量和在设备上无限制显示画面的显示数量;同时显示画面的显示数量达到限制数量时,所采取的策略也存在两种,一种为独占,另一种为非独占;独占即指:当前显示画面不会因其他显示画面而退出,反之,则为非独占。
[0068]
基本布局策略的可以类比是“正方形”,意思并不是一定要在屏幕上将各个显示画面形成正方形或整体形成一个正方形,而是基本布局有一种往正方形图形形成的趋势,利用正方形的基本等式:长=宽,在显示画面中,长相当于屏幕上每一行的显示画面的数量,宽相当于屏幕上每一列的显示画面的数量,而本策略就是抓住长与宽之间的关系(相等或不相等)推算出画面显示的位置,将投屏画面显示第一行的显示画面的数量(standard)作为该“类正方形”的长和宽的标准,即该“类正方形”的长和宽为standard。对n行与n列(n》=0且n《=standard)同时与standard进行比较,如:第1行与第1列同时与standard进行比较、第2行与第2列同时与standard进行比较。当发现第k行(或k列,k《=n)与standard不等时,从第k行开始,到standard行结束,寻找第一行与standard不等的行数i(i》=k且i《=standard),此时在第i行末尾添加该显示画面,布局的分布情况便可以形成。
[0069]
然后将初始布局显示画面中的每一个显示画面存储至第一存储空间中,既可以在设备的屏幕上接受用户对设备的屏幕上所显示的显示画面进行拉伸操作时,获取到用户选取的拉伸显示画面。
[0070]
s12:将所述拉伸显示画面从第一存储空间中备份到第二存储空间中,并对所述拉伸显示画面的宽和高进行记录;
[0071]
在本发明具体实施过程中,所述将所述拉伸显示画面从第一存储空间中备份到第二存储空间中,包括:从所述第一存储空间中的初始布局显示画面中的第一个显示画面开始进行遍历处理,并判断遍历到的当前显示画面是否为用户选择的拉伸显示画面;若是,则将当前显示画面从所述第一从此空间中备份到所述第二存储空间中,并进入下一个显示画面的遍历处理;若否,则进入下一个显示画面的遍历处理;直至遍历完所述第一存储空间中的初始布局显示画面中的所有显示画面。
[0072]
进一步的,所述对所述拉伸显示画面的宽和高进行记录,包括:将所述拉伸显示画面的宽记录为scalewidth,所述拉伸显示画面的高记录为scaleheigh;其中,minw≤scalewidth≤maxw,minh≤scaleheigh≤maxh;minw、minh为所述设备的屏幕宽的5%、屏幕高的5%;maxw、maxh为所述设备的屏幕最大宽高。
[0073]
进一步的,所述对所述拉伸显示画面的宽和高进行记录之后,还包括:获得所述设备上显示画面的总行数和所述拉伸显示画面所在行中的显示画面总数;令temph为除拉伸显示画面所在行以外所有行的最小高度总和,tempw为拉伸显示画面所在行中除拉伸显示画面以外的所有显示画面的最小宽度总和;判断scaleheigh+temph是否大于设备的屏幕高度,若否则结束;若是,则将temph的值重新赋予为设备的屏幕高度减去scaleheigh;判断
scalewidth+tempw否大于设备的屏幕宽度,若否则结束;若是,则将tempw的值重新赋予为设备的屏幕宽度减去scalewidth。
[0074]
进一步的,所述tempw的值改变后,所述拉伸显示画面的所在行的其他显示画面的平均宽度计算公式为:
[0075][0076]
其中,avewidth表示拉伸显示画面的所在行的其他显示画面的平均宽度;w表示设备的屏幕宽度;scalewidth表示拉伸显示画面的宽度;sum表示拉伸显示画面的所在行显示画面总数;所述temph的值改变后,所述拉伸显示画面的所在行的其他显示画面的平均高度计算公式为:
[0077][0078]
其中,aveheigh表示拉伸显示画面的所在行的其他显示画面的平均高度;h表示设备的屏幕高度;scaleheigh表示拉伸显示画面的高度;rolsum表示设备上显示画面的总行数。
[0079]
具体的,在用户选择一个显示画面进行拉伸操作时,将用户所选择的显示画面从第一存储空间中备份到第二存储空间中;其中,用户可以设置显示画面的最小尺寸minsize或最大尺寸maxsize,若用户无设置minsize和maxsize,为了让所有画面都能显示出来,minsize和maxsize会给予一个固定值(minsize给予的固定值推荐在minw*minh(屏幕宽的5%*屏幕高的5%)的情况,而maxsize的固定值推荐在maxw*maxh(屏幕尺寸))若用户对某个设备画面进行拉伸。
[0080]
在备份时,首先从第一存储空间中的初始布局显示画面中的第一个显示画面开始进行遍历处理,并判断遍历到的当前显示画面是否为用户选择的拉伸显示画面;若是,则将当前显示画面从第一从此空间中备份到第二存储空间中,并进入下一个显示画面的遍历处理;若否,则进入下一个显示画面的遍历处理;直至遍历完第一存储空间中的初始布局显示画面中的所有显示画面。
[0081]
其中,对拉伸显示画面的宽和高进行记录为:将拉伸显示画面的宽记录为scalewidth,拉伸显示画面的高记录为scaleheigh;其中,minw≤scalewidth≤maxw,minh≤scaleheigh≤maxh;minw、minh为设备的屏幕宽的5%、屏幕高的5%;maxw、maxh为设备的屏幕最大宽高。
[0082]
并且在对拉伸显示画面的宽和高进行记录之后,需要获得设备上显示画面的总行数和拉伸显示画面所在行中的显示画面总数;然后令temph为除拉伸显示画面所在行以外所有行的最小高度总和,tempw为拉伸显示画面所在行中除拉伸显示画面以外的所有显示画面的最小宽度总和;并且判断scaleheigh+temph是否大于设备的屏幕高度,若否则结束;若是,则将temph的值重新赋予为设备的屏幕高度减去scaleheigh;判断scalewidth+tempw否大于设备的屏幕宽度,若否则结束;若是,则将tempw的值重新赋予为设备的屏幕宽度减去scalewidth。
[0083]
在tempw的值改变后,该拉伸显示画面的所在行的其他显示画面的平均宽度计算公式如下:
[0084][0085]
其中,avewidth表示拉伸显示画面的所在行的其他显示画面的平均宽度;w表示设备的屏幕宽度;scalewidth表示拉伸显示画面的宽度;sum表示拉伸显示画面的所在行显示画面总数;temph的值改变后,该拉伸显示画面的所在行的其他显示画面的平均高度计算公式如下:
[0086][0087]
其中,aveheigh表示拉伸显示画面的所在行的其他显示画面的平均高度;h表示设备的屏幕高度;scaleheigh表示拉伸显示画面的高度;rolsum表示设备上显示画面的总行数。
[0088]
s13:基于所述拉伸显示画面的宽和高在所述设备上进行显示画面的重新布局处理,形成重新布局显示画面;
[0089]
在本发明具体实施过程中,所述基于所述拉伸显示画面的宽和高在所述设备上进行显示画面的重新布局处理,形成重新布局显示画面,包括:在所述第一存储空间中的所述设备上的显示画面的第一行开始进行遍历处理,并判断遍历的当前行中是否存在拉伸显示画面;若当前行中存在拉伸显示画面,则求出当前行中的拉伸显示画面的所在行的其他显示画面的平均宽度和拉伸显示画面的高度,并遍历当前行中所有的显示画面是否为所述拉伸显示画面;若为所述拉伸显示画面时,以拉伸显示画面的宽度和拉伸显示画面的高度的尺寸为在所述设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面;若不为所述拉伸显示画面时,以当前行中的拉伸显示画面的所在行的其他显示画面的平均宽度和拉伸显示画面的高度的尺寸为在所述设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面;若当前行中不存在拉伸显示画面,则求出当前行中显示画面的平均宽度和拉伸显示画面的所在行的其他显示画面的平均高度,并以当前行中显示画面的平均宽度和拉伸显示画面的所在行的其他显示画面的平均高度为在所述设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面。
[0090]
具体的,需要对进行拉伸操作后所形成的的拉伸显示画面进行重新布局,则需要以行为单位在第一存储空间中进行按照行的方式遍历操作是否存在有对应的拉伸显示画面,在不存在时,则获取第一行存在的显示画面的总数n,求出当前行显示画面的平均显示区域的宽度,即nwidth=屏幕宽度/n;nwidth即为当前行中所有显示画面的平均显示区域的宽度,aveheigh为其高度;若存在,则当前行除伸缩显示画面的画面外,每个显示画面以avewidth为宽度,scaleheigh为高度作为显示画面的显示区域,以上述求得的各个值重新进行布局。
[0091]
首先需要在第一存储空间中的设备上的显示画面的第一行开始进行逐行遍历处理,并且判断遍历到的当前行中是否存在拉伸显示画面;在当前行中存在拉伸显示画面时,则需要求出当前行中的拉伸显示画面的在行的其他显示画面的平均宽度和拉伸显示画面的高度,并遍历当前行中所有的显示画面是否为拉伸显示画面;若为拉伸显示画面时,以拉伸显示画面的宽度和拉伸显示画面的高度的尺寸为在该设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面;若不为拉伸显示画面时,以当前行中的拉
伸显示画面的所在行的其他显示画面的平均宽度和拉伸显示画面的高度的尺寸为在该设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面;若当前行中不存在拉伸显示画面,则求出当前行中显示画面的平均宽度和拉伸显示画面的所在行的其他显示画面的平均高度,并以当前行中显示画面的平均宽度和拉伸显示画面的所在行的其他显示画面的平均高度为在该设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面。
[0092]
s14:对所述重新布局显示画面进行画面比例成型修正处理,并在画面比例成型修正处理后进行显示。
[0093]
在本发明具体实施过程中,所述对所述重新布局显示画面进行画面比例成型修正处理,并在画面比例成型修正处理后进行显示,包括:判断重新布局显示画面的当前行中是否存在拉伸显示画面;若存在拉伸显示画面时,则遍历当前行中的所有显示画面,并判断遍历的当前显示画面是否为拉伸显示画面;若为拉伸显示画面时,则以拉伸显示画面的宽和高的尺寸进行显示;若不为拉伸显示画面时,则以拉伸显示画面的高和所述拉伸显示画面的所在行的其他显示画面的平均宽的尺寸进行显示;若不存在拉伸显示画面时,获得当前行中的显示画面数量,并判断当前行中的显示画面数量是否与第一行中的显示画面数量相同;若相同,则以当前行的显示画面的宽和拉伸显示画面的所在行的其他显示画面的平均高度的尺寸进行显示;若不相同,则基于当前行中的显示画面数量求取得到当前行的剩余宽度;基于所述当前行的剩余宽度计算获得当前行的显示画面空余值,并根据所述当前行的显示画面空余值进行显示间隔,并根据当前行的显示画面的宽和拉伸显示画面的所在行的其他显示画面的平均高度的尺寸进行显示。
[0094]
具体的,在完成画面重新布局之后,并不会得到比较规整的显示画面布局,此时需要通过显示画面修正的方式进行显示画面布局的美化处理,当前的显示画面数量小于等于第一行设备数量,且该行的每一个显示画面的宽度为nwidth时,剩下的宽度值,求法思路为:(当前屏幕宽度-(nwidth*该行显示画面的总数)/该行显示画面的总数)得到的空余值如图3所示。
[0095]
在判断重新布局显示画面的当前行中是否存在拉伸显示画面;并在判断存在拉伸显示画面时,则遍历当前行中的所有显示画面,并判断遍历的当前显示画面是否为拉伸显示画面;若为拉伸显示画面时,则以拉伸显示画面的宽和高的尺寸进行显示;若不为拉伸显示画面时,则以拉伸显示画面的高和拉伸显示画面的所在行的其他显示画面的平均宽的尺寸进行显示;若不存在拉伸显示画面时,获得当前行中的显示画面数量,并判断当前行中的显示画面数量是否与第一行中的显示画面数量相同;若相同,则以当前行的显示画面的宽和拉伸显示画面的所在行的其他显示画面的平均高度的尺寸进行显示;若不相同,则根据当前行中的显示画面数量求取得到当前行的剩余宽度;并且根据当前行的剩余宽度计算获得当前行的显示画面空余值,并根据当前行的显示画面空余值进行显示间隔,并根据当前行的显示画面的宽和拉伸显示画面的所在行的其他显示画面的平均高度的尺寸进行显示。
[0096]
在本发明实施例中,实现在多画面显示中呈现一种不一样的画面展示方式,同时用户能对不同显示画面进行伸缩操作,增加了显示画面布局的新鲜度,同时减少了显示画面的适配难度。
[0097]
实施例二
[0098]
请参阅图2,图2是本发明实施例中的显示画面拉伸布局调整装置的结构组成示意图。
[0099]
如图2所示,一种显示画面拉伸布局调整装置,所述装置包括:
[0100]
获取模块21:用于在用户进行设备上的显示画面的拉伸操作时,获得用户选取的拉伸显示画面;
[0101]
在本发明具体实施过程中,所述在用户进行设备上的显示画面的拉伸操作之前,还包括:基于设备的基本布局显示策略对当前显示的显示画面进行显示布局处理,形成初始布局显示画面;其中,所述基本布局显示策略为从左到右及从上到下的方向进行布局显示的策略,并且基于用户的设置将所述基本显示策略分为在设备上限制显示画面的显示数量和在设备上无限制显示画面的显示数量。
[0102]
进一步的,所述在用户进行设备上的显示画面的拉伸操作之前,还包括:将所述初始布局显示画面中的每一个显示画面存储至第一存储空间中。
[0103]
具体的,首先需要根据设备的基本布局显示策略来对当前所需要显示的显示画面进行一个显示布局处理,从而形成一个初始布局显示画面;基本布局显示策略为从左到右及从上到下的方向进行布局显示的策略,并且基于用户的设置将所述基本显示策略分为在设备上限制显示画面的显示数量和在设备上无限制显示画面的显示数量;同时显示画面的显示数量达到限制数量时,所采取的策略也存在两种,一种为独占,另一种为非独占;独占即指:当前显示画面不会因其他显示画面而退出,反之,则为非独占。
[0104]
基本布局策略的可以类比是“正方形”,意思并不是一定要在屏幕上将各个显示画面形成正方形或整体形成一个正方形,而是基本布局有一种往正方形图形形成的趋势,利用正方形的基本等式:长=宽,在显示画面中,长相当于屏幕上每一行的显示画面的数量,宽相当于屏幕上每一列的显示画面的数量,而本策略就是抓住长与宽之间的关系(相等或不相等)推算出画面显示的位置,将投屏画面显示第一行的显示画面的数量(standard)作为该“类正方形”的长和宽的标准,即该“类正方形”的长和宽为standard。对n行与n列(n》=0且n《=standard)同时与standard进行比较,如:第1行与第1列同时与standard进行比较、第2行与第2列同时与standard进行比较。当发现第k行(或k列,k《=n)与standard不等时,从第k行开始,到standard行结束,寻找第一行与standard不等的行数i(i》=k且i《=standard),此时在第i行末尾添加该显示画面,布局的分布情况便可以形成。
[0105]
然后将初始布局显示画面中的每一个显示画面存储至第一存储空间中,既可以在设备的屏幕上接受用户对设备的屏幕上所显示的显示画面进行拉伸操作时,获取到用户选取的拉伸显示画面。
[0106]
备份记录模块22:用于将所述拉伸显示画面从第一存储空间中备份到第二存储空间中,并对所述拉伸显示画面的宽和高进行记录;
[0107]
在本发明具体实施过程中,所述将所述拉伸显示画面从第一存储空间中备份到第二存储空间中,包括:从所述第一存储空间中的初始布局显示画面中的第一个显示画面开始进行遍历处理,并判断遍历到的当前显示画面是否为用户选择的拉伸显示画面;若是,则将当前显示画面从所述第一从此空间中备份到所述第二存储空间中,并进入下一个显示画面的遍历处理;若否,则进入下一个显示画面的遍历处理;直至遍历完所述第一存储空间中的初始布局显示画面中的所有显示画面。
[0108]
进一步的,所述对所述拉伸显示画面的宽和高进行记录,包括:将所述拉伸显示画面的宽记录为scalewidth,所述拉伸显示画面的高记录为scaleheigh;其中,minw≤scalewidth≤maxw,minh≤scaleheigh≤maxh;minw、minh为所述设备的屏幕宽的5%、屏幕高的5%;maxw、maxh为所述设备的屏幕最大宽高。
[0109]
进一步的,所述对所述拉伸显示画面的宽和高进行记录之后,还包括:获得所述设备上显示画面的总行数和所述拉伸显示画面所在行中的显示画面总数;令temph为除拉伸显示画面所在行以外所有行的最小高度总和,tempw为拉伸显示画面所在行中除拉伸显示画面以外的所有显示画面的最小宽度总和;判断scaleheigh+temph是否大于设备的屏幕高度,若否则结束;若是,则将temph的值重新赋予为设备的屏幕高度减去scaleheigh;判断scalewidth+tempw否大于设备的屏幕宽度,若否则结束;若是,则将tempw的值重新赋予为设备的屏幕宽度减去scalewidth。
[0110]
进一步的,所述tempw的值改变后,所述拉伸显示画面的所在行的其他显示画面的平均宽度计算公式为:
[0111][0112]
其中,avewidth表示拉伸显示画面的所在行的其他显示画面的平均宽度;w表示设备的屏幕宽度;scalewidth表示拉伸显示画面的宽度;sum表示拉伸显示画面的所在行显示画面总数;所述temph的值改变后,所述拉伸显示画面的所在行的其他显示画面的平均高度计算公式为:
[0113][0114]
其中,aveheigh表示拉伸显示画面的所在行的其他显示画面的平均高度;h表示设备的屏幕高度;scaleheigh表示拉伸显示画面的高度;rolsum表示设备上显示画面的总行数。
[0115]
具体的,在用户选择一个显示画面进行拉伸操作时,将用户所选择的显示画面从第一存储空间中备份到第二存储空间中;其中,用户可以设置显示画面的最小尺寸minsize或最大尺寸maxsize,若用户无设置minsize和maxsize,为了让所有画面都能显示出来,minsize和maxsize会给予一个固定值(minsize给予的固定值推荐在minw*minh(屏幕宽的5%*屏幕高的5%)的情况,而maxsize的固定值推荐在maxw*maxh(屏幕尺寸))若用户对某个设备画面进行拉伸。
[0116]
在备份时,首先从第一存储空间中的初始布局显示画面中的第一个显示画面开始进行遍历处理,并判断遍历到的当前显示画面是否为用户选择的拉伸显示画面;若是,则将当前显示画面从第一从此空间中备份到第二存储空间中,并进入下一个显示画面的遍历处理;若否,则进入下一个显示画面的遍历处理;直至遍历完第一存储空间中的初始布局显示画面中的所有显示画面。
[0117]
其中,对拉伸显示画面的宽和高进行记录为:将拉伸显示画面的宽记录为scalewidth,拉伸显示画面的高记录为scaleheigh;其中,minw≤scalewidth≤maxw,minh≤scaleheigh≤maxh;minw、minh为设备的屏幕宽的5%、屏幕高的5%;maxw、maxh为设备的屏幕最大宽高。
[0118]
并且在对拉伸显示画面的宽和高进行记录之后,需要获得设备上显示画面的总行数和拉伸显示画面所在行中的显示画面总数;然后令temph为除拉伸显示画面所在行以外所有行的最小高度总和,tempw为拉伸显示画面所在行中除拉伸显示画面以外的所有显示画面的最小宽度总和;并且判断scaleheigh+temph是否大于设备的屏幕高度,若否则结束;若是,则将temph的值重新赋予为设备的屏幕高度减去scaleheigh;判断scalewidth+tempw否大于设备的屏幕宽度,若否则结束;若是,则将tempw的值重新赋予为设备的屏幕宽度减去scalewidth。
[0119]
在tempw的值改变后,该拉伸显示画面的所在行的其他显示画面的平均宽度计算公式如下:
[0120][0121]
其中,avewidth表示拉伸显示画面的所在行的其他显示画面的平均宽度;w表示设备的屏幕宽度;scalewidth表示拉伸显示画面的宽度;sum表示拉伸显示画面的所在行显示画面总数;temph的值改变后,该拉伸显示画面的所在行的其他显示画面的平均高度计算公式如下:
[0122][0123]
其中,aveheigh表示拉伸显示画面的所在行的其他显示画面的平均高度;h表示设备的屏幕高度;scaleheigh表示拉伸显示画面的高度;rolsum表示设备上显示画面的总行数。
[0124]
重新布局模块23:用于基于所述拉伸显示画面的宽和高在所述设备上进行显示画面的重新布局处理,形成重新布局显示画面;
[0125]
在本发明具体实施过程中,所述基于所述拉伸显示画面的宽和高在所述设备上进行显示画面的重新布局处理,形成重新布局显示画面,包括:在所述第一存储空间中的所述设备上的显示画面的第一行开始进行遍历处理,并判断遍历的当前行中是否存在拉伸显示画面;若当前行中存在拉伸显示画面,则求出当前行中的拉伸显示画面的所在行的其他显示画面的平均宽度和拉伸显示画面的高度,并遍历当前行中所有的显示画面是否为所述拉伸显示画面;若为所述拉伸显示画面时,以拉伸显示画面的宽度和拉伸显示画面的高度的尺寸为在所述设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面;若不为所述拉伸显示画面时,以当前行中的拉伸显示画面的所在行的其他显示画面的平均宽度和拉伸显示画面的高度的尺寸为在所述设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面;若当前行中不存在拉伸显示画面,则求出当前行中显示画面的平均宽度和拉伸显示画面的所在行的其他显示画面的平均高度,并以当前行中显示画面的平均宽度和拉伸显示画面的所在行的其他显示画面的平均高度为在所述设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面。
[0126]
具体的,需要对进行拉伸操作后所形成的的拉伸显示画面进行重新布局,则需要以行为单位在第一存储空间中进行按照行的方式遍历操作是否存在有对应的拉伸显示画面,在不存在时,则获取第一行存在的显示画面的总数n,求出当前行显示画面的平均显示区域的宽度,即nwidth=屏幕宽度/n;nwidth即为当前行中所有显示画面的平均显示区域
的宽度,aveheigh为其高度;若存在,则当前行除伸缩显示画面的画面外,每个显示画面以avewidth为宽度,scaleheigh为高度作为显示画面的显示区域,以上述求得的各个值重新进行布局。
[0127]
首先需要在第一存储空间中的设备上的显示画面的第一行开始进行逐行遍历处理,并且判断遍历到的当前行中是否存在拉伸显示画面;在当前行中存在拉伸显示画面时,则需要求出当前行中的拉伸显示画面的在行的其他显示画面的平均宽度和拉伸显示画面的高度,并遍历当前行中所有的显示画面是否为拉伸显示画面;若为拉伸显示画面时,以拉伸显示画面的宽度和拉伸显示画面的高度的尺寸为在该设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面;若不为拉伸显示画面时,以当前行中的拉伸显示画面的所在行的其他显示画面的平均宽度和拉伸显示画面的高度的尺寸为在该设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面;若当前行中不存在拉伸显示画面,则求出当前行中显示画面的平均宽度和拉伸显示画面的所在行的其他显示画面的平均高度,并以当前行中显示画面的平均宽度和拉伸显示画面的所在行的其他显示画面的平均高度为在该设备的屏幕上显示的尺寸进行显示画面的重新布局处理,形成重新布局显示画面。
[0128]
修正模块24:用于对所述重新布局显示画面进行画面比例成型修正处理,并在画面比例成型修正处理后进行显示。
[0129]
在本发明具体实施过程中,所述对所述重新布局显示画面进行画面比例成型修正处理,并在画面比例成型修正处理后进行显示,包括:判断重新布局显示画面的当前行中是否存在拉伸显示画面;若存在拉伸显示画面时,则遍历当前行中的所有显示画面,并判断遍历的当前显示画面是否为拉伸显示画面;若为拉伸显示画面时,则以拉伸显示画面的宽和高的尺寸进行显示;若不为拉伸显示画面时,则以拉伸显示画面的高和所述拉伸显示画面的所在行的其他显示画面的平均宽的尺寸进行显示;若不存在拉伸显示画面时,获得当前行中的显示画面数量,并判断当前行中的显示画面数量是否与第一行中的显示画面数量相同;若相同,则以当前行的显示画面的宽和拉伸显示画面的所在行的其他显示画面的平均高度的尺寸进行显示;若不相同,则基于当前行中的显示画面数量求取得到当前行的剩余宽度;基于所述当前行的剩余宽度计算获得当前行的显示画面空余值,并根据所述当前行的显示画面空余值进行显示间隔,并根据当前行的显示画面的宽和拉伸显示画面的所在行的其他显示画面的平均高度的尺寸进行显示。
[0130]
具体的,在完成画面重新布局之后,并不会得到比较规整的显示画面布局,此时需要通过显示画面修正的方式进行显示画面布局的美化处理,当前的显示画面数量小于等于第一行设备数量,且该行的每一个显示画面的宽度为nwidth时,剩下的宽度值,求法思路为:(当前屏幕宽度-(nwidth*该行显示画面的总数)/该行显示画面的总数)得到的空余值如图3所示。
[0131]
在判断重新布局显示画面的当前行中是否存在拉伸显示画面;并在判断存在拉伸显示画面时,则遍历当前行中的所有显示画面,并判断遍历的当前显示画面是否为拉伸显示画面;若为拉伸显示画面时,则以拉伸显示画面的宽和高的尺寸进行显示;若不为拉伸显示画面时,则以拉伸显示画面的高和拉伸显示画面的所在行的其他显示画面的平均宽的尺寸进行显示;若不存在拉伸显示画面时,获得当前行中的显示画面数量,并判断当前行中的
显示画面数量是否与第一行中的显示画面数量相同;若相同,则以当前行的显示画面的宽和拉伸显示画面的所在行的其他显示画面的平均高度的尺寸进行显示;若不相同,则根据当前行中的显示画面数量求取得到当前行的剩余宽度;并且根据当前行的剩余宽度计算获得当前行的显示画面空余值,并根据当前行的显示画面空余值进行显示间隔,并根据当前行的显示画面的宽和拉伸显示画面的所在行的其他显示画面的平均高度的尺寸进行显示。
[0132]
在本发明实施例中,实现在多画面显示中呈现一种不一样的画面展示方式,同时用户能对不同显示画面进行伸缩操作,增加了显示画面布局的新鲜度,同时减少了显示画面的适配难度。
[0133]
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(rom,readonly memory)、随机存取存储器(ram,random access memory)、磁盘或光盘等。
[0134]
另外,以上对本发明实施例所提供的一种显示画面拉伸布局调整方法及装置进行了详细介绍,本文中应采用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1