具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的向计算终端提供图片数据的方法流程图。
如图1所示,该方法始于步骤S110,在步骤S110中,接收计算终端发送的图片访问请求,该图片访问请求中包括要访问的图片信息以及计算终端的终端类型信息。
可选地,步骤S110可通过如下方式实现:当计算终端的用户需要通过计算终端访问图片时,通常会通过计算终端上安装的浏览器点击某个超链接或输入某个搜索词等方式,从而由浏览器触发计算终端向提供服务的服务器等设备发送图片访问请求,该图片访问请求中至少需要包含用户要访问的图片信息,以便服务器能够找到该图片并提供给用户,以及计算终端的终端类型信息,以便于服务器了解计算终端的终端类型。可选地,计算终端发送的图片访问请求基于HTTP协议构造,而用于指示计算终端的终端类型信息的字段包含在HTTP协议的用户代理(user-agent,以下简称UA)部分中。也就是说,计算终端每次要访问图片时发送的图片访问请求中都包含UA信息。
为了便于理解本发明,下面先简单介绍一下UA信息的具体内容。UA是一个特殊的字符串头,该字符串头中可以包含一系列有关于计算终端的相关信息,例如,计算终端所使用的操作***及版本、CPU类型、浏览器类型及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。通常情况下,UA的标准格式为:浏览器标识;操作***标识;加密等级标识;浏览器语言;渲染引擎标识;版本信息,其中,浏览器标识是形如Mozilla/5.0或Opera/7.54等标记浏览器产品的字串;常见的操作***标识包括:FreeBSD、Linux、Mac、Solaris以及Windows等;加密等级标识例如用“N”表示无安全加密、用“I”表示弱安全加密以及“U”表示强安全加密等;浏览器语言即为浏览器的首选项的常规标签里的语言选项中指定的语言;渲染引擎例如可以为Presto渲染引擎,格式为:Presto/版本号;浏览器版本信息中显示浏览器的真实版本信息,格式为Version/版本号。
在UA所包含的上述一系列信息中,与本发明最相关的是能够反映计算终端的终端类型的信息,例如,操作***标识。通过操作***标识可以很方便地识别出计算终端的终端类型。目前,市场上主流的移动终端的操作***一般采用iOS(苹果操作***)或Android(***安卓操作***),因此,如果操作***为上述两种类型,则可以确定出计算终端的终端类型为移动终端。例如,Android用户访问网页时发送的图片访问请求中包含的UA信息形如Mozilla/5.0(Linux;U;Android 3.1;zh-cn;GT-P7310 Build/HMJ37)AppleWebKit/534.13(KHTML,like Gecko)Version/4.0 Mobile Safari/534.1,其中,“Android”字段明确表示出发送该图片访问请求的计算终端设备所采用的操作***为Android***,因此,表示该计算终端的终端类型为移动终端;Iphone用户访问网页时发送的图片访问请求中包含的UA信息形如Mozilla/5.0(iPhone;CPU iPhone OS 5_0 like Mac OS X)AppleWebKit/534.46(KHTML,like Gecko)Version/5.1 Mobile/9A334 Safari/7534.48.3,其中,“iPhone”字段明确表示出发送该图片访问请求的计算终端设备所采用的是iPhone设备,其对应的操作***为iOS***,因此,也表示该计算终端的终端类型为移动终端。另外,为了进一步提高类型判断的准确性,还可以进一步结合UA中的其他信息,例如版本信息等进行综合判断。
上面描述的采用UA信息来指示计算终端的终端类型的方式只是一种示意性的方式,在实际情况中还可以采用其他多种方式来指示计算终端的终端类型,例如,也可以直接在图片访问请求中设置一个字段,专门用于指示终端类型。
执行完上述步骤S110之后,在步骤S120中,根据计算终端的终端类型信息确定是否对图片进行格式转换。在本实施例中对图片进行格式转换的主要目的是为了改变图片数据的字节数,以利于网络传输。而且,由于不同类型的计算终端之间的软硬件差异,导致其浏览图片时的性能也不完全相同,因此,可以根据计算终端的终端类型的特点来确定是否对图片进行格式转换。
例如,移动终端的屏幕尺寸相对较小、分辨率相对较低,而且通常情况下,移动终端的硬件配置以及处理速度都比不上固定终端。所以,当计算终端的终端类型为移动终端时,可以确定对图片进行格式转换,以便减少图片数据的字节数,从而降低用户流量资费,缩短图片在移动终端上的加载耗时。由于固定终端(例如台式PC机)的屏幕尺寸较大,分辨率也相对较高,而且硬件配置以及处理速度通常都较好,所以,当计算终端的终端类型为固定终端时,可以不必对图片进行格式转换,以便保证图片质量。具体地,为了在步骤S120中方便地确定对于各种类型的计算终端是否执行格式转换,可以事先设置并存储一个终端类型与是否格式转换之间的对照表,通过查找该对照表,确定相应的终端类型是否需要进行格式转换。
在步骤S130中,当确定对图片进行格式转换时,获取与图片访问请求中的图片信息相对应的原始图片数据,根据预定的格式转换规则将原始图片数据转换为预定格式的图片数据,其中,预定格式的图片数据的字节数小于原始图片数据的字节数。
在本实施例中,可以通过图片存储器来存储图片信息相对应的原始图片数据,通过访问该图片存储器获取与图片访问请求中的图片信息相对应的原始图片数据。其中,该图片存储器可以是一台单独的服务器,专门用于存储图片数据,也可以是若干台服务器,每台服务器存储部分图片数据。
具体地,预定的格式转换规则是事先根据图片格式的特点设置好的。设置格式转换规则的目的主要是为了将字节数较多的图片格式转换为字节数较少的图片格式,以便于网络传输。其中,在设置格式转换规则时,可以根据各种图片格式的特点设置一个转换表格,当图片访问请求中所请求的图片信息相对应的原始图片数据的格式在该转换表格中有记载时,直接根据该表格确定转换后的图片数据格式。
将原始图片数据转换为预定格式的图片数据之后,在步骤S140中,将步骤S130中生成的预定格式的图片数据发送给计算终端。
通过上面的方式就可以根据计算终端的类型特点,对要访问的原始图片数据进行一定的格式转换,以便减少原始图片数据的字节数,以达到节省用户的访问时间,减少网络流量的效果。
下面详细介绍一下步骤S130中对图片进行格式转换的具体原理和实现方式。
首先,简单介绍一下有关图像的基本概念。图像由像素组成,像素是图像中的最小信息单元,可以使用不同的颜色模型来描述像素,在计算机图形上,RGB颜色模型是最经常使用的一种颜色模型。在RGB颜色模型中,采用包含红(R)、绿(G)和蓝(B)的数量的方式来描述一个像素。R、G和B被称为成分(又称为通道),每种通道的强度值的范围在0-255之间。将不同的强度的通道组合在一起,就可以获得不同的颜色。比如:红色是rgb(255,0,0)或者十六进制的#FF0000,蓝色是rgb(0,0,255)或者十六进制的#0000FF,灰色的阴影有着三个相同的颜色值,比如,rgb(238,238,238)或者十六进制的#EEEEEE。当使用RGB颜色模型时,可以在一个图形中使用多于1600万种(255*255*255或224可以得到16,777,216种组合)不同的颜色。通常把能够支持这么多种颜色的图像格式叫做真彩色图像格式,例如JPEG和真彩色类型的PNG都属于真彩色图像格式。
为了节约存储空间,在真彩色图像格式的基础上又提出了调色板图像格式。调色板图像格式所采用的一项技术就是将图像中那些唯一的颜色提取出来建立一个列表,这个列表通常叫做调色板(也可以称为索引)。有了这个颜色列表,就可以通过将调色板中的条目和每个像素重新匹配,达到重新绘制整个图片的目的。
由于调色板图像格式利用索引技术节约了存储空间,因此,在本发明实施例中,当用户发送的图片访问请求中的图片信息相对应的原始图片数据为真彩色图像格式时,可以按照预定的格式转换规则将其转换为调色板图像格式的数据,以达到减少字节数的目的。
另外,当用户发送的图片访问请求中的图片信息相对应的原始图片数据为单帧图像互换格式GIF格式时,可以按照预定的格式转换规则将原始图片数据转换为可移植网络图形PNG8格式的图片数据;当用户发送的图片访问请求中的图片信息相对应的原始图片数据为多帧GIF格式时,可以按照预定的格式转换规则维持原始图片数据的格式不变。具体原因在于,PNG8格式除了不支持动画功能以外,几乎包含了GIF格式的所有功能,而且PNG8格式还支持alpha透明格式(即RGBA格式,其中的A代表alpha透明),更重要的是,PNG8格式的压缩比通常要高于GIF格式的压缩比,因此,对于一幅GIF格式的图片数据,转换为PNG8格式的图片数据之后,字节数将明显减少,且图片质量还不会产生明显变化。
由于PNG8格式的上述特点,可以用来处理单帧GIF格式的图片数据。而对于多帧GIF格式的图片数据,由于PNG8格式不支持动画,因此,在本实施例中为了保留多帧GIF格式的动画效果,可以不对多帧GIF格式的图片数据进行转换。
图2示出了百度的logo在格式转换前后的效果示意图。其中,左边的图是GIF格式的原始图片数据,字节数为1630B,右边的图是转换后的PNG8格式的图片数据,字节数为1431B。由此可见,经过格式转换之后,图片的字节数减少了约12%,但是图片质量并无明显改变。具体地,可以通过Imagemagick作为处理工具进行图片格式的转换,或者,也可以采用其它的软件来完成图片格式的转换。
在上面主要描述了将单帧GIF格式转换为PNG8格式的转换方式。对于除单帧GIF格式之外的其他格式的图片数据,由于色彩一般比较丰富,通常大于256色,而PNG8最多只能支持256种颜色,如果将其他格式的图片数据(例如png、jpg格式)强制转换为PNG8格式,可能会对图片造成明显的色彩失真。因此,本实施例中对于其他格式的图片数据可以不进行转换。当然,如果在对图片色彩要求不高的情况下,也可以将其他格式的图片数据转换为PNG8格式的图片数据。
除了上面描述的将单帧GIF格式转换为PNG8格式的转换方式之外,本领域技术人员还可以根据实际情况灵活确定其他的格式转换方式,只要能够实现转换后缩小字节数以利于网络传输的目的即可。
下面结合GIF文件的结构特点介绍一下如何判定一个GIF文件是单帧GIF格式的文件还是多帧GIF格式的文件。
一个GIF文件的结构可分为文件头(File Header)、GIF数据流(GIF DataStream)和文件终结器(Trailer)三个部分。文件头包含GIF文件署名(Signature)和版本号(Version);GIF数据流由控制标识符、图象块(Image Block)和其他的一些扩展块组成;文件终结器只有一个值为0×3B的字符(”;”)表示文件结束。表1示出了一个GIF文件的组成结构:
表1
下面重点说下GIF数据流部分:通过表1可以看出,GIF数据流部分(GIFData Stream)主要包括逻辑屏幕标识符(Logical Screen Descriptor)、全局颜色列表(Global Color Table)以及图像标识符(Image Descriptor)等部分。其中,图像标识符部分与本发明的关系最为密切,通过该部分可以看出该GIF文件属于单帧GIF格式还是多帧GIF格式。具体地,一个GIF文件内可以包含多幅图象,一幅图象结束之后紧接着是下一幅图象的标识符,图象标识符以0×2C(”,”)字符开始,定义紧接着它的图象的性质,包括图象相对于逻辑屏幕边界的偏移量、图象大小以及有无局部颜色列表和颜色列表大小,由10个字节组成。
表2示出了一个图像的标识符的示例:
表2
通过GIF文件的图像标识符部分,就可以方便地查看该GIF文件总共包含多少帧数据,每一帧数据的起始点和结束点,据此可以方便地确定该GIF文件属于单帧GIF格式还是多帧GIF格式,由此确定是否需要执行格式转换。
可选地,为了在确定要是否对图片进行格式转换时,能够更好地适应用户上网的实际情况,在本实施例的步骤S110中发送的图片访问请求中还可以进一步包括计算终端的网络类型信息,相应地,在步骤S 120中进一步包括:根据计算终端的网络类型信息来确定是否对图片进行格式转换。
具体地,在步骤S110中,计算终端的网络类型信息可以以参数形式包含在图片访问请求中。例如,计算终端的浏览器可以通过android***中的ConnectivityManager函数识别用户所用的网络环境是移动网络环境(例如2G、3G等)还是wifi网络环境,其中,ConnectivityManager函数用于管理和网络连接相关的操作。当计算终端识别出用户所用的网络环境是移动网络时,在发送的图片访问请求中包含http GET[‘NW’]=‘MBIL’参数信息;当计算终端识别出用户所用的网络环境是wifi网络时,在发送的图片访问请求中包含httpGET[‘NW’]=‘WIFI’参数信息。
根据图片访问请求确定出计算终端的网络类型之后,在步骤S120中,根据网络类型信息确定是否对图片进行格式转换时,还可以预先设置并存储一个网络类型信息与是否格式转换之间的对照表,查找该对照表,确定与网络类型信息对应的格式转换情况。例如,当用户处于wifi网络环境时,无需进行格式转换;当用户处于移动网络环境时,需要进行格式转换。在设定网络类型信息对应的格式转换规则时,主要是考虑网络环境对图片数据传输的影响,例如,wifi网络属于无线局域网,传输速度较快,因此,可以不对原始图片数据执行格式转换操作,虽然直接提供原始图片需要传输更多的数据量,但由于wifi网络的传输条件较好,传输速度快,因此,即使传输较多的数据量,也不会使用户等待漫长的时间;而移动网络相对于wifi网络来说,传输速度稍慢,因此,为了减少用户的等待时间,可以对移动网络中的图片数据执行格式转换。
在确定是否对图片进行格式转换时考虑网络环境的影响,可以根据用户所在网络的特点,为计算终端量身定制更加合适的图片格式,从而提高用户的满意度。具体实现时,还可以综合考虑网络的信号质量、传输带宽等多种因素来设定图片格式。
具体地,当图片访问请求中包含网络类型信息时,在确定是否对图片进行格式转换时,可以单独根据网络类型信息来确定,也可以根据网络类型信息与终端类型信息二者的结合来确定。当根据网络类型信息与终端类型信息二者的结合来确定是否对图片进行格式转换时,上面描述的网络类型信息与图片格式之间的对照表以及终端类型信息与图片格式之间的对照表可以结合在一张表中,在结合后的表中,根据网络类型信息和终端类型信息这两项信息共同确定是否对图片进行格式转换以及转换后的图片格式。
另外,需要说明的是,根据网络类型信息来确定是否对图片进行格式转换的方式与根据终端类型信息来确定是否对图片进行格式转换的方式是同等重要的。因此,作为替代方式,本发明的方法中的图片访问请求也可以只包含网络类型信息,相应地,在后续步骤中只根据网络类型信息确定是否对图片进行格式转换。
在上面的描述中,是以计算终端的类型为移动终端或固定终端为例进行描述的,在实际情况中,计算终端的类型可以是多种多样的,例如,计算终端的终端类型信息可以包括下列中的一种或者多种:便携式计算设备、PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机,针对这些类型的计算终端,可以结合计算终端的软硬件配置,分别设置相应的格式转换规则。
另外,计算终端的终端类型还可以通过终端屏幕来划分,例如,计算终端的终端类型信息还可以包括:计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。根据计算终端的屏幕大小,可以将计算终端分为大屏幕计算终端和小屏幕计算终端,对于大屏幕计算终端,可以不对图片进行格式转换,以提高图片质量;对于小屏幕计算终端,可以对图片进行格式转换,以提高加载速度降低网络流量。根据计算终端的屏幕的长宽比,可以将计算终端分为宽屏计算终端和非宽屏计算终端,根据宽屏和非宽屏计算终端的特点,设置相应的格式转换规则。例如,根据屏幕的大小和长宽比,可以使网络侧的服务器端对图片进行压缩和裁剪,通过压缩,使图片质量更适合屏幕的大小,通过裁剪,使图片尺寸更适合屏幕的长宽比,这样,计算终端上显示图片时,不仅加载速度快,而且,图片尺寸也与屏幕的尺寸相匹配。尤其是对于宽屏的计算终端,图片经过了压缩和裁剪等处理之后,显示在宽屏计算终端上时就不会出现变形失真等情况,从而改善了图片的显示效果。
同时,在上面的描述中,是以网络类型为移动网络或wifi网络为例进行描述的,在实际情况中,网络类型可能更加丰富,例如,包括以下网络类型中的一种或多种:GPRS、CDMA、3G、4G和WIFI网络以及各种有线链接网络。具体地,针对不同的网络可以综合考虑各种网络的频带范围、传输速度、传输带宽、信号质量以及干扰情况等因素来分别为各种网络设置不同的格式转换规则,从而在加载速度和图片质量之间寻求平衡,以适应网络传输需求,提高用户满意度。
通过本发明实施例提供的方法,可以根据计算终端的特点、网络条件当中的一个或两个因素来确定是否对图片进行格式转换,在需要时可以通过格式转换的方式来提高用户的访问速度,节约网络带宽和网络流量,进而节省网络资费。
图3示出了本发明实施例提供的向计算终端提供图片数据的服务器以及与该服务器相连的计算终端的结构示意图。如图3所示,服务器200包括:网络接口210、类型判定器220、图片处理器230。可选地,还包括图片存储器240。
网络接口210接收计算终端300发送的图片访问请求,该图片访问请求包括要访问的图片信息以及计算终端300的终端类型信息,并且网络接口210还适于将服务器所生成的预定格式的图片数据传输给计算终端300。当计算终端300的用户需要通过计算终端300访问图片时,通常会通过计算终端300上安装的浏览器点击某个超链接或输入某个搜索词等方式,从而由浏览器触发计算终端300向图3中提供服务的服务器200中的网络接口210发送图片访问请求,该图片访问请求中至少需要包含用户要访问的图片信息,以便服务器200能够找到该图片并提供给用户。图片访问请求中还包括计算终端300的终端类型信息,以便于服务器200了解计算终端300的终端类型。可选地,计算终端300发送的图片访问请求基于HTTP协议构造,而用于指示计算终端300的终端类型信息的字段包含在HTTP协议的用户代理(user-agent,以下简称UA)部分中。也就是说,计算终端300每次要访问图片时发送的图片访问请求中都包含UA信息。有关UA信息的具体内容以及通过UA信息指示终端类型的方法可参照方法实施例中相关部分的描述,此处不再赘述。另外,除了采用UA信息来指示计算终端的终端类型之外,在实际情况中还可以采用其他多种方式来指示计算终端的终端类型,例如,也可以直接在图片访问请求中设置一个字段,专门用于指示终端类型。
类型判定器220获取图片访问请求中包括的计算终端300的终端类型信息,并根据计算终端的终端类型信息确定是否对图片进行格式转换。具体地,当终端类型信息包含在UA信息中时,可通过读取图片访问请求的UA信息中用于标识终端类型的字段来确定终端类型,例如,如果包含“Android”字段或“iPhone”字段则表示终端类型为移动终端。其中,UA信息的具体格式以及类型判定器确定是否对图片进行格式转换时的具体方式可参照方法实施例中相应部分的描述。
图片处理器230在类型判定器220确定对图片进行格式转换时,获取与图片访问请求中的图片信息相对应的原始图片数据,根据预定的格式转换规则将原始图片数据转换为预定格式的图片数据,其中,预定格式的图片数据的字节数小于原始图片数据的字节数,并通过网络接口210将预定格式的图片数据传输给计算终端300。
在本实施例中,可以通过图片存储器240来存储图片信息相对应的原始图片数据,图片处理器230通过访问该图片存储器240获取与图片访问请求中的图片信息相对应的原始图片数据。其中,该图片存储器240可以是一台单独的服务器,专门用于存储图片数据,也可以是若干台服务器,每台服务器存储部分图片数据。
其中,图片处理器230对数据进行格式转换的具体方式可参照方法实施例中相应部分的描述,此处不再赘述。
可选地,为了在确定要是否对图片进行格式转换时,能够更好地适应用户上网的实际情况,在本实施例中发送的图片访问请求中还可以进一步包括计算终端的网络类型信息,相应地,类型判定器进一步适于根据计算终端的网络类型信息来确定是否对图片进行格式转换。
具体地,计算终端的网络类型信息可以以参数形式包含在图片访问请求中。例如,计算终端的浏览器可以通过android***中的ConnectivityManager函数识别用户所用的网络环境是移动网络环境还是wifi网络环境,其中,ConnectivityManager函数用于管理和网络连接相关的操作。当计算终端识别出用户所用的网络环境是移动网络时,在发送的图片访问请求中包含httpGET[‘NW’]=‘MBIL’参数信息;当计算终端识别出用户所用的网络环境是wifi网络时,在发送的图片访问请求中包含http GET[‘NW’]=‘WIFI’参数信息。
根据图片访问请求确定出计算终端的网络类型之后,类型判定器根据网络类型信息确定是否对图片进行格式转换时,可以预先设置并存储一个网络类型信息与是否格式转换之间的对照表,查找该对照表,确定与网络类型信息对应的格式转换情况。例如,当用户处于wifi网络环境时,无需进行格式转换;当用户处于移动网络环境时,需要进行格式转换。在设定网络类型信息对应的格式转换规则时,主要是考虑网络环境对图片数据传输的影响,例如,wifi网络属于无线局域网,传输速度较快,因此,可以不对原始图片数据执行格式转换操作,虽然直接提供原始图片需要传输更多的数据量,但由于wifi网络的传输条件较好,传输速度快,因此,即使传输较多的数据量,也不会使用户等待漫长的时间;而移动网络相对于wifi网络来说,传输速度稍慢,因此,为了减少用户的等待时间,可以对移动网络中的图片数据执行格式转换。
在确定是否对图片进行格式转换时考虑网络环境的影响,可以根据用户所在网络的特点,为计算终端量身定制更加合适的图片格式,从而提高用户的满意度。具体实现时,还可以综合考虑网络的信号质量、传输带宽等多种因素来设定图片格式。
具体地,当图片访问请求中包含网络类型信息时,在确定是否对图片进行格式转换时,可以单独根据网络类型信息来确定,也可以根据网络类型信息与终端类型信息二者的结合来确定。当根据网络类型信息与终端类型信息二者的结合来确定是否对图片进行格式转换时,上面描述的网络类型信息与图片格式之间的对照表以及终端类型信息与图片格式之间的对照表可以结合在一张表中,在结合后的表中,根据网络类型信息和终端类型信息这两项信息共同确定是否对图片进行格式转换以及转换后的图片格式。
另外,需要说明的是,根据网络类型信息来确定是否对图片进行格式转换的方式与根据终端类型信息来确定是否对图片进行格式转换的方式是同等重要的。因此,作为替代方式,本发明的方法中的图片访问请求也可以只包含网络类型信息,相应地,在后续步骤中只根据网络类型信息确定是否对图片进行格式转换。
在上面的描述中,是以计算终端的类型为移动终端或固定终端为例进行描述的,在实际情况中,计算终端的类型可以是多种多样的,例如,计算终端的终端类型信息可以包括下列中的一种或者多种:便携式计算设备、PDA、平板计算设备、智能手机移动终端、膝上型计算机以及台式计算机,针对这些类型的计算终端,可以结合计算终端的软硬件配置,分别设置相应的格式转换规则。
另外,计算终端的终端类型还可以通过终端屏幕来划分,例如,计算终端的终端类型信息还可以包括:计算终端的屏幕大小,和/或计算终端的屏幕的长宽比。根据计算终端的屏幕大小,可以将计算终端分为大屏幕计算终端和小屏幕计算终端,对于大屏幕计算终端,可以不对图片进行格式转换,以提高图片质量;对于小屏幕计算终端,可以对图片进行格式转换,以提高加载速度降低网络流量。根据计算终端的屏幕的长宽比,可以将计算终端分为宽屏计算终端和非宽屏计算终端,根据宽屏和非宽屏计算终端的特点,设置相应的格式转换规则。例如,根据屏幕的大小和长宽比,可以使网络侧的服务器端对图片进行压缩和裁剪,通过压缩,使图片质量更适合屏幕的大小,通过裁剪,使图片尺寸更适合屏幕的长宽比,这样,计算终端上显示图片时,不仅加载速度快,而且,图片尺寸也与屏幕的尺寸相匹配。尤其是对于宽屏的计算终端,图片经过了压缩和裁剪等处理之后,显示在宽屏计算终端上时就不会出现变形失真等情况,从而改善了图片的显示效果。
同时,在上面的描述中,是以网络类型为移动网络或wifi网络为例进行描述的,在实际情况中,网络类型可能更加丰富,例如,包括以下网络类型中的一种或多种:GPRS、CDMA、3G、4G和WIFI网络以及各种有线链接网络。具体地,针对不同的网络可以综合考虑各种网络的频带范围、传输速度、传输带宽、信号质量以及干扰情况等因素来分别为各种网络设置不同的格式转换规则,从而在加载速度和图片质量之间寻求平衡,以适应网络传输需求,提高用户满意度。
根据本发明的向计算终端提供图片数据的方法和相应的服务器,可以根据计算终端的终端类型信息来确定对图片进行格式转换,以便减少图片数据的字节数,由此解决了移动终端访问图片时由于数据量较大而导致加载速度慢且消耗网络流量多的问题,取得了能够使移动终端快速地加载图片,且降低了图片访问时的流量消耗的有益效果。
在此提供的算法和显示不与任何特定计算机、虚拟***或者其它设备固有相关。各种通用***也可以与基于在此的示教一起使用。根据上面的描述,构造这类***所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的向计算终端提供图片数据的服务器中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。