截屏方法和移动终端与流程

文档序号:12122373阅读:387来源:国知局
截屏方法和移动终端与流程

本发明涉及领域,尤其涉及一种截屏方法和移动终端。



背景技术:

目前手机、平板电脑等移动终端的原生操作系统已经提供截屏的功能,但是随着大量的应用出现,例如浏览器、聊天工具等,现有的截屏功能无法完全满足用户的需求,比如聊天内容过长,截的一屏无法完全展示全部聊天内容,又比如用户想把浏览器的一条长新闻全部截取下来,那截屏功能就显得有点无能为力。

请参考图1,为现有的截屏方法的流程示意图,包括:步骤S101:截取当前屏幕内容;步骤S102:判断内容是否截取完全,若是,则执行步骤S103:保存图片;若否,则执行步骤S104:人为滑动屏幕;随后继续执行步骤S101:截取当前屏幕内容,直至内容截取完全。

现有的截屏方法只能截取当前屏幕的内容,无法对超过屏幕内容进行完整的截屏。为了对超过屏幕的内容进行全部截图,需要进行多次截屏,但是截图后的内容部能完美拼接,会出现人为滑动造成的偏移。并且,由于保存了多张截图,造成图片过多,难以检索和识别先后顺序。



技术实现要素:

本发明所要解决的技术问题是,提供一种截屏方法和移动终端,实现长截屏。

为了解决上述问题,本发明提供了一种截屏方法,包括:截取当前屏幕显示内容,保存为第一图片;屏幕显示内容滑动一预设距离;截取滑动后屏幕显示内容,保存为第二图片;计算屏幕显示内容实际滑动距离;判断所述实际滑动距离是否大于或等于所述预设距离;若是,则通过实际滑动距离将第二图片拼接到第一图片上,形成新的第一图片并继续下一次的滑动;若否,则通过实际滑动距离将第二图片拼接到第一图片上,作为最终截屏图片。

可选的,通过实际滑动距离将第二图片拼接到第一图片上的方法包括:截取第二图片自底部向上实际滑动距离再加一固定高度的部分覆盖第一图片自底部向上一固定高度的部分,将第二图片与第一图片实现拼接。

可选的,通过所述屏幕显示内容中的控件位置变化,计算实际滑动距离。

可选的,所述预设距离为屏幕高度的1/2。

可选的,所述固定高度为屏幕高度的1/8~1/4;若所述屏幕内容底部有一保留高度的内容在滑动过程中保留不变,则所述固定高度等于所述保留高度。

为解决上述问题,本发明还提供一种移动终端,包括:截屏模块,用于截取并保存当前屏幕显示内容为第一图片,截取并保存后续屏幕显示内容为第二图片;滑动模块,与所述截屏模块连接,用于使屏幕显示内容滑动一预设距离;计算模块,与所述滑动模块连接,用于计算屏幕显示内容的实际滑动距离;判断模块,与所述计算模块连接,用于判断屏幕显示内容是否大于或等于所述预设距离;拼接模块,与所述判断模块和截屏模块连接,当实际滑动距离大于或等于所述预设距离时,所述拼接模块用于根据实际滑动距离将第二图片拼接到第一图片上,形成新的第一图片,当实际滑动距离小于所述预设距离时,所述拼接模块用于根据实际滑动距离将第二图片拼接到第一图片上,形成最终截屏图片。

可选的,所述拼接模块包括:截取单元,用于截取第二图片自底部向上实际滑动距离再加一固定高度的部分;覆盖单元,用于将截取单元截取的部分第二图片覆盖第一图片自底部向上一固定高度的部分,将第二图片与第一图片实现拼接。

可选的,所述计算模块用于通过所述屏幕显示内容中的控件位置变化,计算实际滑动距离。

可选的,所述预设距离为屏幕高度的1/2。

可选的,所述固定高度为屏幕高度的1/8~1/4;若所述屏幕内容底部有一保留高度的内容在滑动过程中保留不变,则所述固定高度等于所述保留高度。

本发明的截屏方法和移动终端能够自动对屏幕显示内容进行滑动,并通过计算滑动距离进行图片拼接,使得最终获得的长截屏图片精准、无缝衔接,能够直接获得长截屏图片。

附图说明

图1为本发明的现有技术的截屏方法的流程示意图;

图2为本发明一具体实施方式的截屏方法的流程示意图;

图3为本发明一具体实施方式的移动终端的结构示意图。

具体实施方式

下面结合附图对本发明提供的截屏方法以及移动终端的具体实施方式做详细说明。

请参考图2,为本发明一具体实施方式的截屏方法的流程示意图。

用户可以通过点击页面控件,开始长截屏操作。移动终端在接收到用户操作之后,首先执行步骤S201:截取当前屏幕显示内容,保存为第一图片。

在开始截屏之前,屏幕显示内容为需要截屏内容的起始位置,对当前屏幕显示内容进行截取,并保存为第一图片,所述第一图片为起始图片。可以将所述第一图片存储在缓存空间内,供后续图片拼接时进行调用。

步骤S202:屏幕显示内容滑动一预设距离。

使屏幕显示内容向前滑动,以显示更多后续内容。所述滑动可以由移动终端自动进行,按照一预设距离进行滑动,避免用户手动滑动时的偏差。

在本发明的一个具体实施方式中,所述预设距离为屏幕高度的1/2,在本发明的其他具体实施方式中,所述预设距离还可以为屏幕高度的1/3~3/4。在很多浏览页面下,屏幕显示的顶部和/或底部有部分高度的内容为固定不动的,所以,如果预设距离为整个屏幕高度,会导致部分内容被错过。所以,所述预设距离小于整个屏幕高度。

不同的移动终端,根据屏幕高度不同,所述预设距离会自适应的进行调整。

步骤S203:截取滑动后屏幕显示内容,保存为第二图片。

将滑动后的屏幕显示内容,进行截屏,保存为第二图片,并存储在缓存空间内。

步骤S204:计算屏幕显示内容实际滑动距离。

由于屏幕显示内容滑动会有加速度,导致实际滑动距离会略大于所述预设距离。为了使最终获得的长截屏的图片内容完整,没有遗漏或重叠,需要对实际滑动距离进行准确计算。在本发明的具体实施方式中,可以通过所述屏幕显示内容中的控件位置变化,准确计算实际滑动距离。

通过获取其中一控件的初始位置以及滑动后位置,两者之间的差距即为屏幕显示内容实际滑动距离。

步骤S205:判断所述实际滑动距离是否大于或等于所述预设距离。

将所述实际滑动距离与预设距离进行比较,如果实际滑动距离大于预设距离,则表明浏览内容还未完全显示,后续还可以继续进行滑动;如果实际滑动距离小于预设距离,则表明,浏览内容已经完全显示,后续无法再继续进行滑动。

若所述实际滑动距离大于或等于所述预设距离,则执行步骤S206:通过实际滑动距离将第二图片拼接到第一图片上,形成新的第一图片并继续下一次的滑动。

由于实际滑动距离小于屏幕的整体高度,所以,第一图片和第二图片之间有部分重复的部分。可以将第二图片覆盖第一图片中的重复部分,实现第一图片与第二图片的拼接,形成新的第一图片。

在本发明的另一具体实施方式中,通过实际滑动距离将第二图片拼接到第一图片上的方法包括:截取第二图片自底部向上实际滑动距离再加一固定高度的部分覆盖第一图片自底部向上一固定高度的部分,将第二图片与第一图片实现拼接。由于屏幕底部可能具有部分高度的显示内容在滑动过程中固定不变,截取第二图片中自底部向上实际滑动距离再加一固定高度的部分,对第一图片自底部向上一固定高度的部分进行覆盖,可以将第一图片中的固定部分覆盖掉,避免重复。

在本发明的一个具体实施方式中,所述固定高度可以为屏幕高度的1/8~1/4;在本发明的另一具体实施方式中,所述屏幕内容底部有一保留高度的内容在滑动过程中保留不变,则所述固定高度等于所述保留高度。

将第一图片与第二图片进行拼接之后,继续执行步骤S202:使屏幕显示内容滑动一预设距离,以及后续步骤S203、S204和S205,直至若所述实际滑动距离小于所述预设距离,则执行步骤S207:通过实际滑动距离将第二图片拼接到第一图片上,作为最终截屏图片。所述拼接方法与步骤S206中的拼接方法一致。在形成最终截屏图片之后,屏幕显示内容不再发生滑动,用户可以通过再次点击屏幕设定的截屏控件,结束截屏。

步骤S208:保存所述最终截屏图片。所述最终截屏图片为一个长截屏图片,完整显示当前网页的所有内容。由于通过滑动距离对多次截屏图片一次进行拼接,从而避免形成的最终截屏图片内容没有遗漏、重复或顺序发生错误等。在本发明的一个具体实施方式中,可以将最终拼接完成后的截屏图片显示在移动终端屏幕上,供用户查看之后,由用户决定是否需要保存;在本发明的另一具体实施方式中,也可以由移动终端自动保存。

上述截屏方法,操作简单,通过计算滑动距离进行图片拼接,使得最终获得的长截屏图片精准、无缝衔接,能够直接获得长截屏图片。

本发明的具体实施方式还提供一种移动终端。

请参考图3,为所述移动终端的结构示意图。

所述移动终端包括:截屏模块301、滑动模块302、计算模块303、判断模块304和拼接模块305。

所述截屏模块301,用于截取并保存当前屏幕显示内容为第一图片,截取并保存后续滑动后的屏幕显示内容为第二图片。所述第一图片为起始图片,第二图片后续要拼接至第一图片。

所述滑动模块302,与所述截屏模块301连接,用于使屏幕显示内容滑动一预设距离。使屏幕显示内容向前滑动,以显示更多后续内容。所述滑动可以由移动终端自动进行,按照一预设距离进行滑动,避免用户手动滑动时的偏差。在本发明的一个具体实施方式中,所述预设距离为屏幕高度的1/2,在本发明的其他具体实施方式中,所述预设距离还可以为屏幕高度的1/3~3/4。在很多浏览页面下,屏幕显示的顶部和/或底部有部分高度的内容为固定不动的,所以,如果预设距离为整个屏幕高度,会导致部分内容被错过。所以,所述预设距离小于整个屏幕高度。滑动模块302可以根据不同的移动终端,根据屏幕高度不同,对所述预设距离进行自适应的调整。

所述计算模块303,与所述滑动模块302连接,用于计算屏幕显示内容的实际滑动距离;所述计算模块用于通过所述屏幕显示内容中的控件位置变化,计算实际滑动距离。由于屏幕显示内容滑动会有加速度,导致实际滑动距离会略大于所述预设距离。为了使最终获得的长截屏的图片内容完整,没有遗漏或重叠,需要对实际滑动距离进行准确计算。在本发明的具体实施方式中,所述计算模块303可以通过所述屏幕显示内容中的控件位置变化,准确计算实际滑动距离。具体的,在本发明的一个具体实施方式中,所述计算模块303通过获取其中一控件的初始位置以及滑动后位置,两者之间的差距即为屏幕显示内容实际滑动距离。

判断模块304,与所述计算模块303连接,用于判断屏幕显示内容是否大于或等于所述预设距离。将所述实际滑动距离与预设距离进行比较,如果实际滑动距离大于预设距离,则表明浏览内容还未完全显示,后续还可以继续进行滑动;如果实际滑动距离小于预设距离,则表明,浏览内容已经完全显示,后续无法再继续进行滑动。

拼接模块305,与所述判断模块304和截屏模块301连接,当实际滑动距离大于或等于所述预设距离时,所述拼接模块用于根据实际滑动距离将第二图片拼接到第一图片上,形成新的第一图片。所述拼接模块305可以将第二图片覆盖第一图片中的重复部分,实现第一图片与第二图片的拼接,形成新的第一图片。具体的,在本发明的一个具体实施方式中,所述拼接模块305截取第二图片自底部向上实际滑动距离再加一固定高度的部分覆盖第一图片自底部向上一固定高度的部分,将第二图片与第一图片实现拼接。由于屏幕底部可能具有部分高度的显示内容在滑动过程中固定不变,截取第二图片中自底部向上实际滑动距离再加一固定高度的部分,对第一图片自底部向上一固定高度的部分进行覆盖,可以将第一图片中的固定部分覆盖掉,避免重复。

在本发明的一个具体实施方式中,所述固定高度可以为屏幕高度的1/8~1/4;在本发明的另一具体实施方式中,所述屏幕内容底部有一保留高度的内容在滑动过程中保留不变,则所述固定高度等于所述保留高度。

当实际滑动距离小于所述预设距离时,所述拼接模块305用于根据实际滑动距离将第二图片拼接到第一图片上,形成最终截屏图片。

所述拼接模块305包括:截取单元,用于截取第二图片自底部向上实际滑动距离再加一固定高度的部分;覆盖单元,用于将截取单元截取的部分第二图片覆盖第一图片自底部向上一固定高度的部分,将第二图片与第一图片实现拼接。在本发明的一个具体实施方式中,所述固定高度为屏幕高度的1/8~1/4;若所述屏幕内容底部有一保留高度的内容在滑动过程中保留不变,则所述固定高度等于所述保留高度。

在本发明的一个具体实施方式中,在起始阶段,通过截屏模块301截取并保存当前屏幕显示内容为第一图片;然后通过滑动模块302将屏幕显示内容滑动一预设距离,以显示更多后续内容;在通过截屏模块301截取滑动后的屏幕显示内容,保存为第二图片;随后通过计算模块303计算实际滑动距离,并通过判断模块304判断该实际滑动距离是否大于或等于所述预设距离,若是,则所述拼接模块305通过实际滑动距离,将第二图片与第一图片拼接,形成新的第一图片;所述滑动模块302继续将屏幕显示内容滑动一预设距离,并通过截屏模块301截屏,形成新的第二图片;若滑动距离大于预设距离,则通过拼接模块305将新的第二图片拼接至新的第一图片,形成新的第一图片之后,继续滑动屏幕显示内容,以及进行截图和拼接,直至实际滑动距离小于所述预设距离时,所述拼接模块305用于根据实际滑动距离将第二图片拼接到第一图片上,形成最终截屏图片。

所述移动终端能够自动对屏幕显示内容进行滑动,并通过计算滑动距离进行图片拼接,使得最终获得的长截屏图片精准、无缝衔接,能够直接获得长截屏图片。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1