專利名稱:向計(jì)算終端提供圖片數(shù)據(jù)的方法及服務(wù)器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及圖像處理領(lǐng)域,具體涉及一種向計(jì)算終端提供圖片數(shù)據(jù)的方法及服務(wù)
器。
背景技術(shù):
隨著移動(dòng)設(shè)備的高速發(fā)展,移動(dòng)設(shè)備的類型和功能也越來越豐富。目前,多數(shù)移動(dòng)設(shè)備都提供有圖片瀏覽功能,因此,越來越多的人通過移動(dòng)設(shè)備來瀏覽圖片。但是,由于移動(dòng)設(shè)備本身的局限性,例如,硬件配置和網(wǎng)絡(luò)帶寬遠(yuǎn)不如一些固定設(shè)備(例如PC機(jī)),因此,采用移動(dòng)設(shè)備瀏覽圖片,尤其是瀏覽一些數(shù)據(jù)量較大的圖片時(shí),很容易出現(xiàn)圖片加載緩慢甚至加載失敗的情形。而且,由于圖片的數(shù)據(jù)量較大,與瀏覽文字相t匕,瀏覽圖片需要消耗更多的網(wǎng)絡(luò)流量,但目前很多移動(dòng)設(shè)備的網(wǎng)絡(luò)流量都是有限度的,所以,頻繁瀏覽圖片很容易造成網(wǎng)絡(luò)流量超出限度,從而為用戶增加很多額外的資費(fèi)。
發(fā)明內(nèi)容
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的向計(jì)算終端提供圖片數(shù)據(jù)的方法和相應(yīng)的服務(wù)器。依據(jù)本發(fā)明的一個(gè)方面,提供了一種向計(jì)算終端提供圖片數(shù)據(jù)的方法,包括步驟接收計(jì)算終端發(fā)送的圖片訪問請(qǐng)求,圖片訪問請(qǐng)求包括要訪問的圖片信息以及計(jì)算終端的終端類型信息;根據(jù)計(jì)算終端的終端類型信息確定是否對(duì)圖片進(jìn)行格式轉(zhuǎn)換;當(dāng)確定對(duì)圖片進(jìn)行格式轉(zhuǎn)換時(shí),獲取與圖片訪問請(qǐng)求中的圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù),根據(jù)預(yù)定的格式轉(zhuǎn)換規(guī)則將原始圖片數(shù)據(jù)轉(zhuǎn)換為預(yù)定格式的圖片數(shù)據(jù),其中,預(yù)定格式的圖片數(shù)據(jù)的字節(jié)數(shù)小于原始圖片數(shù)據(jù)的字節(jié)數(shù);以及將預(yù)定格式的圖片數(shù)據(jù)發(fā)送給計(jì)算終端??蛇x地,圖片訪問請(qǐng)求還包括計(jì)算終端的網(wǎng)絡(luò)類型信息;以及該方法還包括根據(jù)計(jì)算終端的網(wǎng)絡(luò)類型信息來確定是否對(duì)圖片進(jìn)行格式轉(zhuǎn)換。根據(jù)本發(fā)明的另一方面,提供了一種向計(jì)算終端提供圖片數(shù)據(jù)的服務(wù)器,包括網(wǎng)絡(luò)接口,適于接收計(jì)算終端發(fā)送的圖片訪問請(qǐng)求,圖片訪問請(qǐng)求包括要訪問的圖片信息以及計(jì)算終端的終端類型信息,并且將服務(wù)器所生成的預(yù)定格式的圖片數(shù)據(jù)傳輸給計(jì)算終端;類型判定器,適于根據(jù)計(jì)算終端的終端類型信息確定是否對(duì)圖片進(jìn)行格式轉(zhuǎn)換;圖片處理器,適于當(dāng)類型判定器確定對(duì)圖片進(jìn)行格式轉(zhuǎn)換時(shí),獲取與圖片訪問請(qǐng)求中的圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù),根據(jù)預(yù)定的格式轉(zhuǎn)換規(guī)則將原始圖片數(shù)據(jù)轉(zhuǎn)換為預(yù)定格式的圖片數(shù)據(jù),其中,預(yù)定格式的圖片數(shù)據(jù)的字節(jié)數(shù)小于原始圖片數(shù)據(jù)的字節(jié)數(shù);以及圖片存儲(chǔ)器,適于存儲(chǔ)圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù)??蛇x地,圖片訪問請(qǐng)求還包括計(jì)算終端的網(wǎng)絡(luò)類型信息,類型判定器還適于根據(jù)計(jì)算終端的網(wǎng)絡(luò)類型信息來確定是否對(duì)圖片進(jìn)行格式轉(zhuǎn)換。根據(jù)本發(fā)明的向計(jì)算終端提供圖片數(shù)據(jù)的方法和相應(yīng)的服務(wù)器,可以根據(jù)計(jì)算終端的終端類型信息來確定對(duì)圖片進(jìn)行格式轉(zhuǎn)換,以便減少圖片數(shù)據(jù)的字節(jié)數(shù),由此解決了移動(dòng)終端訪問圖片時(shí)由于數(shù)據(jù)量較大而導(dǎo)致加載速度慢且消耗網(wǎng)絡(luò)流量多的問題,取得了能夠使移動(dòng)終端快速地加載圖片,且降低了圖片訪問時(shí)的流量消耗的有益效果。另外,根據(jù)本發(fā)明的方法和服務(wù)器,還可以根據(jù)計(jì)算終端的網(wǎng)絡(luò)類型來確定對(duì)圖片進(jìn)行格式轉(zhuǎn)換,當(dāng)計(jì)算終端通過低速網(wǎng)絡(luò)或者費(fèi)用較高的網(wǎng)絡(luò)訪問圖片時(shí),可以減少圖片數(shù)據(jù)傳輸量,從而解決了移動(dòng)終端訪問圖片時(shí)加載速度慢且消耗網(wǎng)絡(luò)流量多的問題,取得了能夠使移動(dòng)終端快速地加載圖片,且降低了圖片訪問時(shí)的流量消耗的有益效果。上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式
。
通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明 的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中圖I示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的向計(jì)算終端提供圖片數(shù)據(jù)的方法流程圖;圖2示出了本發(fā)明一個(gè)實(shí)施例中百度的logo在格式轉(zhuǎn)換前后的效果示意圖;圖3示出了根據(jù)本發(fā)明提供的向計(jì)算終端提供圖片數(shù)據(jù)的服務(wù)器以及與該服務(wù)器相連的計(jì)算終端的示意圖。
具體實(shí)施例方式下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。圖I示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的向計(jì)算終端提供圖片數(shù)據(jù)的方法流程圖。如圖I所示,該方法始于步驟S110,在步驟SllO中,接收計(jì)算終端發(fā)送的圖片訪問請(qǐng)求,該圖片訪問請(qǐng)求中包括要訪問的圖片信息以及計(jì)算終端的終端類型信息??蛇x地,步驟SllO可通過如下方式實(shí)現(xiàn)當(dāng)計(jì)算終端的用戶需要通過計(jì)算終端訪問圖片時(shí),通常會(huì)通過計(jì)算終端上安裝的瀏覽器點(diǎn)擊某個(gè)超鏈接或輸入某個(gè)搜索詞等方式,從而由瀏覽器觸發(fā)計(jì)算終端向提供服務(wù)的服務(wù)器等設(shè)備發(fā)送圖片訪問請(qǐng)求,該圖片訪問請(qǐng)求中至少需要包含用戶要訪問的圖片信息,以便服務(wù)器能夠找到該圖片并提供給用戶,以及計(jì)算終端的終端類型信息,以便于服務(wù)器了解計(jì)算終端的終端類型??蛇x地,計(jì)算終端發(fā)送的圖片訪問請(qǐng)求基于HTTP協(xié)議構(gòu)造,而用于指示計(jì)算終端的終端類型信息的字段包含在HTTP協(xié)議的用戶代理(user-agent,以下簡稱UA)部分中。也就是說,計(jì)算終端每次要訪問圖片時(shí)發(fā)送的圖片訪問請(qǐng)求中都包含UA信息。為了便于理解本發(fā)明,下面先簡單介紹一下UA信息的具體內(nèi)容。UA是一個(gè)特殊的字符串頭,該字符串頭中可以包含一系列有關(guān)于計(jì)算終端的相關(guān)信息,例如,計(jì)算終端所使用的操作系統(tǒng)及版本、CPU類型、瀏覽器類型及版本、瀏覽器渲染引擎、瀏覽器語言、瀏覽器插件等。通常情況下,UA的標(biāo)準(zhǔn)格式為瀏覽器標(biāo)識(shí);操作系統(tǒng)標(biāo)識(shí);加密等級(jí)標(biāo)識(shí);瀏覽器語言;渲染引擎標(biāo)識(shí);版本信息,其中,瀏覽器標(biāo)識(shí)是形如Mozilla/5. O或Opera/7. 54等標(biāo)記瀏覽器產(chǎn)品的字串;常見的操作系統(tǒng)標(biāo)識(shí)包括FreeBSD、Linux、Mac、Solaris以及Windows等;加密等級(jí)標(biāo)識(shí)例如用“N”表示無安全加密、用“ I ”表示弱安全加密以及“U”表示強(qiáng)安全加密等;瀏覽器語言即為瀏覽器的首選項(xiàng)的常規(guī)標(biāo)簽里的語言選項(xiàng)中指定的語言;渲染引擎例如可以為Presto渲染引擎,格式為=Presto/版本號(hào);瀏覽器版本信息中顯不瀏覽器的真實(shí)版本信息,格式為Version/版本號(hào)。在UA所包含的上述一系列信息中,與本發(fā)明最相關(guān)的是能夠反映計(jì)算終端的終端類型的信息,例如,操作系統(tǒng)標(biāo)識(shí)。通過操作系統(tǒng)標(biāo)識(shí)可以很方便地識(shí)別出計(jì)算終端的終端類型。目前,市場上主流的移動(dòng)終端的操作系統(tǒng)一般采用ios (蘋果操作系統(tǒng))或Android (google安卓操作系統(tǒng)),因此,如果操作系統(tǒng)為上述兩種類型,則可以確定出計(jì)算終端的終端類型為移動(dòng)終端。例如,Android用戶訪問網(wǎng)頁時(shí)發(fā)送的圖片訪問請(qǐng)求中包含的 UA 信息形如 Mozilla/5. 0 (Linux; U; Android 3. I; zh-cn; GT-P7310 Build/HMJ37)AppleffebKit/534. 13(KHTML, like Gecko)Version/4.0 Mobile Safari/534. I,其中,“Android”字段明確表示出發(fā)送該圖片訪問請(qǐng)求的計(jì)算終端設(shè)備所采用的操作系統(tǒng)為Android系統(tǒng),因此,表示該計(jì)算終端的終端類型為移動(dòng)終端;Iph0ne用戶訪問網(wǎng)頁時(shí)發(fā)送的圖片訪問請(qǐng)求中包含的UA信息形如Mozilla/5. 0(iPhone;CPU iPhone OS 5_0
like Mac OS X)AppleffebKit/534. 46(KHTML, like Gecko)Version/5. I Mobile/9A334Safari/7534. 48. 3,其中,“ iPhone”字段明確表示出發(fā)送該圖片訪問請(qǐng)求的計(jì)算終端設(shè)備所采用的是iPhone設(shè)備,其對(duì)應(yīng)的操作系統(tǒng)為iOS系統(tǒng),因此,也表示該計(jì)算終端的終端類型為移動(dòng)終端。另外,為了進(jìn)一步提高類型判斷的準(zhǔn)確性,還可以進(jìn)一步結(jié)合UA中的其他信息,例如版本信息等進(jìn)行綜合判斷。上面描述的采用UA信息來指示計(jì)算終端的終端類型的方式只是一種示意性的方式,在實(shí)際情況中還可以采用其他多種方式來指示計(jì)算終端的終端類型,例如,也可以直接在圖片訪問請(qǐng)求中設(shè)置一個(gè)字段,專門用于指示終端類型。執(zhí)行完上述步驟SllO之后,在步驟S120中,根據(jù)計(jì)算終端的終端類型信息確定是否對(duì)圖片進(jìn)行格式轉(zhuǎn)換。在本實(shí)施例中對(duì)圖片進(jìn)行格式轉(zhuǎn)換的主要目的是為了改變圖片數(shù)據(jù)的字節(jié)數(shù),以利于網(wǎng)絡(luò)傳輸。而且,由于不同類型的計(jì)算終端之間的軟硬件差異,導(dǎo)致其瀏覽圖片時(shí)的性能也不完全相同,因此,可以根據(jù)計(jì)算終端的終端類型的特點(diǎn)來確定是否對(duì)圖片進(jìn)行格式轉(zhuǎn)換。例如,移動(dòng)終端的屏幕尺寸相對(duì)較小、分辨率相對(duì)較低,而且通常情況下,移動(dòng)終端的硬件配置以及處理速度都比不上固定終端。所以,當(dāng)計(jì)算終端的終端類型為移動(dòng)終端時(shí),可以確定對(duì)圖片進(jìn)行格式轉(zhuǎn)換,以便減少圖片數(shù)據(jù)的字節(jié)數(shù),從而降低用戶流量資費(fèi),縮短圖片在移動(dòng)終端上的加載耗時(shí)。由于固定終端(例如臺(tái)式PC機(jī))的屏幕尺寸較大,分辨率也相對(duì)較高,而且硬件配置以及處理速度通常都較好,所以,當(dāng)計(jì)算終端的終端類型為固定終端時(shí),可以不必對(duì)圖片進(jìn)行格式轉(zhuǎn)換,以便保證圖片質(zhì)量。具體地,為了在步驟S120中方便地確定對(duì)于各種類型的計(jì)算終端是否執(zhí)行格式轉(zhuǎn)換,可以事先設(shè)置并存儲(chǔ)一個(gè)終端類型與是否格式轉(zhuǎn)換之間的對(duì)照表,通過查找該對(duì)照表,確定相應(yīng)的終端類型是否需要進(jìn)行格式轉(zhuǎn)換。在步驟S130中,當(dāng)確定對(duì)圖片進(jìn)行格式轉(zhuǎn)換時(shí),獲取與圖片訪問請(qǐng)求中的圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù),根據(jù)預(yù)定的格式轉(zhuǎn)換規(guī)則將原始圖片數(shù)據(jù)轉(zhuǎn)換為預(yù)定格式的圖片數(shù)據(jù),其中,預(yù)定格式的圖片數(shù)據(jù)的字節(jié)數(shù)小于原始圖片數(shù)據(jù)的字節(jié)數(shù)。在本實(shí)施例中,可以通過圖片存儲(chǔ)器來存儲(chǔ)圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù),通過訪問該圖片存儲(chǔ)器獲取與圖片訪問請(qǐng)求中的圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù)。其中,該圖片存儲(chǔ)器可以是一臺(tái)單獨(dú)的服務(wù)器,專門用于存儲(chǔ)圖片數(shù)據(jù),也可以是若干臺(tái)服務(wù)器,每臺(tái)服務(wù)器存儲(chǔ)部分圖片數(shù)據(jù)。具體地,預(yù)定的格式轉(zhuǎn)換規(guī)則是事先根據(jù)圖片格式的特點(diǎn)設(shè)置好的。設(shè)置格式轉(zhuǎn)換規(guī)則的目的主要是為了將字節(jié)數(shù)較多的圖片格式轉(zhuǎn)換為字節(jié)數(shù)較少的圖片格式,以便于網(wǎng)絡(luò)傳輸。其中,在設(shè)置格式轉(zhuǎn)換規(guī)則時(shí),可以根據(jù)各種圖片格式的特點(diǎn)設(shè)置一個(gè)轉(zhuǎn)換表格,當(dāng)圖片訪問請(qǐng)求中所請(qǐng)求的圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù)的格式在該轉(zhuǎn)換表格中有記載時(shí),直接根據(jù)該表格確定轉(zhuǎn)換后的圖片數(shù)據(jù)格式。 將原始圖片數(shù)據(jù)轉(zhuǎn)換為預(yù)定格式的圖片數(shù)據(jù)之后,在步驟S140中,將步驟S130中生成的預(yù)定格式的圖片數(shù)據(jù)發(fā)送給計(jì)算終端。通過上面的方式就可以根據(jù)計(jì)算終端的類型特點(diǎn),對(duì)要訪問的原始圖片數(shù)據(jù)進(jìn)行一定的格式轉(zhuǎn)換,以便減少原始圖片數(shù)據(jù)的字節(jié)數(shù),以達(dá)到節(jié)省用戶的訪問時(shí)間,減少網(wǎng)絡(luò)流量的效果。下面詳細(xì)介紹一下步驟S130中對(duì)圖片進(jìn)行格式轉(zhuǎn)換的具體原理和實(shí)現(xiàn)方式。首先,簡單介紹一下有關(guān)圖像的基本概念。圖像由像素組成,像素是圖像中的最小信息單元,可以使用不同的顏色模型來描述像素,在計(jì)算機(jī)圖形上,RGB顏色模型是最經(jīng)常使用的一種顏色模型。在RGB顏色模型中,采用包含紅(R)、綠(G)和藍(lán)(B)的數(shù)量的方式來描述一個(gè)像素。R、G和B被稱為成分(又稱為通道),每種通道的強(qiáng)度值的范圍在0-255之間。將不同的強(qiáng)度的通道組合在一起,就可以獲得不同的顏色。比如紅色是rgb(255,0,0)或者十六進(jìn)制的#FF0000,藍(lán)色是rgb (0,0,255)或者十六進(jìn)制的#0000FF,灰色的陰影有著三個(gè)相同的顏色值,比如,rgb (238,238,238)或者十六進(jìn)制的#EEEEEE。當(dāng)使用RGB顏色模型時(shí),可以在一個(gè)圖形中使用多于1600萬種(255*255*255或224可以得到16,777,216種組合)不同的顏色。通常把能夠支持這么多種顏色的圖像格式叫做真彩色圖像格式,例如JPEG和真彩色類型的PNG都屬于真彩色圖像格式。為了節(jié)約存儲(chǔ)空間,在真彩色圖像格式的基礎(chǔ)上又提出了調(diào)色板圖像格式。調(diào)色板圖像格式所采用的一項(xiàng)技術(shù)就是將圖像中那些唯一的顏色提取出來建立一個(gè)列表,這個(gè)列表通常叫做調(diào)色板(也可以稱為索引)。有了這個(gè)顏色列表,就可以通過將調(diào)色板中的條目和每個(gè)像素重新匹配,達(dá)到重新繪制整個(gè)圖片的目的。由于調(diào)色板圖像格式利用索引技術(shù)節(jié)約了存儲(chǔ)空間,因此,在本發(fā)明實(shí)施例中,當(dāng)用戶發(fā)送的圖片訪問請(qǐng)求中的圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù)為真彩色圖像格式時(shí),可以按照預(yù)定的格式轉(zhuǎn)換規(guī)則將其轉(zhuǎn)換為調(diào)色板圖像格式的數(shù)據(jù),以達(dá)到減少字節(jié)數(shù)的目的。另外,當(dāng)用戶發(fā)送的圖片訪問請(qǐng)求中的圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù)為單幀圖像互換格式GIF格式時(shí),可以按照預(yù)定的格式轉(zhuǎn)換規(guī)則將原始圖片數(shù)據(jù)轉(zhuǎn)換為可移植網(wǎng)絡(luò)圖形PNG8格式的圖片數(shù)據(jù);當(dāng)用戶發(fā)送的圖片訪問請(qǐng)求中的圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù)為多幀GIF格式時(shí),可以按照預(yù)定的格式轉(zhuǎn)換規(guī)則維持原始圖片數(shù)據(jù)的格式不變。具體原因在于,PNG8格式除了不支持動(dòng)畫功能以外,幾乎包含了 GIF格式的所有功能,而且PNG8格式還支持alpha透明格式(即RGBA格式,其中的A代表alpha透明),更重要的是,PNG8格式的壓縮比通常要高于GIF格式的壓縮比,因此,對(duì)于一幅GIF格式的圖片數(shù)據(jù),轉(zhuǎn)換為PNG8格式的圖片數(shù)據(jù)之后,字節(jié)數(shù)將明顯減少,且圖片質(zhì)量還不會(huì)產(chǎn)生明顯變化。由于PNG8格式的上述特點(diǎn),可以用來處理單幀GIF格式的圖片數(shù)據(jù)。而對(duì)于多幀GIF格式的圖片數(shù)據(jù),由于PNG8格式不支持動(dòng)畫,因此,在本實(shí)施例中為了保留多幀GIF格式的動(dòng)畫效果,可以不對(duì)多幀GIF格式的圖片數(shù)據(jù)進(jìn)行轉(zhuǎn)換。圖2示出了百度的logo在格式轉(zhuǎn)換前后的效果示意圖。其中,左邊的圖是GIF格式的原始圖片數(shù)據(jù),字節(jié)數(shù)為1630B,右邊的圖是轉(zhuǎn)換后的PNG8格式的圖片數(shù)據(jù),字節(jié)數(shù)為1431B。由此可見,經(jīng)過格式轉(zhuǎn)換之后,圖片的字節(jié)數(shù)減少了約12%,但是圖片質(zhì)量并無明顯改變。具體地,可以通過Imagemagick作為處理工具進(jìn)行圖片格式的轉(zhuǎn)換,或者,也可以采用其它的軟件來完成圖片格式的轉(zhuǎn)換。 在上面主要描述了將單幀GIF格式轉(zhuǎn)換為PNG8格式的轉(zhuǎn)換方式。對(duì)于除單幀GIF格式之外的其他格式的圖片數(shù)據(jù),由于色彩一般比較豐富,通常大于256色,而PNG8最多只能支持256種顏色,如果將其他格式的圖片數(shù)據(jù)(例如png、jpg格式)強(qiáng)制轉(zhuǎn)換為PNG8格式,可能會(huì)對(duì)圖片造成明顯的色彩失真。因此,本實(shí)施例中對(duì)于其他格式的圖片數(shù)據(jù)可以不進(jìn)行轉(zhuǎn)換。當(dāng)然,如果在對(duì)圖片色彩要求不高的情況下,也可以將其他格式的圖片數(shù)據(jù)轉(zhuǎn)換SPNGS格式的圖片數(shù)據(jù)。除了上面描述的將單幀GIF格式轉(zhuǎn)換為PNG8格式的轉(zhuǎn)換方式之外,本領(lǐng)域技術(shù)人員還可以根據(jù)實(shí)際情況靈活確定其他的格式轉(zhuǎn)換方式,只要能夠?qū)崿F(xiàn)轉(zhuǎn)換后縮小字節(jié)數(shù)以利于網(wǎng)絡(luò)傳輸?shù)哪康募纯?。下面結(jié)合GIF文件的結(jié)構(gòu)特點(diǎn)介紹一下如何判定一個(gè)GIF文件是單幀GIF格式的文件還是多幀GIF格式的文件。一個(gè)GIF文件的結(jié)構(gòu)可分為文件頭(File Header)、GIF數(shù)據(jù)流(GIF DataStream)和文件終結(jié)器(Trailer)三個(gè)部分。文件頭包含GIF文件署名(Signature)和版本號(hào)(Version) ;GIF數(shù)據(jù)流由控制標(biāo)識(shí)符、圖象塊(Image Block)和其他的一些擴(kuò)展塊組成;文件終結(jié)器只有一個(gè)值為0X3B的字符(”;”)表示文件結(jié)束。表I示出了一個(gè)GIF文件的組成結(jié)構(gòu)表I
權(quán)利要求
1.一種向計(jì)算終端提供圖片數(shù)據(jù)的方法,包括步驟 接收計(jì)算終端發(fā)送的圖片訪問請(qǐng)求,所述圖片訪問請(qǐng)求包括要訪問的圖片信息以及計(jì)算終端的終端類型信息; 根據(jù)所述計(jì)算終端的終端類型信息確定是否對(duì)圖片進(jìn)行格式轉(zhuǎn)換; 當(dāng)確定對(duì)圖片進(jìn)行格式轉(zhuǎn)換時(shí),獲取與所述圖片訪問請(qǐng)求中的圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù),根據(jù)預(yù)定的格式轉(zhuǎn)換規(guī)則將所述原始圖片數(shù)據(jù)轉(zhuǎn)換為預(yù)定格式的圖片數(shù)據(jù),其中,所述預(yù)定格式的圖片數(shù)據(jù)的字節(jié)數(shù)小于所述原始圖片數(shù)據(jù)的字節(jié)數(shù);以及 將所述預(yù)定格式的圖片數(shù)據(jù)發(fā)送給所述計(jì)算終端。
2.如權(quán)利要求I所述的方法,其中所述圖片訪問請(qǐng)求還包括所述計(jì)算終端的網(wǎng)絡(luò)類型信息;以及所述方法還包括 根據(jù)所述計(jì)算終端的網(wǎng)絡(luò)類型信息來確定是否對(duì)圖片進(jìn)行格式轉(zhuǎn)換。
3.如權(quán)利要求I或2所述的方法,所述計(jì)算終端的終端類型信息包括下列中的一種或者多種便攜式計(jì)算設(shè)備、PDA、平板計(jì)算設(shè)備、智能手機(jī)移動(dòng)終端、膝上型計(jì)算機(jī)以及臺(tái)式計(jì)算機(jī);或者, 所述計(jì)算終端的終端類型信息包括計(jì)算終端的屏幕大小,和/或計(jì)算終端的屏幕的長寬比。
4.如權(quán)利要求2所述的方法,其中所述計(jì)算終端的網(wǎng)絡(luò)類型信息包括下列中的一種或者多種GPRS、CDMA、3G、4G、WIFI和有線鏈接網(wǎng)絡(luò)。
5.如權(quán)利要求1-4中任一個(gè)所述的方法,所述圖片訪問請(qǐng)求基于HTTP協(xié)議,而用于指示計(jì)算終端的終端類型信息的字段包含在HTTP協(xié)議的用戶代理部分中。
6.如權(quán)利要求5的方法,其中所述計(jì)算終端的網(wǎng)絡(luò)類型信息以參數(shù)形式包含在所述圖片訪問請(qǐng)求中。
7.如權(quán)利要求1-6中任一個(gè)所述的方法,所述預(yù)定的格式轉(zhuǎn)換規(guī)則包括 當(dāng)確定所述原始圖片數(shù)據(jù)的數(shù)據(jù)格式為單幀圖像互換格式GIF時(shí),將所述原始圖片數(shù)據(jù)的數(shù)據(jù)格式轉(zhuǎn)換為可移植網(wǎng)絡(luò)圖形PNG8格式的圖片數(shù)據(jù)。
8.如權(quán)利要求7所述的方法,根據(jù)GIF文件結(jié)構(gòu)中的圖像標(biāo)識(shí)符來確定該GIF文件是否為單幀圖像互換格式GIF。
9.一種向計(jì)算終端提供圖片數(shù)據(jù)的服務(wù)器,包括 網(wǎng)絡(luò)接口,適于接收計(jì)算終端發(fā)送的圖片訪問請(qǐng)求,所述圖片訪問請(qǐng)求包括要訪問的圖片信息以及計(jì)算終端的終端類型信息,并且將服務(wù)器所生成的預(yù)定格式的圖片數(shù)據(jù)傳輸給所述計(jì)算終端; 類型判定器,適于根據(jù)所述計(jì)算終端的終端類型信息確定是否對(duì)圖片進(jìn)行格式轉(zhuǎn)換; 圖片處理器,適于當(dāng)所述類型判定器確定對(duì)圖片進(jìn)行格式轉(zhuǎn)換時(shí),獲取與所述圖片訪問請(qǐng)求中的圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù),根據(jù)預(yù)定的格式轉(zhuǎn)換規(guī)則將所述原始圖片數(shù)據(jù)轉(zhuǎn)換為預(yù)定格式的圖片數(shù)據(jù),其中,所述預(yù)定格式的圖片數(shù)據(jù)的字節(jié)數(shù)小于所述原始圖片數(shù)據(jù)的字節(jié)數(shù)。
10.如權(quán)利要求9所述的服務(wù)器,其中, 所述圖片訪問請(qǐng)求還包括所述計(jì)算終端的網(wǎng)絡(luò)類型信息, 所述類型判定器還適于根據(jù)所述計(jì)算終端的網(wǎng)絡(luò)類型信息來確定是否對(duì)圖片進(jìn)行格式轉(zhuǎn)換。
11.如權(quán)利要求9或10所述的服務(wù)器,所述計(jì)算終端包括下列終端類型中的一種或者多種便攜式計(jì)算設(shè)備、PDA、平板計(jì)算設(shè)備、智能手機(jī)移動(dòng)終端、膝上型計(jì)算機(jī)以及臺(tái)式計(jì)算機(jī);或者, 所述計(jì)算終端的終端類型信息包括計(jì)算終端的屏幕大小,和/或計(jì)算終端的屏幕的長寬比。
12.如權(quán)利要求10所述的服務(wù)器,其中所述計(jì)算終端的網(wǎng)絡(luò)包括下列網(wǎng)絡(luò)類型中一種或者多種GPRS、CDMA、3G、4G和WIFI網(wǎng)絡(luò)和有線鏈接網(wǎng)絡(luò)。
13.如權(quán)利要求9-12中任一個(gè)所述的服務(wù)器,所述圖片訪問請(qǐng)求基于HTTP協(xié)議,而用于指示計(jì)算終端的終端類型信息的字段包含在HTTP協(xié)議的用戶代理部分中。
14.如權(quán)利要求13的服務(wù)器,其中所述計(jì)算終端的網(wǎng)絡(luò)類型信息以參數(shù)形式包含在所述圖片訪問請(qǐng)求中。
15.如權(quán)利要求10-14中任一個(gè)所述的服務(wù)器,所述預(yù)定的格式轉(zhuǎn)換規(guī)則包括 當(dāng)圖像處理器確定所述原始圖片數(shù)據(jù)的數(shù)據(jù)格式為單幀圖像互換格式GIF時(shí),將所述原始圖片數(shù)據(jù)的數(shù)據(jù)格式轉(zhuǎn)換為可移植網(wǎng)絡(luò)圖形PNG8格式的圖片數(shù)據(jù)。
16.如權(quán)利要求15所述的服務(wù)器,所述圖像處理器根據(jù)GIF文件結(jié)構(gòu)中的圖像標(biāo)識(shí)符來確定該GIF文件是否為單幀圖像互換格式GIF。
17.如權(quán)利要求9-16中任一個(gè)所述的服務(wù)器,還包括 圖片存儲(chǔ)器,適于存儲(chǔ)所述圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù)。
全文摘要
本發(fā)明公開了一種向計(jì)算終端提供圖片數(shù)據(jù)的方法及服務(wù)器,該方法包括接收計(jì)算終端發(fā)送的圖片訪問請(qǐng)求,圖片訪問請(qǐng)求包括要訪問的圖片信息以及計(jì)算終端的終端類型信息;根據(jù)計(jì)算終端的終端類型信息確定是否對(duì)圖片進(jìn)行格式轉(zhuǎn)換;當(dāng)確定對(duì)圖片進(jìn)行格式轉(zhuǎn)換時(shí),獲取與圖片訪問請(qǐng)求中的圖片信息相對(duì)應(yīng)的原始圖片數(shù)據(jù),根據(jù)預(yù)定的格式轉(zhuǎn)換規(guī)則將原始圖片數(shù)據(jù)轉(zhuǎn)換為預(yù)定格式的圖片數(shù)據(jù),其中,預(yù)定格式的圖片數(shù)據(jù)的字節(jié)數(shù)小于原始圖片數(shù)據(jù)的字節(jié)數(shù);將預(yù)定格式的圖片數(shù)據(jù)發(fā)送給計(jì)算終端。由此解決了移動(dòng)終端訪問圖片時(shí)由于數(shù)據(jù)量較大而導(dǎo)致加載速度慢且消耗網(wǎng)絡(luò)流量多的問題,能夠使移動(dòng)終端快速地加載圖片,且降低了圖片訪問時(shí)的流量消耗。
文檔編號(hào)H04L29/08GK102984151SQ20121048922
公開日2013年3月20日 申請(qǐng)日期2012年11月26日 優(yōu)先權(quán)日2012年11月26日
發(fā)明者呂本偉, 楊濤 申請(qǐng)人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司