具体实施方式
本发明实施例所提供的图片切换方法、装置以及用户终端可应用于如图1所示的应用环境中。如图1所示,用户终端100、服务器200位于无线网络或有线网络300中,通过该无线网络或有线网络300,用户终端100与服务器200进行数据交互。
于本发明实施例中,用户终端100优选为移动终端设备,例如可以包括智能手机、平板电脑、电子书阅读器、膝上型便携计算机、车载电脑、穿戴式用户终端等等。
图2示出了一种可应用于本发明实施例中的用户终端100的结构框图。如图2所示,用户终端100包括存储器102、存储控制器104,一个或多个(图中仅示出一个)处理器106、外设接口108、射频模块110、音频模块112、触控屏幕114等。这些组件通过一条或多条通讯总线/信号线116相互通讯。
存储器102可用于存储软件程序以及模块,如本发明实施例中的图片切换方法以及装置对应的程序指令/模块,处理器106通过运行存储在存储器102内的软件程序以及模块,从而执行各种功能应用以及数据处理,如本发明实施例提供的图片切换方法。
存储器102可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。处理器106以及其他可能的组件对存储器102的访问可在存储控制器104的控制下进行。
外设接口108将各种输入/输入装置耦合至处理器106以及存储器102。在一些实施例中,外设接口108,处理器106以及存储控制器104可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
射频模块110用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。
音频模块112向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。
触控屏幕114在用户终端100与用户之间同时提供一个输出及输入界面。具体地,触控屏幕114向用户显示视频输出,这些视频输出的内容可包括文字、图形、视频及其任意组合。
可以理解,图2所示的结构仅为示意,用户终端100还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。
于本发明实施例中,用户终端100中安装有客户端,该客户端可以是浏览器也可以是第三方应用软件,与服务器(Server)端相对应,为用户提供服务,例如电子书阅读服务,用于播放本地文档或者电子书。
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
第一实施例
如图3所示,为本发明第一实施例提供的图片切换装置300的结构框图,所述图片切换装置300包括:数据获取单元310、数据处理单元320、图片显示单元330。
数据获取单元310用于响应于针对当前显示图片的图片切换指令,获取源图片以及所述图片切换指令指向的目标图片与所述源图片之间的转换参数。
图片切换指令可以由用户在使用用户终端的过程中触发。例如,用户在使用用户终端进行文档浏览或者进行电子小说阅读时,可以根据用户终端提供的多个待选择图片对应的缩略图来选择自己所需要的图片,使用户可以通过点击缩略图来触发图片切换指令,以切换用户终端的当前所显示的界面的背景图片,也就是当前显示图片。在此过程中,用户所选择图片为目标图片。
此外,图片切换指令还可以由用户终端根据预先设定的切换条件触发。可以设定用户终端以预设的时间周期触发图片切换指令。还可以设定用户终端根据其监测到的外部条件进行图片切换。其中,外部条件可以包括光线条件、声音条件等。可以设定用户终端根据其监测到的外部光线条件进行图片切换,以便于用户能够更好的识别用户终端显示的内容。例如,当用户终端监测到外部光线强度超过预设的强度阈值时,触发图片切换指令,以便于将当前显示界面的背景图片切换为浅色调的图片,当用户终端监测到外部光线强度小于预设的强度阈值时,再次触发图片切换指令,以便于将当前显示界面的背景图片切换为深色调的图片。在此过程中,用户终端根据切换条件所选择的图片为目标图片。
当图片切换指令被触发时,数据获取单元310响应图片切换指令,图片切换指令会携带目标图片的信息,也就是图片切换指令所指向的目标图片的信息。
作为一种实施方式,图片切换指令中携带有目标图片的标识信息,该标识信息用于唯一性标识目标图片。在预先设定源图片与其他图片的转换参数时,可以将其他图片各自的标识信息与各自与源图片的转换参数对应。
则在图片切换过程中,数据获取单元310可以先提取图片切换指令中携带的目标图片的标识信息,再获取与该标识信息对应的转换参数。
需要说明的是,所述目标图片与所述源图片之间的转换参数,可以预先根据所述目标图片的像素点的颜色值与所述源图片的像素点的颜色值设置得出。在本发明的一个具体实施方式中,可以利用图片转换软件预先根据源图片和目标图片的像素点的颜色值设置转换参数调试得到。还可以利用其他现有技术手段获得所述转换参数,本发明实施例的具体实现方式并不局限于此。源图片以及转换参数可以直接存储于用户终端中,也可以预先存储于服务端。或者一部分存储于用户终端,另一部分存储于服务端。作为一种实施方式,所述数据获取单元310可以同时包括本地数据获取单元311和远程数据获取单元312,还可以只包括本地数据获取单元311和远程数据获取单元312中的一个。
本地数据获取单元311,用于获取存储于本地的源图片以及与所述目标图片的标识信息对应的转换参数,并将从本地获取的源图片加载到内存中。远程数据获取单元312,用于向服务端发送图片资源请求指令,所述图片资源请求指令携带有所述目标图片的标识信息;接收所述服务端响应于所述图片资源请求指令返回的所述源图片以及与所述目标图片的标识信息对应的转换参数,再将接收到的源图片加载到内存中。
数据处理单元320,用于根据所述源图片以及所述转换参数,得到所述目标图片。
作为一种实施方式,数据处理单元320可以包括颜色值计算单元321,用于根据源图片的像素点的颜色值,以及目标图片与源图片之间的转换参数来得到目标图片的像素点的颜色值。
在本实施例中,如图4所示,所述转换参数可以为图片之间的颜色转换矩阵,相应的,为了便于计算,像素点的颜色值也可以以向量的形式表现出来。例如,目标图片与源图片之间的颜色转换矩阵可以为:
其中,在该颜色转换矩阵中,第一行表示红色分量,第二行表示绿色分量,第三行表示蓝色分量,第四行表示透明度分量。其中该颜色转换矩阵中的元素值均在0到255之间。
源图片的一个像素点的颜色值可以为:
其中,R表示红色值,G表示绿色值,B表示蓝色值,A表示透明度值。
将上述颜色转换矩阵与向量做数据矩阵乘法运算后,可以得到新的向量:
可以理解,R1=a1*R+a2*G+a3*B+a4*A
G1=b1*R+b2*G+b3*B+b4*A
B1=c1*R+c2*G+c3*B+c4*A
A1=d1*R+d2*G+d3*B+d4*A
而新的向量中的R1则为目标图片中该像素点的红色值,G1则为目标图片中该像素点的绿色值,B1则为目标图片中该像素点的蓝色值,A1则为目标图片中该像素点的透明度值。通过相似的方法,即可计算得到目标图片中每个像素点的颜色值。
在得到目标图片的像素点的颜色值后,再通过数据处理单元320包括的图片绘制单元322,基于所述目标图片的像素点的颜色值,在所述源图片上进行绘制,得到所述目标图片。
图片显示单元330,用于将当前显示的图片切换为所述目标图片。
需要说明的是,为了避免不必要的内存资源消耗,数据获取单元310可以在提取到图片切换指令中携带的目标图片的标识信息后,先将获取的标识信息与源图片的标识信息进行比对,如果获取的标识信息与源图片的标识信息相同,可以判定图片切换指令所指向的目标图片即是源图片本身,则直接将当前显示的图片切换为所述源图片即可,则所述数据处理单元320则不需要再执行对应的步骤。
需要说明的是,本实施例中的各单元可以是由软件代码实现,此时,上述的各单元可存储于用户终端100的存储器102内。以上各单元同样可以由硬件例如集成电路芯片实现。
本发明第一实施例提供的图片切换装置,在图片的切换过程中,通过获取源图片以及所述图片切换指令指向的目标图片与所述源图片之间的转换参数,再根据所述源图片以及所述转换参数,得到所需显示的目标图片的方式,使得在图片的切换过程中可以只加载源图片到内存中,而无需加载其他的图片,减小内图片切换过程中的内存占用。
此外,因为只需要通过源图片以及转换参数即可实现图片切换,则在将包括本实施例提供的图片切换装置的应用程序进行打包封装时,可以只将源图片封装于安装包文件中,不需要加入其他的待切换图片,有效的减小了安装包文件的大小。
第二实施例
如图4所示,为本发明第二实施例提供的图片切换装置400的结构框图,所述图片切换装置400包括:数据获取单元410、数据对比单元420、数据处理单元430以及图片显示单元440;
数据获取单元410,用于响应于针对当前显示图片的图片切换指令,获取源图片以及所述图片切换指令指向的目标图片与所述源图片之间的转换参数;
数据比对单元420,用于将当次获取的所述转换参数与上一次获取的转换参数进行对比,
数据处理单元430,用于当当次获取的所述转换参数与上一次获取的转换参数不相同时,根据所述源图片以及所述转换参数,得到所述目标图片。
当当次获取的所述转换参数与上一次获取的转换参数相同时,则图片切换流程结束。
例如,当转换参数为颜色转换矩阵时,需要将当次获取的颜色转换矩阵与上一次获取的颜色转换矩阵对应位置的元素值一一对比,当对应位置的元素值均相同时,则判定当次获取的颜色转换矩阵与上一次获取的颜色转换矩阵相同。
图片显示单元440,用于将当前显示的图片切换为所述目标图片。
需要说明的是,本实施例中的各单元可以是由软件代码实现,此时,上述的各单元可存储于用户终端100的存储器102内。以上各单元同样可以由硬件例如集成电路芯片实现。
本发明第二实施例提供的图片切换装置,不仅使得在图片的切换过程中可以只加载源图片到内存中,而无需加载其他的图片,减小内图片切换过程中的内存占用,还进一步的避免了在图片切换过程中的进行重复的数据计算。
第三实施例
如图5所示,本发明第三实施例提供的一种图片切换方法,该方法描述的是用户终端的处理流程,所述方法,包括:
步骤S510:响应于针对当前显示图片的图片切换指令,获取源图片以及所述图片切换指令指向的目标图片与所述源图片之间的转换参数;可以理解,可以通过第一实施例中的数据获取单元310来执行步骤S510。
作为一种实施方式,所述图片切换指令携带有所述目标图片的标识信息,则还可以通过数据获取单元310来获取源图片以及与所述目标图片的标识信息对应的转换参数。
需要说明的是,所述目标图片与所述源图片之间的转换参数,预先根据所述目标图片的像素点的颜色值与所述源图片的像素点的颜色值计算得出。源图片以及转换参数可以直接存储于用户终端中,也可以预先存储于服务端,或者一部分存储于用户终端,另一部分存储于服务端。
则在获取源图片以及与所述目标图片的标识信息对应的转换参数的过程中,可以通过本地数据获取单元311获取预先存储于本地的源图片以及与所述目标图片的标识信息对应的转换参数。
也可以通过远程数据获取单元312向服务端发送图片资源请求指令,所述图片资源请求指令携带有所述目标图片的标识信息;再通过远程数据接收单元313接收所述服务端响应于所述图片资源请求指令返回的所述源图片以及与所述目标图片的标识信息对应的转换参数。
步骤S520:根据所述源图片以及所述转换参数,得到所述目标图片。
可以理解,可以通过第一实施中的数据处理单元320来执行步骤S520。
作为一种实施方式,在根据所述源图片以及所述转换参数,得到所述目标图片的过程中,可以通过颜色值计算单元321根据所述源图片的像素点的颜色值以及所述转换参数,得到所述目标图片的像素点的颜色值;
再通过图片绘制单元322基于所述目标图片的像素点的颜色值,在所述源图片上进行绘制,得到所述目标图片。
步骤S530:将当前显示的图片切换为所述目标图片。
可以理解,可以通过第一实施中的数据处理单元330来执行步骤S530。
第四实施例
如图6所示,本发明第四实施例提供的一种图片切换方法,该方法描述的是用户终端的处理流程,所述方法,包括:
步骤S610:响应于针对当前显示图片的图片切换指令,获取源图片以及所述图片切换指令指向的目标图片与所述源图片之间的转换参数;
步骤S620:将当次获取的所述转换参数与上一次获取的转换参数进行对比;
当当次获取的所述转换参数与上一次获取的转换参数不相同时,则执行步骤S630:根据所述源图片以及所述转换参数,得到所述目标图片;否则,结束图片切换流程。
步骤S640:将当前显示的图片切换为所述目标图片。
可以理解,步骤S610可以由第二实施例中的数据获取单元410执行,步骤S620可以由数据比对单元430执行,步骤S630可以由数据处理单元420执行,步骤S640可以由图片显示单元440执行。
综上所述,本发明实施例提供的图片切换方法、装置以及用户终端,在图片的切换过程中,通过获取源图片以及所述图片切换指令指向的目标图片与所述源图片之间的转换参数,再根据所述源图片以及所述转换参数,得到所需显示的目标图片的方式,使得在图片的切换过程中可以只加载源图片到内存中,而无需加载其他的图片,减小内图片切换过程中的内存占用,加快了处理速度。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的方法、用户终端实施例的具体工作过程,可以参考前述装置实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器200,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。