一种截屏方法及终端与流程

文档序号:11250543阅读:394来源:国知局
一种截屏方法及终端与流程

本发明涉及电子技术领域,尤其涉及一种截屏方法及终端。



背景技术:

目前,随着移动互联网的发展,以智能手机为代表的智能终端已经普及。人们在使用手机过程中可能会遇到自己喜欢的新闻、文章等内容,需要临时截取整个页面的所有内容,以便分享给朋友,或者自己收藏以便后续查看等需求。

在目前的技术中,终端用户可以使用一个触发方式,截取当前界面显示的内容。当内容较多,无法全部显示在一个页面上,想要截取所有内容,需要将新的内容手动滚动到当前界面显示区域,再重复触发截屏操作,以此不断重复,直到截取完毕所有内容。这种现状要求用户不断重复的操作截屏,在操作过程中,需要进行的操作步骤较多,不够方便快捷;并且保存的图片数量较多,总共花费的时间长,体验比较差,不利于图片的分享及查看。



技术实现要素:

本发明实施例提供一种截屏方法及终端,能够方便快捷地完成截屏,改善用户的使用体验。

一方面,本发明实施例提供了一种截屏方法,该方法包括,

当接收到截屏操作指令时,根据第一预设规则滚动屏幕以截取相应的图片并依次缓存到一缓存集合中;

判断是否接收到截屏结束指令;

若没有接收到截屏结束指令,判断所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片是否相同;

若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,根据第二预设规则合成缓存集合中的所有图片以得到最终截取图片。

另一方面,本发明实施例提供了一种终端,该终端包括,

缓存单元,用于当接收到截屏操作指令时,根据第一预设规则滚动屏幕以截取相应的图片并依次缓存到一缓存集合中;

第一判断单元,用于判断是否接收到截屏结束指令;

第二判断单元,用于若没有接收到截屏结束指令,判断所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片是否相同;

合成单元,用于若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,根据第二预设规则合成缓存集合中的所有图片以得到最终截取图片。

本发明实施例能够简单方便地完成截屏,改善用户的使用体验。尤其是用户只需要触发截屏方式,就能够自动进行滚动截屏,其中,当用户需要结束截屏时,触发结束命令即可得到用户需要的完整内容。

附图说明

为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种截屏方法的示意流程图;

图2是本发明另一实施例提供的一种截屏方法的示意流程图;

图3是本发明另一实施例中的步骤s201的子步骤的示意流程图;

图3a、3b以及3c是本发明另一实施例中屏幕的结构示意图;

图4是本发明另一实施例中的步骤s204的子步骤的示意流程图;

图5是本发明实施例提供的一种终端的示意性框图;

图6是本发明另一实施例提供的一种终端的示意性框图;

图7是本发明另一实施例中的缓存单元201的子单元的示意性框图;

图8是本发明另一实施例中的合成单元204的子单元的示意性框图;

图9是本发明另一实施例提供的一种终端的示意性框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

参见图1,其是本发明实施例所提供的一种截屏方法的示意流程图,如图所示的方法可包括以下步骤,

步骤s101,当接收到截屏操作指令时,根据第一预设规则滚动屏幕以截取相应的图片并依次缓存到一缓存集合中。

其中,当用户触发启动截屏后,终端会接收到相应的截屏操作指令,从而根据预设好的第一预设规则滚动屏幕,然后在屏幕滚动的过程中自动将截屏得到的所有图片缓存到一个缓存集合中,方便进行后续的处理。

步骤s102,判断是否接收到截屏结束指令。

其中,接收到截屏操作指令之后,在滚动进行截屏的过程中,如果用户已获取所需要的内容,则可以停止截屏,避免截取多余的内容,减少终端内存的损耗。那么此时,需要判断是否有接收到截屏结束指令,若有接收到截屏结束指令,则取缓存集合内已存储的图片进行相应的处理。

步骤s103,若没有接收到截屏结束指令,判断所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片是否相同。

其中,若没有接收到截屏结束指令,则要确认截屏是否结束,此时就需要对缓存集合中的图片进行对比分析,又因为缓存集合中的图片是根据时间顺序存储在缓存集合中的,所以此时只需要判断所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片是否相同。若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片不相同的时候,则表明此时还未截屏到最后,故需要继续根据所述第一预设规则进行截屏以得到图片并缓存到缓存集合中,从而保证最终截屏得到的图片的内容包括用户需要的所有内容。

步骤s104,若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,根据第二预设规则合成缓存集合中的所有图片以得到最终截取图片。

通常,当所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,则可以说明已经完成了对屏幕所能显示的内容的全部的截屏,此时,则可以根据第二预设规则将缓存集合中的所有图片进行相应的合成。因为缓存集合中的所有图片均是按时间顺序进行存储的,所以在一定程度上需要根据预设规则中对所有图片进行相应的处理,从而得到最终截取的图片。

总的来说,本发明实施例能够简单方便地完成截屏,改善用户的使用体验。尤其是用户只需要触发截屏方式,就能够自动进行滚动截屏,其中,当用户需要结束截屏时,触发结束命令即可得到用户需要的完整内容。

参见图2,其是本发明另一实施例所提供的一种截屏方法的示意流程图,如图所示的方法可包括以下步骤,

步骤s201a,当接收到截屏操作指令时,判断当前屏幕状态是否为预设状态。

其中,当用户触发启动截屏后,也就是接收到截屏操作指令时,应该判断当前的屏幕状态是否支持运行截屏,当前的屏幕状态即终端目前所处的环境。如果当前的屏幕状态不支持运行截屏,则表明无法进行相应的截屏操作。而如果若当前屏幕状态为预设状态,即当前的屏幕状态支持运行截屏,那么则执行步骤s201。

例如,若预设状态为竖屏状态,同时当前屏幕状态为横屏状态时,则结束截屏;而当前屏幕状态为竖屏状态时,则执行步骤s201。一般情况,判断屏幕状态通常通过方向传感器,比如陀螺仪,以获取当前的方向值,从而得到当前屏幕状态是横屏状态还是竖屏状态。

步骤s201,根据第一预设规则滚动屏幕以截取相应的图片并依次缓存到一缓存集合中。

其中,当触发截屏之后,则可以滚动屏幕,并根据第一预设规则截取相应的图片。比如,当滚动一次后,则可以截取当前的屏幕内容从而得到相应的图片,并将相应的图片按照时间顺序依次缓存到一个缓存集合中。

另外,作为优选的,参见图3,其为本发明另一实施例中步骤s201的子步骤的示意流程图,所述步骤s201具体可以包括以下步骤,

步骤s301,在当前屏幕上设置一第一位置以及一第二位置。

其中,可以在屏幕上设置一个第一位置,并在屏幕的预设的滚动方向上再设置一个第二位置,同时第二位置不同于第一位置。

例如,如图3a、图3b和图3c所示,在屏幕上建立一个坐标系,其中,x轴设置在屏幕顶端,y轴设置在屏幕左侧,且x轴和y轴相交的原点设置在屏幕的左上方,并且第一位置为图3a、图3b和图3c中的start-y,第二位置为图3a、图3b和图3c中的end-y。

作为进一步优选的,所述第一位置的高度与所述屏幕的高度的比值大小的范围为0.6-0.9,所述第二位置的高度与所述屏幕的高度的比值大小小于0.6。

其中,第一位置的高度为start-y到x轴的直线距离,第二位置的高度为end-y到x轴的直线距离,而屏幕的高度则为y轴在屏幕上的高度。一般情况下,第一位置的高度根据屏幕实际分辨率进行设定,比如,第一位置的高度与所述屏幕的高度的比值大小的范围为06~0.9,并且可以在这个范围内根据实际情况进行调整;此时第二位置的高度与所述屏幕的高度的比值大小小于0.6,更进一步的,第一位置的高度与所述屏幕的高度的比值大小还可以是0.7或者0.8,第二位置的高度与所述屏幕的高度的比值大小的范围还可以为0.25~0.35,并且可以在这个范围内根据实际情况进行调整;当然,第一位置的高度与所述屏幕的高度的比值大小以及第二位置的高度与所述屏幕的高度的比值大小根据实际情况也可以是其他可行的大小。

步骤s302,截取所述当前屏幕的内容作为第一图片并缓存到缓存集合中。

其中,可以截取当前屏幕的内容作为第一图片,以使得所需要的内容根据时间顺序依次被截取,同时缓存到缓存集合中。

步骤s303,滚动屏幕并判断位于所述第一位置的内容是否能滚动到所述第二位置。

例如,如图3a所示,屏幕朝着箭头方向向上滚动,再如图3b以及3c所示,第一位置start-y上设有一个笑脸图形,此时可以判断位于第一位置start-y的笑脸图形是否能向上滚动到第二位置end-y。

步骤s304,若所述第一位置的内容能滚动到所述第二位置,截取滚动后的屏幕的内容为一第二图片并依次缓存到缓存集合中。

例如,根据上一步骤的例子可知,若位于第一位置start-y的笑脸图形能够滚动到第二位置end-y,则表明已经完成了一次滚动,那么则可以截取滚动后的屏幕的内容作为一第二图片,并缓存到缓存集合中。

步骤s305,若所述第一位置的内容不能滚动到所述第二位置,且所述第一位置的内容滚动后所处的位置位于所述第一位置和所述第二位置之间,将所述第一位置的内容滚动后所处的位置作为新的第二位置,并截取滚动后的屏幕的内容为另一第二图片以缓存到缓存集合中。

其中,根据上一步骤的例子可知,若所述第一位置sart-y的笑脸图形不能够滚动到所述第二位置end-y,且所述第一位置sart-y的笑脸图形滚动后所处的位置位于所述第一位置sart-y和所述第二位置end-y之间,那么此时则需要将所述第一位置sart-y的笑脸图形滚动后所处的位置作为新的第二位置end-y,同时可以以当前的第一位置sart-y和新的第二位置end-y为准以截取滚动后的屏幕的内容为另一个第二图片,并缓存到缓存集合中,这里的另一第二图片所对应的第二位置则为新的第二位置。

步骤s202,判断是否接收到截屏结束指令。

如图3a、3b以及3c所示,用户可以根据需要按返回键以结束截屏,此时可以通过判断是否接收到截屏结束指令来控制是否结束截屏。若用户需要结束截屏,此时可以按返回键,使得终端接收到截屏结束指令,从而结束截屏,并将之前缓存到缓存集合中的图片进行下一步处理。

步骤s203,若没有接收到截屏结束指令,判断所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片是否相同。

其中,若没有接收到截屏结束指令,则表明可以继续滚动截屏,此时需要判断所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片是否相同,若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片不相同,那么则表明还没有滚动到底,屏幕能够显示的内容并未完全获取,此时还需要继续滚动截屏,并再次进行判断此时的缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片是否相同。

步骤s204,若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,根据第二预设规则合成缓存集合中的所有图片以得到最终截取图片。

其中,例如,若缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,则表明已经缓存到底,此时可以根据一个预设的第二预设规则将缓存集合中的所有图片进行合成以得到最终截取图片。

作为进一步优选的,参见图4,其是本发明另一实施例中步骤s204的子步骤的示意流程图,所述步骤s204具体可以包括以下步骤,

步骤s401,若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,删除最后一次缓存的图片以得到一新的缓存集合。

一般情况下,若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,则表明已经缓存到底,为了进行下一步的合成操作,此时则需要删除最后一次缓存的图片以得到一新的缓存集合。当然,只要缓存集合中相同的两个图片即可,也就是说可以只删除倒数第二次缓存的图片。

这里的图片可以是第一图片,也可以是第二图片,比如,当缓存集合中倒数第二次缓存的图片为第一图片,最后一次缓存的图片为跟第一图片相同的图片时,则新的缓存集合中只有第一图片。当缓存集合中的倒数第二次缓存的图片为其中一第二图片,最后一次缓存的图片为跟所述其中一第二图片相同的图片,那么删除一个所述其中一第二图片,此时新的缓存集合中只有一个所述其中一第二图片。

步骤s402,取所述新的缓存集合中的第一图片,并剪切掉所述第一图片中对应的第一位置以下的内容以得到第一剪切图片。

其中,新的缓存集合中的所有图片均有对应的第一位置和第二位置。为了进行合成,可以剪切掉所述第一图片中对应的第一位置以下的内容以得到第一剪切图片。当然,如果新的缓存集合中只有第一图片时,则不需要对第一图片进行合成处理,即可以取此图片作为最终的截取图片。

步骤s403,取所述新的缓存集合中除去最后一次缓存的第二图片后剩余的第二图片,并依次剪切掉每个剩余的第二图片中对应的第一位置以下的内容以及对应的第二位置以上的内容,以得到多个依次排列的第二剪切图片。

其中,为了合成的图片中没有重合的内容,需要取所述新的缓存集合中除去最后一次缓存的第二图片后剩余的第二图片,并依次剪切掉每个剩余的第二图片中对应的第一位置以下的内容以及对应的第二位置以上的内容,以得到多个依次排列的第二剪切图片。另外,如果新的缓存集合中只有两张图片,那么则不需要进行此步骤而是直接进行下一步。

步骤s404,取所述新的缓存集合中的最后一次缓存的第二图片,并剪切掉所述最后一次缓存的第二图片中对应的第二位置以上的内容,以得到另一第二剪切图片。

其中,可以取所述新的缓存集合中的最后一次缓存的第二图片,并剪切掉所述最后一次缓存的第二图片中对应的第二位置以上的内容。若最后一次缓存的第二图片所对应的第二位置为更新后的第二位置,那么此时应以更新后的第二位置为准,以得到另一第二剪切图片。

步骤s405,将所述第一剪切图片、所述多个依次排列的第二剪切图片以及所述另一第二剪切图片按从上到下的顺序依次排列合并成最终截取图片。

其中,可以将所述第一剪切图片、所述多个依次排列的第二剪切图片以及所述另一第二剪切图片按从上到下的顺序依次排列合成,从而得到最终截取图片。当然,如果新的缓存集合中只有两张图片,即一张第一图片和一张第二图片,那么则可以剪切掉第一图片对应的第一位置以下的内容,并剪切掉第二图片对应的第二位置以上的内容,以得到第一剪切图片和第二剪切图片,并将第一剪切图片和第二剪切图片从上至下一次排布合成以得到最终截取图片。

参见图5,是本发明实施例提供的一种终端的示意性框图,如图所示的终端100可以包括,

缓存单元101,用于当接收到截屏操作指令时,根据第一预设规则滚动屏幕以截取相应的图片并依次缓存到一缓存集合中。

其中,当用户触发启动截屏后,终端会接收到相应的截屏操作指令,从而根据预设好的第一预设规则滚动屏幕,然后在屏幕滚动的过程中自动将截屏得到的所有图片缓存到一个缓存集合中,方便进行后续的处理。

第一判断单元102,用于判断是否接收到截屏结束指令。

其中,接收到截屏操作指令之后,在滚动进行截屏的过程中,如果用户已获取所需要的内容,则可以停止截屏,避免截取多余的内容,减少终端内存的损耗。那么此时,需要判断是否有接收到截屏结束指令,若有接收到截屏结束指令,则取缓存集合内已存储的图片进行相应的处理。

第二判断单元103,用于若没有接收到截屏结束指令,判断所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片是否相同。

其中,若没有接收到截屏结束指令,则要确认截屏是否结束,此时就需要对缓存集合中的图片进行对比分析,又因为缓存集合中的图片是根据时间顺序存储在缓存集合中的,所以此时只需要判断所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片是否相同。若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片不相同的时候,则表明此时还未截屏到最后,故需要继续根据所述第一预设规则进行截屏以得到图片并缓存到缓存集合中,从而保证最终截屏得到的图片的内容包括用户需要的所有内容。

合成单元104,用于若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,根据第二预设规则合成缓存集合中的所有图片以得到最终截取图片。

通常,当所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,则可以说明已经完成了对屏幕所能显示的内容的全部的截屏,此时,则可以根据第二预设规则将缓存集合中的所有图片进行相应的合成。因为缓存集合中的所有图片均是按时间顺序进行存储的,所以在一定程度上需要根据预设规则中对所有图片进行相应的处理,从而得到最终截取的图片。

总的来说,本发明实施例能够简单方便地完成截屏,改善用户的使用体验。尤其是用户只需要触发截屏方式,就能够自动进行滚动截屏,其中,当用户需要结束截屏时,触发结束命令即可得到用户需要的完整内容。

参见图6,其是本发明另一实施例所提供的一种终端的示意性框图,如图所示的终端200可包括以下单元,

第三判断单元201a,用于当接收到截屏操作指令时,判断当前屏幕状态是否为预设状态。

其中,当用户触发启动截屏后,也就是接收到截屏操作指令时,应该判断当前的屏幕状态是否支持运行截屏,当前的屏幕状态即终端目前所处的环境。如果当前的屏幕状态不支持运行截屏,则表明无法进行相应的截屏操作。而如果若当前屏幕状态为预设状态,即当前的屏幕状态支持运行截屏,那么则执行缓存单元201。

例如,若预设状态为竖屏状态,同时当前屏幕状态为横屏状态时,则结束截屏;而当前屏幕状态为竖屏状态时,则执行缓存单元201。一般情况,判断屏幕状态通常通过方向传感器,比如陀螺仪,以获取当前的方向值,从而得到当前屏幕状态是横屏状态还是竖屏状态。

缓存单元201,用于当接收到截屏操作指令时,根据第一预设规则滚动屏幕以截取相应的图片并依次缓存到一缓存集合中。

其中,当触发截屏之后,则可以滚动屏幕,并根据第一预设规则截取相应的图片。比如,当滚动一次后,则可以截取当前的屏幕内容从而得到相应的图片,并将相应的图片按照时间顺序依次缓存到一个缓存集合中。

另外,作为优选的,参见图7,其为本发明另一实施例中缓存单元201的子单元的示意性框图,所述缓存单元201具体可以包括以下单元,

设置单元301,用于在当前屏幕上设置一第一位置以及一第二位置,其中所述第一位置不同于所述第二位置。

其中,可以在屏幕上设置一个第一位置,并在屏幕的预设的滚动方向上再设置一个第二位置,同时第二位置不同于第一位置。

例如,如图3a、图3b和图3c所示,在屏幕上建立一个坐标系,其中,x轴设置在屏幕顶端,y轴设置在屏幕左侧,且x轴和y轴相交的原点设置在屏幕的左上方,并且第一位置为图3a、图3b和图3c中的start-y,第二位置为图3a、图3b和图3c中的end-y。

作为进一步优选的,所述第一位置的高度与所述屏幕的高度的比值大小的范围为0.6-0.9,所述第二位置的高度与所述屏幕的高度的比值大小小于0.6。

其中,第一位置的高度为start-y到x轴的直线距离,第二位置的高度为end-y到x轴的直线距离,而屏幕的高度则为y轴在屏幕上的高度。一般情况下,第一位置的高度根据屏幕实际分辨率进行设定,比如,第一位置的高度与所述屏幕的高度的比值大小的范围为0.6~0.9,并且可以在这个范围内根据实际情况进行调整;此时第二位置的高度与所述屏幕的高度的比值大小小于0.6,更进一步的,第一位置的高度与所述屏幕的高度的比值大小还可以是0.7或者0.8,第二位置的高度与所述屏幕的高度的比值大小的范围还可以为0.25~0.35,并且可以在这个范围内根据实际情况进行调整;当然,第一位置的高度与所述屏幕的高度的比值大小以及第二位置的高度与所述屏幕的高度的比值大小根据实际情况也可以是其他可行的大小。

第一截取单元302,用于截取所述当前屏幕的内容作为第一图片并缓存到缓存集合中。

其中,可以截取当前屏幕的内容作为第一图片,以使得所需要的内容根据时间顺序依次被截取,同时缓存到缓存集合中。

第四判断单元303,用于滚动屏幕并判断位于所述第一位置的内容是否能滚动到所述第二位置。

例如,如图3a所示,屏幕朝着箭头方向向上滚动,再如图3b以及3c所示,第一位置start-y上设有一个笑脸图形,此时可以判断位于第一位置start-y的笑脸图形是否能向上滚动到第二位置end-y。

第二截取单元304,用于若所述第一位置的内容滚动到所述第二位置,截取滚动后的屏幕的内容为一第二图片并依次缓存到缓存集合中。

例如,根据上一步骤的例子可知,若位于第一位置start-y的笑脸图形能够滚动到第二位置end-y,则表明已经完成了一次滚动,那么则可以截取滚动后的屏幕的内容作为一第二图片,并缓存到缓存集合中。

第三截取单元305,用于若所述第一位置的内容不能滚动到所述第二位置,且所述第一位置的内容滚动后所处的位置位于所述第一位置和所述第二位置之间,将所述第一位置的内容滚动后所处的位置作为新的第二位置,并截取滚动后的屏幕的内容为另一第二图片以缓存到缓存集合中。

其中,根据上一步骤的例子可知,若所述第一位置sart-y的笑脸图形不能够滚动到所述第二位置end-y,且所述第一位置sart-y的笑脸图形滚动后所处的位置位于所述第一位置sart-y和所述第二位置end-y之间,那么此时则需要将所述第一位置sart-y的笑脸图形滚动后所处的位置作为新的第二位置end-y,同时可以以当前的第一位置sart-y和新的第二位置end-y为准以截取滚动后的屏幕的内容为另一个第二图片,并缓存到缓存集合中,这里的另一第二图片所对应的第二位置则为新的第二位置。

第一判断单元202,用于判断是否接收到截屏结束指令。

如图3a、3b以及3c所示,用户可以根据需要按返回键以结束截屏,此时可以通过判断是否接收到截屏结束指令来控制是否结束截屏。若用户需要结束截屏,此时可以按返回键,使得终端接收到截屏结束指令,从而结束截屏,并将之前缓存到缓存集合中的图片进行下一步处理。

第二判断单元203,用于若没有接收到截屏结束指令,判断所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片是否相同。

其中,若没有接收到截屏结束指令,则表明可以继续滚动截屏,此时需要判断所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片是否相同,若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片不相同,那么则表明还没有滚动到底,屏幕能够显示的内容并未完全获取,此时还需要继续滚动截屏,并再次进行判断此时的缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片是否相同。

合成单元204,用于若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,根据第二预设规则合成缓存集合中的所有图片以得到最终截取图片。

其中,例如,若缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,则表明已经缓存到底,此时可以根据一个预设的第二预设规则将缓存集合中的所有图片进行合成以得到最终截取图片。

作为进一步优选的,参见图8,其是本发明另一实施例中合成单元204的子单元的示意性框图,所述合成单元204具体可以包括以下单元,

删除单元401,用于若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,删除最后一次缓存的图片以得到一新的缓存集合.

一般情况下,若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,则表明已经缓存到底,为了进行下一步的合成操作,此时则需要删除最后一次缓存的图片以得到一新的缓存集合。当然,只要缓存集合中相同的两个图片即可,也就是说可以只删除倒数第二次缓存的图片。

这里的图片可以是第一图片,也可以是第二图片,比如,当缓存集合中倒数第二次缓存的图片为第一图片,最后一次缓存的图片为跟第一图片相同的图片时,则新的缓存集合中只有第一图片。当缓存集合中的倒数第二次缓存的图片为其中一第二图片,最后一次缓存的图片为跟所述其中一第二图片相同的图片,那么删除一个所述其中一第二图片,此时新的缓存集合中只有一个所述其中一第二图片。

第一处理单元402,用于取所述新的缓存集合中的第一图片,并剪切掉所述第一图片中对应的第一位置以下的内容以得到第一剪切图片.

其中,新的缓存集合中的所有图片均有对应的第一位置和第二位置。为了进行合成,可以剪切掉所述第一图片中对应的第一位置以下的内容以得到第一剪切图片。当然,如果新的缓存集合中只有第一图片时,则不需要对第一图片进行合成处理,即可以取此图片作为最终的截取图片。

第二处理单元403,用于取所述新的缓存集合中除去最后一次缓存的第二图片后剩余的第二图片,并依次剪切掉每个剩余的第二图片中对应的第一位置以下的内容以及对应的第二位置以上的内容,以得到多个依次排列的第二剪切图片。

其中,为了合成的图片中没有重合的内容,需要取所述新的缓存集合中除去最后一次缓存的第二图片后剩余的第二图片,并依次剪切掉每个剩余的第二图片中对应的第一位置以下的内容以及对应的第二位置以上的内容,以得到多个依次排列的第二剪切图片。另外,如果新的缓存集合中只有两张图片,那么则不需要进行此步骤而是直接进行下一步。

第三处理单元404,用于取所述新的缓存集合中的最后一次缓存的第二图片,并剪切掉所述最后一次缓存的第二图片中对应的第二位置以上的内容,以得到另一第二剪切图片.

其中,可以取所述新的缓存集合中的最后一次缓存的第二图片,并剪切掉所述最后一次缓存的第二图片中对应的第二位置以上的内容。若最后一次缓存的第二图片所对应的第二位置为更新后的第二位置,那么此时应以更新后的第二位置为准,以得到另一第二剪切图片。

整合单元405,用于将所述第一剪切图片、所述多个依次排列的第二剪切图片以及所述另一第二剪切图片按从上到下的顺序依次排列合并成最终截取图片。

其中,可以将所述第一剪切图片、所述多个依次排列的第二剪切图片以及所述另一第二剪切图片按从上到下的顺序依次排列合成,从而得到最终截取图片。当然,如果新的缓存集合中只有两张图片,即一张第一图片和一张第二图片,那么则可以剪切掉第一图片对应的第一位置以下的内容,并剪切掉第二图片对应的第二位置以上的内容,以得到第一剪切图片和第二剪切图片,并将第一剪切图片和第二剪切图片从上至下一次排布合成以得到最终截取图片。

参见图9,是本发明另一实施例提供的一种终端的示意框图。如图所示的本实施例中的终端可以包括:一个或多个处理器901;一个或多个输入设备902,一个或多个输出设备903和存储器904。上述处理器901、输入设备902、输出设备903和存储器904通过总线905连接。存储器902用于存储指令,处理器901用于执行存储器902存储的指令。

其中,处理器901用于当接收到截屏操作指令时,根据第一预设规则滚动屏幕以截取相应的图片并依次缓存到一缓存集合中;判断是否接收到截屏结束指令;若没有接收到截屏结束指令,判断所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片是否相同;若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,根据第二预设规则合成缓存集合中的所有图片以得到最终截取图片。

处理器901还用于判断当前屏幕状态是否为预设状态;若当前屏幕状态为预设状态,则执行所述根据第一预设规则滚动屏幕以截取相应的图片并依次缓存到一缓存集合中的步骤。

处理器901具体还用于在当前屏幕上设置一第一位置以及一第二位置;截取所述当前屏幕的内容作为第一图片并缓存到缓存集合中;滚动屏幕并判断位于所述第一位置的内容是否能滚动到所述第二位置;若所述第一位置的内容能滚动到所述第二位置,截取滚动后的屏幕的内容为一第二图片并依次缓存到缓存集合中;若所述第一位置的内容不能滚动到所述第二位置,且所述第一位置的内容滚动后所处的位置位于所述第一位置和所述第二位置之间,将所述第一位置的内容滚动后所处的位置作为新的第二位置,并截取滚动后的屏幕的内容为另一第二图片以缓存到缓存集合中。

处理器901具体还用于若所述缓存集合中的倒数第二次缓存的图片与最后一次缓存的图片相同,删除最后一次缓存的图片以得到一新的缓存集合;取所述新的缓存集合中的第一图片,并剪切掉所述第一图片中对应的第一位置以下的内容以得到第一剪切图片;取所述新的缓存集合中除去最后一次缓存的第二图片后剩余的第二图片,并依次剪切掉每个剩余的第二图片中对应的第一位置以下的内容以及对应的第二位置以上的内容,以得到多个依次排列的第二剪切图片;取所述新的缓存集合中的最后一次缓存的第二图片,并剪切掉所述最后一次缓存的第二图片中对应的第二位置以上的内容,以得到另一第二剪切图片;将所述第一剪切图片、所述多个依次排列的第二剪切图片以及所述另一第二剪切图片按从上到下的顺序依次排列合并成最终截取图片。

应当理解,在本发明实施例中,所称处理器901可以是中央处理单元(centralprocessingunit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

输入设备902可以包括触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备903可以包括显示器(lcd等)、扬声器等。

该存储器904可以包括只读存储器和随机存取存储器,并向处理器901提供指令和数据。存储器904的一部分还可以包括非易失性随机存取存储器。例如,存储器904还可以存储设备类型的信息。

具体实现中,本发明另一实施例中所描述的处理器901、输入设备902、输出设备903可执行本发明实施例提供的截屏方法的实施例和另一实施例中所描述的实现方式,也可执行本发明实施例所描述的终端的实现方式,在此不再赘述。

具体实现中,本发明另一实施例中描述的终端包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机或平板计算机之类的其它便携式设备。还应当理解的是,在某些实施例中,所述设备并非便携式通信设备,而是具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的台式计算机。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的终端和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的终端和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。

本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。

本发明实施例终端中的单元可以根据实际需要进行合并、划分和删减。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

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