发明内容
本发明解决的问题是提供一种图形处理方法、图形处理装置及移动终端,用以节约内存资源,解决系统的内存紧张的问题。
为解决上述问题,本发明提供一种图形处理方法,包括:
提供前缓冲器、后缓冲器、内存小于所述前缓冲器/后缓冲器的中缓冲器;
所述前缓冲器和后缓冲器内分别对应填充有第一图形和第二图形;
填充第三图形至前缓冲器,所述第三图形为第一图形和第二图形的组合,第一图形和第二图形位于第三图形的部分对应为第一图形显示区和第二图形显示区,反之对应为第一图形非显示区和第二图形非显示区;
所述填充第三图形包括:一次或多次提取所述第一图形非显示区至所述中缓冲器,以使得所述前缓冲器获得空余空间,并利用所述空余空间,转移填充所述第二图形显示区,形成第三图形,第一图形显示区和第二图形显示区分别位于第三图形的第一位置和第二位置。
可选的,所述第一图形显示区为零或者非零。
可选的,若所述第二图形显示区/第一图形非显示区数据量为S1,所述中缓冲器的内存为D,则S1=D*M+A,M为以D为单次提取量,填充所述第一图形非显示区至中缓冲器的最大次数,A为小于D的补充提取量。
可选的,若所述第二图形显示区/第一图形非显示区数据量为S1,所述中缓冲器的内存为D,则S1=D+B*F,F为以B为单次提取量,填充所述第一图形的部分数据至中缓冲器的次数。
可选的,若所述第二图形显示区/第一图形非显示区数据量小于所述中缓冲器的内存,所述填充第三图形为一次提取所述第一图形非显示区至所述中缓冲器,所述前缓冲器获得空余空间;将第一图形显示区平移至所述第一位置;将所述第二图形显示区填充至所述第二位置。
可选的,若所述第二图形显示区/第一图形非显示区数据量小于所述中缓冲器的内存,所述填充第三图形为一次提取第一图形非显示区至所述中缓冲器,所述前缓冲器获得空余空间;将第一图形显示区平移至第一位置;将所述中缓冲器的第一图形非显示区填充至所述第二位置;将第二图形显示区填充至第二子位置,将第二图形非显示区填充至所述第一子位置,第一子位置与第二子位置分别对应于第一位置与第二位置;互换第二位置和第二子位置的填充内容,将第二图形显示区平移至所述第二位置。
可选的,若所述第二图形显示区/第一图形非显示区数据量大于所述中缓冲器的内存,则所述填充第三图形包括第一步:进行若干次第一转存,直至第一图形显示区平移至所述第一位置;第一图形非显示区平移至所述第二位置,所述第一转存为:提取第一图形的部分非显示区至所述中缓冲器,所述前缓冲器获得空余空间;将剩余的第一图形平移,填充空余空间;接着,将所述中缓冲器的内容填充至前缓冲器内。
可选的,所述填充第三图形包括第二步:进行若干次第二转存,直至第二图形显示区平移至第二子位置;第二图形非显示区平移至第一子位置;所述第一子位置与第二子位置分别与第一位置与第二位置对应;将第二图形显示区填充至所述第二位置;所述第二转存为:提取第二图形的部分显示区至所述中缓冲器,所述后缓冲器获得空余空间;将剩余的第二图形平移,填充空余空间;接着,将所述中缓冲器的内容填充至后缓冲器内。
可选的,若所述第二图形的显示区/第一图形的非显示区数据量大于所述中缓冲器的内存,所述填充第三图形为进行若干次第三转存,直至第一图形显示区平移至所述第一位置;将后缓冲器内的第二图形显示区填充至所述第二位置;所述第三转存为,将第一图形的部分非显示区填充至所述中缓冲器,所述前缓冲器获得空余空间;将剩余的第一图形平移,填充空余空间;接着将所述后缓冲器的部分显示区填充至前缓冲器内;再将中缓冲器的内容填充至后缓冲器内。
本发明还提供一种图形处理装置,包括前缓冲器、后缓冲器,还包括:内存小于所述前缓冲器/后缓冲器内存的中缓冲器,以及数据调用模块;所述前缓冲器和后缓冲器内分别对应填充有第一图形和第二图形;所述数据调用模块,填充第三图形至前缓冲器,所述第三图形为部分第一图形和部分第二图形的组合,第一图形和第二图形位于第三图形的部分对应为第一图形显示区和第二图形显示区,反之对应为第一图形非显示区和第二图形非显示区。
可选的,所述数据调用模块用于一次或多次提取所述第一图形非显示区至所述中缓冲器,以使得所述前缓冲器获得空余空间,并利用所述空余空间,转移填充所述第二图形显示区,形成第三图形,第一图形显示区和第二图形显示区分别位于第三图形的第一位置和第二位置。
可选的,当所述第二图形显示区/第一图形非显示区数据量为S1,所述中缓冲器的内存为D,则S1=D*M+A,M为所述数据调用模块以D为单次提取量,填充所述第一图形非显示区至中缓冲器的最大次数,A为所述数据调用模块小于D的补充提取量。
可选的,当所述第二图形显示区/第一图形非显示区数据量为S1,所述中缓冲器的内存为D,则S1=D+B*F,F为所述数据调用模块以B为单次提取量,填充所述第一图形的部分数据至中缓冲器的次数。
本发明还提供一种包括所述图形处理装置的移动终端。
与现有技术相比,本发明具有以下优点:
使用中缓冲器,并通过一次或多次提取第一图形/第二图形,完成前缓冲器和后缓冲器间的图形转换,填充形成部分第一图形和部分第二图形组合的第三图形,所述中缓冲器内存小于所述前缓冲器/后缓冲器内存,节约内存资源,解决系统的内存紧张的问题;
当所述第一显示区为零时,所述第三图形即为第二图形,即通过内存小于所述前缓冲器/后缓冲器的中缓冲器,可以完成现有技术中的前缓冲器和后缓冲器之间的全部图形的互换,节约内存资源,解决系统的内存紧张的问题;
通过第二图形显示区/第一图形非显示区数据量和中缓冲器的内存的次数对应关系,可以有效利用所述中缓冲器,以完成所述第三图形的填充,节约内存资源,解决系统的内存紧张的问题。
具体实施方式
现有技术需要创建与前缓冲器/后缓冲器相等的中缓冲器来完成数据的填充,对于连续进行的图像处理操作,则需要三块相等大小内存来完成上述图形处理,这对于内存相对紧张的系统而言十分不利。
为解决上述问题,本发明提供一种图形处理方法,包括:提供前缓冲器、后缓冲器、内存小于所述前缓冲器/后缓冲器的中缓冲器;所述前缓冲器和后缓冲器内分别对应填充有第一图形和第二图形;填充第三图形至前缓冲器,所述第三图形为部分第一图形和部分第二图形的组合,第一图形和第二图形位于第三图形的部分对应为第一图形显示区和第二图形显示区,反之对应为第一图形非显示区和第二图形非显示区。
其中,所述填充第三图形包括:一次或多次提取所述第一图形非显示区至所述中缓冲器,以使得所述前缓冲器获得空余空间,并利用所述空余空间,转移填充所述第二图形显示区,形成第三图形,第一图形显示区和第二图形显示区分别位于第三图形的第一位置和第二位置。
本发明使用中缓冲器,并通过一次或多次提取第一图形/第二图形,完成前缓冲器和后缓冲器间的图形转换,填充形成部分第一图形和部分第二图形组合的第三图形,所述中缓冲器内存小于所述前缓冲器/后缓冲器内存,节约内存资源,解决系统的内存紧张的问题。
为了使本领域的技术人员可以更好的理解本发明,下面结合附图详细说明本发明的具体实施方式。
如图1所示,提供前缓冲器100、后缓冲器200、内存小于所述前缓冲器100/后缓冲器200内存的中缓冲器300,所述前缓冲器100的内存等于后缓冲器200的内存。
如图2所示,在所述前缓冲器100和后缓冲器200内分别对应填充有第一图形001和第二图形002。若第一图形001为当前页,则根据用户对图形的操作指令不同,所述第二图形002可以为第一图形001的上一页,也可以为第一图形001的下一页。一般地,所述一页图形为一帧图形。如当用户正在浏览第N页的图形,则此时所述第一图形001为第N页的图形,若用户发出的操作指令为向下页方向浏览,则将所述第N+1页的图形填充至后缓冲器200内;若用户发出的操作指令为向上页方向浏览,则将所述第N-1页的图形填充至后缓冲器200内,并根据后续的指令对所述前缓冲器的图形更换填充,形成第三图形。具体地,根据用户指令,所述第三图形可以是第一图形001和第二图形002的组合,若所述组合中,所述第一图形001所占空间或容量为0,则所述第三图形即为所述第二图形002,即浏览至完整的第二图形002;若所述组合中,所述第一图形001所占空间或容量为非0,则浏览至第一图形001和第二图形002的两页的中间状态。
作为其他实施例,所述第一图形001/第二图形002还可以为两页图形的中间状态,即所述第一图形001/第二图形002还可以为两帧图形的中间状态。
后续地,将对前缓冲器100和后缓冲器200的图形进行变换,对所述前缓冲器100填充第三图形。第一图形001和第二图形002位于所述第三图形的部分对应为第一图形显示区和第二图形显示区,反之对应为第一图形非显示区和第二图形非显示区。
若所述第二图形显示区/第一图形非显示区数据量为S1,所述中缓冲器的内存为D,则S1=D*M+A,M为以D为单次提取量,填充所述第一图形非显示区至中缓冲器的最大次数,A为小于D的补充提取量。
作为其他实施例,若所述第二图形显示区/第一图形非显示区数据量为S1,所述中缓冲器的内存为D,则S1=D+B*F,F为以B为单次提取量,填充所述第一图形的部分数据至中缓冲器的次数。
作为实施例,所述第二图形显示区/第一图形非显示区数据量小于所述中缓冲器的内存。如图3~图8所示的第一实施例中,设定所述第二图形显示区/第一图形非显示区数据量为1/4。
如图3所示,所述第一图形001包括第一图形显示区011和第一图形非显示区012,所述第二图形002包括第二图形显示区022和第二图形非显示区021,其中,所述第一图形显示区011和第二图形显示区022将组合形成后续填充于前缓冲区100内的第三图形。其中,第一图形显示区011和第二图形显示区022分别位于第三图形的第一位置和第二位置。
如图4所示为后续待填充的第三图形,包括第一图形显示区011和第二图形显示区022,其位置分别为第一位置和第二位置。
如图5所示,一次提取所述第一图形非显示区012至所述中缓冲器300,所述前缓冲器100获得空余空间。剩下的第一图形,即第一图形显示区011可以利用所述空余空间进行前缓冲器100内的平移。
如图6所示,将第一图形显示区011平移至第一位置,则所述空余空间则对应于后续第二图形显示区022填充的第二位置。
如图7所示,将所述第二图形显示区022填充至第二位置,填充形成第三图形,包括第一图形显示区011和第二图形显示区022,其位置分别为第一位置和第二位置。
后续地,为将使得后缓冲器的图形与前缓冲器图形对应。还需要将后缓冲器的图形进行处理,形成与第三图形对应的填充分布。
如图8所示,还包括,将第二图形非显示区021对应于第一图形显示区011进行平移,获得空余空间,以对应填充位于中缓冲器300的第一图形显示区012;并将所述中缓冲器300内的第一图形非显示区012填充至所述后缓冲器200内。
作为其他实施例,执行到如图6所示的状态后,还可以如图9所示,将所述中缓冲器300的第一图形非显示区012填充至第二位置。
如图10~图13所示,为将第二图形显示区填充至第二子位置,将第二图形非显示区填充至所述第一子位置,第一子位置与第二子位置分别对应于第一位置与第二位置。
具体地,如图10所示,将所述第二图形显示区022填充至所述中缓冲器300,所述后缓冲器200获得空余空间。
如图11所示,在所述后缓冲器200内将所述第二图形非显示区021平移至所述第一子位置,所述第一子位置对应于前缓冲器100内的第一位置。
如图12所示,将所述后缓冲器200内的第二图形显示区022转存至所述后缓冲器200的第二子位置,所述第二子位置对应于前缓冲器100内的第二位置。
如图13所示,互换第二位置和第二子位置的填充内容,将第二图形显示区022平移至所述第二位置,将第一图形非显示区012平移至所述第一位置。至此填充形成第三图形,包括第一图形显示区011和第二图形显示区022,其位置分别为第一位置和第二位置。
上述为第二图形显示区/第一图形非显示区数据量不大于所述中缓冲器的内存的情况。若所述第二图形显示区/第一图形非显示区数据量大于所述中缓冲器的内存的情况下,填充所述第三图形,则需要多次提取第一图形/第二图形至所述中缓冲器。
具体地,所述填充第三图形包括第一步:进行若干次第一转存,直至第一图形显示区平移至所述第一位置;第一图形非显示区平移至所述第二位置,所述第一转存为:提取第一图形的部分非显示区至所述中缓冲器,所述前缓冲器获得空余空间;将剩余的第一图形平移,填充空余空间;接着,将所述中缓冲器的内容填充至前缓冲器内。
所述填充第三图形还包括第二步:进行若干次第二转存,直至第二图形显示区平移至第二子位置;第二图形非显示区平移至第一子位置;所述第一子位置与第二子位置分别与第一位置与第二位置对应;将第二图形显示区填充至所述第二位置;所述第二转存为:提取第二图形的部分显示区至所述中缓冲器,所述后缓冲器获得空余空间;将剩余的第二图形平移,填充空余空间;接着,将所述中缓冲器的内容填充至后缓冲器内。
下面以详细实施例对上述方法进行详细阐述。
如图14所示,包括:前缓冲器100、后缓冲器200及中缓冲器300,在所述前缓冲器100和后缓冲器200内分别对应填充有第一图形001和第二图形002。其中,所述第一图形001包括第一图形显示区013和第一图形非显示区014;所述第二图形002包括第二图形显示区024和第二图形非显示区023。其中所述中缓冲器300内存为所述前缓冲器100/后缓冲器200的1/4(以下简称内存为1/4),所述第二图形显示区024/第一图形非显示区014数据量的为所述前缓冲器100/后缓冲器200的2/3(以下简称数据量为2/3)。
则对应地,所述第二图形显示区024/第一图形非显示区014数据量为2/3,所述中缓冲器的内存为1/4,则以1/4为单次提取量,填充所述第一图形非显示区014至所述中缓冲器300的最大次数为2次,另外,还需要以1/6为单次提取量,填充所述第一图形非显示区014至所述中缓冲器300。
如图15所示,以1/4为单次提取量,提取所述第一图形非显示区014的第一部分0141至所述中缓冲器300,所述前缓冲器100获得空余空间。剩下的第一图形,即第一图形显示区013和剩余的第一图形非显示区014可以利用所述空余空间进行前缓冲器100内的第一平移。
如图16所示,在所述前缓冲器100内,将所述第一图形显示区013和剩余的第一图形非显示区014进行平移,以填充第一次提取后形成的空余空间。
如图17所示,将位于中缓冲器300中的第一图形非显示区的第一部分0141转存至前缓冲器100内,填充前缓冲器100内因第一平移形成的空余空间。
如图18所示,以1/4为单次提取量,提取所述第一图形非显示区014的第二部分0142至所述中缓冲器300,所述前缓冲器100获得空余空间。剩下的第一图形,即第一图形显示区013和剩余的第一图形非显示区014可以利用所述空余空间进行前缓冲器100内的第二平移。
如图19所示,在所述前缓冲器100内,将所述第一图形显示区013和剩余的第一图形非显示区014进行第二平移,以填充第一次提取后形成的空余空间。
如图20所示,将位于中缓冲器300中的第一图形非显示区的第二部分0142转存至前缓冲器100内,填充前缓冲器100内因第二平移形成的空余空间。
接着,按照上述方法,将数据量为1/4的剩余第一图形014按照上述第一转存的方式,通过中缓冲器100的转存,形成第一图形非显示区的第三部分0143再填充至前缓冲器100内。如图21所示,所述第一图形001分三次所述第一转存后,第一图形显示区014平移至所述第一位置;第一图形非显示区013平移至所述第二位置。
如图22所示,参照上述方法,对位于后缓冲器200内的第二图形002进行若干次所述第二转存,直至第二图形显示区024平移至第二子位置;第二图形非显示区023平移至第一子位置;所述第一子位置与第二子位置分别与第一位置与第二位置对应。所述第二转存为:提取第二图形002的部分显示区至所述中缓冲器300,所述后缓冲器002获得空余空间;将剩余的第二图形平移,填充空余空间;接着,将所述中缓冲器的内容填充至后缓冲器内。
如图23所示,将第二图形显示区024填充至所述前缓冲器100内的第二位置,即再次通过中缓冲器300的转存,将前缓冲器100和后缓冲器200内的存储内容进行互换。形成位于前缓冲器100内的第三图形,包括第一图形显示区013和第二图形显示区024,其位置分别为第一位置和第二位置。
作为其他实施例,所述填充第三图形还可为进行若干次第三转存,直至第一图形显示区平移至所述第一位置;将后缓冲器内的第二图形显示区填充至所述第二位置;所述第三转存为:将第一图形的部分非显示区填充至所述中缓冲器,所述前缓冲器获得空余空间;将剩余的第一图形平移,填充空余空间;接着将所述后缓冲器的部分显示区填充至前缓冲器内;再将中缓冲器的内容填充至后缓冲器内。 以图16为例,在所述前缓冲器100内,将所述第一图形显示区013和剩余的第一图形非显示区014进行平移,以填充第一次提取后形成的空余空间后,直接从后缓冲器200内提取第二图形显示区024的一部分转存至第一平移后形成的空间内。后续地,则可以按照此方法循环进行,直至形成位于前缓冲器100内的第三图形,包括第一图形显示区013和第二图形显示区024,其位置分别为第一位置和第二位置。
如图24所示,本发明还提供一种图形处理装置,包括前缓冲器10、后缓冲器20,还包括:内存小于所述前缓冲器10/后缓冲器20内存的中缓冲器30,以及数据调用模块40;所述前缓冲器10和后缓冲器20内分别对应填充有第一图形和第二图形;所述数据调用模块40,填充第三图形至前缓冲器10,所述第三图形为部分第一图形和部分第二图形的组合,第一图形和第二图形位于第三图形的部分对应为第一图形显示区和第二图形显示区,反之对应为第一图形非显示区和第二图形非显示区;所述数据调用模块40用于一次或多次提取所述第一图形非显示区至所述中缓冲器30,以使得所述前缓冲器10获得空余空间,并利用所述空余空间,转移填充所述第二图形显示区,形成第三图形,第一图形显示区和第二图形显示区分别位于第三图形的第一位置和第二位置。
其中,当所述第二图形显示区/第一图形非显示区数据量为S1,所述中缓冲器30的内存为D,则S1=D*M+A,M为所述数据调用模块40以D为单次提取量,填充所述第一图形非显示区至中缓冲器30的最大次数,A为所述数据调用模块40小于D的补充提取量。
其中,当所述第二图形显示区/第一图形非显示区数据量为S1,所述中缓冲器30的内存为D,则S1=D+B*F,F为所述数据调用模块40以B为单次提取量,填充所述第一图形的部分数据至中缓冲器30的次数。
本发明还提供一种移动终端,包括所述图形处理装置。所述图形处理装置包括前缓冲器、后缓冲器,还包括:内存小于所述前缓冲器/后缓冲器内存的中缓冲器,以及数据调用模块。
与现有技术相比,本发明具有以下优点:
使用中缓冲器,并通过一次或多次提取第一图形/第二图形,完成前缓冲器和后缓冲器间的图形转换,填充形成部分第一图形和部分第二图形组合的第三图形,所述中缓冲器内存小于所述前缓冲器/后缓冲器内存,节约内存资源,解决系统的内存紧张的问题;
当所述第一显示区为零时,所述第三图形即为第二图形,即通过内存小于所述前缓冲器/后缓冲器的中缓冲器,可以完成现有技术中的前缓冲器和后缓冲器之间的全部图形的互换,节约内存资源,解决系统的内存紧张的问题;
通过第二图形显示区/第一图形非显示区数据量和中缓冲器的内存的次数对应关系,可以有效利用所述中缓冲器,以完成所述第三图形的填充,节约内存资源,解决系统的内存紧张的问题。
本发明虽然以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以利用上述揭示的方法和技术内容对本发明技术方案做出可能的变动和修改,因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化及修饰,均属于本发明技术方案的保护范围。