• / 17
  • 下載費用:30 金幣  

縮略圖下載方法和裝置.pdf

摘要
申請專利號:

CN201510336406.1

申請日:

2015.06.17

公開號:

CN106257538A

公開日:

2016.12.28

當前法律狀態:

實審

有效性:

審中

法律詳情: 實質審查的生效IPC(主分類):G06T 9/00申請日:20150617|||公開
IPC分類號: G06T9/00; H04L29/08 主分類號: G06T9/00
申請人: 深圳市騰訊計算機系統有限公司
發明人: 鐘啟瑩
地址: 518000 廣東省深圳市南山區高新區高新南一路飛亞達大廈5-10樓
優先權:
專利代理機構: 北京三高永信知識產權代理有限責任公司 11138 代理人: 祝亞男
PDF完整版下載: PDF下載
法律狀態
申請(專利)號:

CN201510336406.1

授權公告號:

|||

法律狀態公告日:

2018.04.27|||2016.12.28

法律狀態類型:

實質審查的生效|||公開

摘要

本發明公開了一種縮略圖下載方法和裝置,屬于網絡技術領域。所述方法包括:接收終端的縮略圖獲取請求,所述縮略圖獲取請求攜帶數據包標識和待獲取的縮略圖尺寸;根據所述數據包標識和所述縮略圖的尺寸,從數據包的下載配置中,獲取所述縮略圖的縮略圖標識,所述數據包的下載配置包括所述數據包中各個縮略圖的尺寸和對應的縮略圖標識;根據所述縮略圖標識,查詢所述數據包的數據頭,獲取所述縮略圖大小和偏移位置,所述數據頭包括所述數據包中的各個縮略圖標識、縮略圖大小和偏移位置;根據所述縮略圖大小和偏移位置,從所述數據包中為所述終端下載所述縮略圖。本發明通過生成縮略圖標識,使得可為終端下載能正常顯示圖片,提高圖片顯示效率。

權利要求書

1.一種縮略圖下載方法,其特征在于,所述方法包括:
接收終端的縮略圖獲取請求,所述縮略圖獲取請求攜帶數據包標識和待獲
取的縮略圖尺寸;
根據所述數據包標識和所述縮略圖的尺寸,從數據包的下載配置中,獲取
所述縮略圖的縮略圖標識,所述數據包的下載配置包括所述數據包中各個縮略
圖的尺寸和對應的縮略圖標識;
根據所述縮略圖標識,查詢所述數據包的數據頭,獲取縮略圖大小和偏移
位置,所述數據頭包括所述數據包中的各個縮略圖標識、縮略圖大小和偏移位
置;
根據所述縮略圖大小和偏移位置,從所述數據包中為所述終端下載所述縮
略圖。
2.根據權利要求1所述的方法,其特征在于,接收終端的縮略圖獲取請求
之前,所述方法還包括:
將同一圖片的至少兩個不同尺寸的縮略圖打包在一個數據包中;
為所述至少兩個不同尺寸的縮略圖中的每一個縮略圖分配對應的縮略圖標
識;
根據所述至少兩個不同尺寸的縮略圖的縮略圖標識、縮略圖大小以及偏移
位置,生成所述數據包的數據頭。
3.根據權利要求2所述的方法,其特征在于,所述方法還包括:
為所述至少兩個不同尺寸的縮略圖中的每一個縮略圖生成對應的圖片特征
值;
將所述每一個縮略圖的圖片特征值寫入所述數據包的數據頭。
4.根據權利要求2所述的方法,其特征在于,所述方法還包括:
將所述數據頭的創建時間、更新時間、所述數據包中縮略圖的數目以及每
個縮略圖的縮略圖編號、縮略圖尺寸寫入所述數據包的數據頭。
5.根據權利要求1所述的方法,其特征在于,所述縮略圖獲取請求還攜帶
下載配置版本信息,接收終端的縮略圖獲取請求之后,所述方法還包括:
根據所述數據包標識和所述下載配置版本信息,獲取與所述下載配置版本
信息對應的數據包;
根據所述下載配置版本信息對應的下載配置和所述待獲取的縮略圖尺寸,
從與所述下載配置版本信息對應的數據包中為所述終端下載縮略圖。
6.一種縮略圖下載裝置,其特征在于,所述裝置包括:
接收模塊,用于接收終端的縮略圖獲取請求,所述縮略圖獲取請求攜帶數
據包標識和待獲取的縮略圖尺寸;
獲取模塊,用于根據所述數據包標識和所述縮略圖的尺寸,從數據包的下
載配置中,獲取所述縮略圖的縮略圖標識,所述數據包的下載配置包括所述數
據包中各個縮略圖的尺寸和對應的縮略圖標識;
所述獲取模塊,還用于根據所述縮略圖標識,查詢所述數據包的數據頭,
獲取縮略圖大小和偏移位置,所述數據頭包括所述數據包中的各個縮略圖標識、
縮略圖大小和偏移位置;
下載模塊,用于根據所述縮略圖的大小和偏移位置,從所述數據包中為所
述終端下載所述縮略圖。
7.根據權利要求6所述的裝置,其特征在于,所述裝置還包括:
打包模塊,用于將同一圖片的至少兩個不同尺寸的縮略圖打包在一個數據
包中;
分配模塊,用于為所述至少兩個不同尺寸的縮略圖中的每一個縮略圖分配
對應的縮略圖標識;
生成模塊,用于根據所述至少兩個不同尺寸的縮略圖的縮略圖標識、縮略
圖大小以及偏移位置,生成所述數據包的數據頭。
8.根據權利要求7所述的裝置,其特征在于,
所述生成模塊,還用于為所述至少兩個不同尺寸的縮略圖中的每一個縮略
圖生成對應的圖片特征值;
所述裝置還包括:
寫入模塊,用于將所述每一個縮略圖的圖片特征值寫入所述數據包的數據
頭。
9.根據權利要求7所述的裝置,其特征在于,
所述寫入模塊,還用于將所述數據頭的創建時間、更新時間、所述數據包
中縮略圖的數目以及每個縮略圖的縮略圖編號、縮略圖尺寸寫入所述數據包的
數據頭。
10.根據權利要求6所述的裝置,其特征在于,
所述獲取模塊,還用于根據所述數據包標識和所述下載配置版本信息,獲
取與所述下載配置版本信息對應的數據包;
所述下載模塊,還用于根據所述下載配置版本信息對應的下載配置和所述
待獲取的縮略圖尺寸,從與所述下載配置版本信息對應的數據包中為所述終端
下載縮略圖。

說明書

縮略圖下載方法和裝置

技術領域

本發明涉及網絡技術領域,特別涉及一種縮略圖下載方法和裝置。

背景技術

隨著網絡技術的不斷發展,服務器可以提供同一張圖片的多個不同尺寸的
縮略圖,為了便于存儲和查詢,服務器會將同一張圖片的多個不同尺寸的縮略
圖以及原圖,按照尺寸從小到大的順序打包在一個數據包中。當接收到終端的
圖片獲取請求時,服務器根據終端的實際需要,為其下載尺寸合適的縮略圖。

為了描述數據包,服務器會為數據包生成一個數據頭,該數據頭中包括數
據包中每個縮略圖的編號以及相應縮略圖的大小。服務器在為終端下載某一尺
寸的縮略圖時,會根據當前的下載配置進行,由終端向服務器發送圖片獲取請
求,該圖片獲取請求攜帶終端所需圖片尺寸,服務器會根據該終端所需圖片尺
寸確定縮略圖編號(如縮略圖1、縮略圖2或縮略圖n等),在數據頭中進行查
詢,得到該尺寸縮略圖的大小,并計算出其偏移位置,最后根據縮略圖的大小
和偏移位置,從數據包中為該終端下載該縮略圖。

在實現本發明的過程中,發明人發現現有技術至少存在以下問題:

假設服務器之前只將圖片壓縮成兩種不同尺寸的縮略圖,這兩種尺寸分別
為400×400尺寸和800×800尺寸,其下載配置對應為“400×400尺寸:縮略
圖1;800×800尺寸:縮略圖2”。現由于業務需要,將下載配置更改為“200
×200尺寸:縮略圖1;400×400尺寸:縮略圖2;800×800尺寸:縮略圖3”,
也即是,增加了另一尺寸的縮略圖。那么,服務器會將之后的圖片壓縮成200
×200尺寸、400×400尺寸和800×800尺寸三種不同尺寸的縮略圖。然而,服
務器不會對之前下載配置下的圖片進行重新壓縮。因此,當使用新的下載配置
下載僅具有兩種不同尺寸縮略圖的圖片時,則會下載到錯誤尺寸的縮略圖。如,
根據新的下載配置,400×400尺寸為縮略圖2的尺寸,而之前壓縮成兩種尺寸
的縮略圖,400×400尺寸為縮略圖1的尺寸,所以會導致下載到錯誤尺寸的縮
略圖,導致終端無法正常顯示圖片,降低了圖片顯示的效率。

發明內容

為了解決現有技術的問題,本發明實施例提供了一種縮略圖下載方法和裝
置。所述技術方案如下:

一方面,提供了一種縮略圖下載方法,所述方法包括:

接收終端的縮略圖獲取請求,所述縮略圖獲取請求攜帶數據包標識和待獲
取的縮略圖尺寸;

根據所述數據包標識和所述縮略圖的尺寸,從數據包的下載配置中,獲取
所述縮略圖的縮略圖標識,所述數據包的下載配置包括所述數據包中各個縮略
圖的尺寸和對應的縮略圖標識;

根據所述縮略圖標識,查詢所述數據包的數據頭,獲取縮略圖大小和偏移
位置,所述數據頭包括所述數據包中的各個縮略圖標識、縮略圖大小和偏移位
置;

根據所述縮略圖大小和偏移位置,從所述數據包中為所述終端下載所述縮
略圖。

另一方面,提供了一種縮略圖下載裝置,所述裝置包括:

接收模塊,用于接收終端的縮略圖獲取請求,所述縮略圖獲取請求攜帶數
據包標識和待獲取的縮略圖尺寸;

獲取模塊,用于根據所述數據包標識和所述縮略圖的尺寸,從數據包的下
載配置中,獲取所述縮略圖的縮略圖標識,所述數據包的下載配置包括所述數
據包中各個縮略圖的尺寸和對應的縮略圖標識;

所述獲取模塊,還用于根據所述縮略圖標識,查詢所述數據包的數據頭,
獲取縮略圖大小和偏移位置,所述數據頭包括所述數據包中的各個縮略圖標識、
縮略圖大小和偏移位置;

下載模塊,用于根據所述縮略圖大小和偏移位置,從所述數據包中為所述
終端下載所述縮略圖。

本發明實施例提供的技術方案帶來的有益效果是:

通過為各個縮略圖生成對應的縮略圖標識,以便在后續下載縮略圖時,可
根據縮略圖標識獲取對應的縮略圖。由于縮略圖標識與縮略圖是一一對應的,
因此,可以避免下載到錯誤尺寸的縮略圖,進而,使得終端可以正常顯示圖片,
提高了圖片的顯示效率。

附圖說明

為了更清楚地說明本發明實施例中的技術方案,下面將對實施例描述中所
需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明
的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,
還可以根據這些附圖獲得其他的附圖。

圖1是本發明實施例提供的一種縮略圖下載方法的流程圖;

圖2A是本發明實施例提供的一種縮略圖下載方法的流程圖;

圖2B是本發明實施例提供的一種數據頭的示意圖;

圖2C是本發明實施例提供的一種數據頭的示意圖;

圖3是本發明實施例提供的一種縮略圖下載方法的流程圖;

圖4是本發明實施例提供的一種縮略圖下載裝置的結構示意圖;

圖5是根據一示例性實施例示出的一種用于縮略圖下載的裝置500的框圖。

具體實施方式

為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明
實施方式作進一步地詳細描述。

圖1是本發明實施例提供的一種縮略圖下載方法的流程圖。參見圖1,所述
方法包括:

101、接收終端的縮略圖獲取請求,該縮略圖獲取請求攜帶數據包標識和待
獲取的縮略圖尺寸。

在本發明實施例中,縮略圖是指由原圖壓縮而得到的圖片。

數據包標識用于唯一標識數據包,該數據包標識可以是數據包的名稱或數
據包ID(Identity,身份識別號碼)等。在一個數據包中,存儲有一張原圖的數
據以及由該原圖壓縮得到的圖片的數據。也即是,在一個數據包中,縮略圖的
數目可以是不小于2的任意整數,且可以按照縮略圖尺寸由小到大的順序將縮
略圖依次寫入數據包中。

縮略圖的尺寸是指該縮略圖的長度和寬度,縮略圖的長度值可以為不大于
其對應原圖長度值的任意自然數,縮略圖的寬度值可以為不大于其對應原圖寬
度值的任意自然數。由于縮略圖的尺寸是用于分辨各個不同的縮略圖的,而在
有些情況下,僅根據縮略圖的長度或者僅根據縮略圖寬度便可分辨各個不同的
縮略圖,所以在有些情況下,縮略圖的尺寸也可以僅指縮略圖的長度,或者僅
指縮略圖的寬度。

如,當壓縮得到的任一縮略圖自身的長度和寬度相同的情況下,則僅根據
縮略圖的長度或者寬度便可分辨各個縮略圖,所以可以僅用縮略圖的長度或者
寬度表示縮略圖的尺寸。又如,當所有縮略圖的長度均相同,而僅寬度不相同
的情況下,則僅根據寬度便可分辨各個縮略圖,所以,縮略圖的尺寸可以僅指
縮略圖的寬度。再如,當所有縮略圖的寬度均相同,而僅長度不相同的情況下,
則僅根據長度便可分辨各個縮略圖,所以,縮略圖的尺寸可以僅指縮略圖的長
度。

102、根據該數據包標識和該縮略圖的尺寸,從數據包的下載配置中,獲取
該縮略圖的縮略圖標識,該數據包的下載配置包括該數據包中各個縮略圖的尺
寸和對應的縮略圖標識。

一個縮略圖標識用于唯一標識一個縮略圖,該縮略圖標識可以是縮略圖ID,
當然,也可以是其他值,本發明實施例對此不作限定。

下載配置的具體形式可以是“尺寸1:ID1;尺寸2:ID2;…;尺寸n:IDn”,
其中,n為不小于2的任意整數。該形式中,尺寸1的縮略圖對應于縮略圖標識
ID1。

103、根據該縮略圖標識,查詢該數據包的數據頭,獲取該縮略圖的尺寸和
偏移位置,該數據頭包括該數據包中的各個縮略圖標識、縮略圖大小和偏移位
置。

在本發明實施例中,數據頭用于承載數據包的描述信息,可以用于描述數
據包中各個縮略圖的信息。

其中,縮略圖大小是指縮略圖數據的字節數。由于縮略圖數據是以二進制
數據的形式存在數據包中,所以縮略圖數據的大小(簡稱縮略圖大小)即指縮
略圖數據的字節數。

縮略圖的偏移位置是指縮略圖在數據包中的存儲起始位置。

104、根據該縮略圖大小和偏移位置,從該數據包中為該終端下載該縮略圖。

根據縮略圖大小和偏移位置,便可從數據包獲取到該縮略圖,當獲取到該
縮略圖后,便可為終端下載該縮略圖。

本發明實施例提供的方法,通過為各個縮略圖生成對應的縮略圖標識,以
便在后續下載縮略圖時,可根據縮略圖標識獲取對應的縮略圖。由于縮略圖標
識與縮略圖是一一對應的,因此,可以避免下載到錯誤尺寸的縮略圖,進而,
使得終端可以正常顯示圖片,提高了圖片的顯示效率。

可選地,接收終端的縮略圖獲取請求之前,該方法還包括:

將同一圖片的至少兩個不同尺寸的縮略圖打包在一個數據包中;

為該至少兩個不同尺寸的縮略圖中的每一個縮略圖分配對應的縮略圖標
識;

根據該至少兩個不同尺寸的縮略圖的縮略圖標識、縮略圖大小以及偏移位
置,生成該數據包的數據頭。

可選地,該方法還包括:

為該至少兩個不同尺寸的縮略圖中的每一個縮略圖生成對應的圖片特征
值;

將該每一個縮略圖的圖片特征值寫入該數據包的數據頭。

可選地,該方法還包括:

將該數據頭的創建時間、更新時間、該數據包中縮略圖的數目以及每個縮
略圖的縮略圖編號、縮略圖尺寸寫入該數據包的數據頭。

可選地,該縮略圖獲取請求還攜帶下載配置版本信息,接收終端的縮略圖
獲取請求之后,該方法還包括:

根據該數據包標識和該下載配置版本信息,獲取與該下載配置版本信息對
應的數據包;

根據該下載配置版本信息對應的下載配置和該待獲取的縮略圖尺寸,從與
該下載配置版本信息對應的數據包中為該終端下載縮略圖。

上述所有可選技術方案,可以采用任意結合形成本公開的可選實施例,在
此不再一一贅述。

圖2A是本發明實施例提供的一種縮略圖下載方法的流程圖。參見圖2A,
所述方法包括:

201、服務器將同一圖片的至少兩個不同尺寸的縮略圖打包在一個數據包
中。

當接收到上傳圖片之后,服務器根據下載配置和上傳配置,將該圖片進行
壓縮,得到各個尺寸不同的縮略圖,并按照縮略圖尺寸由小到大的順序,將各
個縮略圖打包在一個數據包中。其中,該上傳圖片可以由用戶上傳,壓縮得到
的各個縮略圖的尺寸即為下載配置和上傳配置中包括的尺寸。由于數據包中至
少包括原圖以及一個壓縮原圖得到的縮略圖,所以數據包中縮略圖的數目為不
小于2的任意整數。

202、服務器為該至少兩個不同尺寸的縮略圖中的每一個縮略圖分配對應的
縮略圖標識。

服務器可以通過指定算法為每一個縮略圖分配對應的縮略圖標識。在實際
場景中,可以通過數字遞增的方式為每一個縮略圖分配縮略圖標識,如1、2、
3等。當然,服務器也可以通過其他方式為每一個縮略圖分配對應的縮略圖標識,
本發明實施例對此不作限定。

需要說明的是,當服務器改變上傳配置或下載配置時,如,服務器在當前
已有縮略圖尺寸的基礎上,增加一種新的縮略圖尺寸時,則服務器會為該新尺
寸的縮略圖分配一個新的縮略圖標識。而在改變上傳配置或下載配置之后,服
務器會將之后的圖片壓縮成改變配置后的尺寸。

具體地,假設當前下載配置和上傳配置包括“長度400×寬度400”(簡寫
為“400×400”)和“長度800×寬度800”(簡寫為“800×800”)兩種尺寸。
通過指定算法,為尺寸是“400×400”的縮略圖分配縮略圖標識“1”,為尺寸
是“800×800”的縮略圖分配縮略圖標識“2”。新增加的縮略圖尺寸為“200×
200”,則服務器為其分配的縮略圖標識可以為“3”。至此,新的縮略圖尺寸包
括“200×200”、“400×400”、“800×800”三種,該三種尺寸對應的縮略圖標
識分別為“3”、“1”、“2”。而服務器會將改變配置之后上傳的圖片,壓縮成“200
×200”、“400×400”、“800×800”三種尺寸。

由于網絡原因,終端接收到的縮略圖可能是錯誤數據。為了方便終端校驗
服務器為其下載的縮略圖,服務器還可以為每一個縮略圖生成一個對應的圖片
特征值。當然,服務器還可以基于縮略圖的其他內容生成圖片特征值,本發明
實施例對此不作限定。其中,該圖片特征值可以通過MD5(Message-Digest
Algorithm 5,信息-摘要算法5)獲取,當然,也可以通過其他算法獲取,本發
明實施例對此不作限定。

203、服務器根據該至少兩個不同尺寸的縮略圖的縮略圖標識、縮略圖大小
以及偏移位置,生成該數據包的數據頭。

如果在步驟202中,服務器為各個縮略圖生成了對應的圖片特征值,則還
可以將每一個縮略圖的圖片特征值寫入該數據包的數據頭。

當然,如圖2B所示,服務器還可以將該數據頭的創建時間、更新時間、該
數據包中縮略圖的數目以及每個縮略圖的縮略圖編號、縮略圖尺寸寫入該數據
包的數據頭。

其中,數據頭的創建時間也即是該數據頭的生成時間。

數據頭的更新時間是最近一次接收到對該圖片的壓縮請求的時間。在實際
場景中,當服務器已經完成了對某張圖片的壓縮工作后,有可能會再次接收到
對該圖片的壓縮請求。此時,如果服務器未改變上傳配置或下載配置,則無需
重新壓縮該圖片,而只需要將數據頭的更新時間設置為再次接收到壓縮請求的
時間,以此表示該圖片已壓縮完成,這樣可以避免重復壓縮同一張圖片,節約
服務器處理資源。

當然,服務器再次接收到對同一圖片的壓縮請求時,如果已經改變了下載
配置和上傳配置,如,增加了一種新的縮略圖尺寸,那么服務器會根據改變后
的下載配置和上傳配置,將該圖片重新壓縮,并將壓縮得到的縮略圖存入新的
數據包中。

如,服務器在“2015/5/1010:30”已根據原下載配置和上傳配置,將圖片A
壓縮成“400×400”和“800×800”兩種尺寸的縮略圖,再將縮略圖寫入數據
包a中,并生成數據包a的數據頭。在“2015/6/910:33”,服務器再次接收到對
圖片A的壓縮請求,如果此時的下載配置和上傳配置未發生改變,則服務器無
需重新壓縮圖片A,而是將數據包a的數據頭更新時間設置為“2015/6/910:33”
即可。當然,如果在“2015/6/910:33”之前,服務器已經改變了下載配置和上
傳配置,如增加了“200×200”尺寸,也即是,此時下載配置和上傳配置包括
“200×200”、“400×400”和“800×800”三個縮略圖尺寸,則服務器會重新
將圖片A壓縮成“400×400”和“800×800”三種尺寸的縮略圖,再將縮略圖
寫入數據包b中,并生成數據包b的數據頭。

縮略圖編號可以由服務器設置,具體地,該縮略圖編號可以是“縮略圖1、
縮略圖2、…、縮略圖n”,當然,該縮略圖編號還可以有其他形式,本發明實
施例對此不作限定。

數據頭可以采用PB(Protocol Buffer,協議緩沖區)協議編碼存儲信息,當
然,也可以采用其他方式存儲信息,本發明實施例對此不作限定。

上述步驟201至步驟203為數據包以及該數據包的數據頭的生成過程,服
務器可以在接收到上傳圖片時,即執行該步驟201至步驟203。為了詳細介紹本
發明的實現過程,現以該執行時機在步驟204之前為例進行說明。

204、服務器接收終端的縮略圖獲取請求,該縮略圖獲取請求攜帶數據包標
識和待獲取的縮略圖尺寸。

當用戶在終端上進行查看網頁、打開朋友圈或加載圖片等圖片查看操作時,
均可以觸發終端向服務器發送對應的縮略圖獲取請求。當然,該縮略圖獲取請
求還可以是由一服務器向該縮略圖服務器發送,以用于服務器之間的數據交互。
其中,縮略圖獲取請求可以攜帶縮略圖地址,該縮略圖地址可以是URL(Uniform
Resource Locator,統一資源定位符)形式,當然,也可以是其他形式,本發明
實施例對此不作限定。

205、服務器根據該數據包標識和該縮略圖的尺寸,從數據包的下載配置中,
獲取該縮略圖的縮略圖標識,該數據包的下載配置包括該數據包中各個縮略圖
的尺寸和對應的縮略圖標識。

首先,服務器可以根據數據包標識,找到數據包的存儲地址,再根據數據
包的存儲地址,找到數據包;然后,根據該縮略圖的尺寸,從該數據包的下載
配置中,獲取該縮略圖的縮略圖標識。

其中,數據包下載配置的具體形式可以是“尺寸1:ID1;尺寸2:ID2;…;
尺寸n:IDn”,其中,n為不小于2的任意整數。例如,下載配置為“400×400
尺寸:1;800×800尺寸:2”。

具體地,當獲取到所需縮略圖的尺寸后,服務器便可根據下載配置中縮略
圖尺寸與縮略圖標識的對應關系,獲取所需縮略圖的縮略圖標識。例如,假設
所需縮略圖的尺寸為“400×400”,則根據下載配置可知,所需縮略圖的縮略圖
標識為“1”。

206、服務器根據該縮略圖標識,查詢該數據包的數據頭,獲取該縮略圖大
小和偏移位置,該數據頭包括該數據包中的各個縮略圖標識、縮略圖大小和偏
移位置。

在數據頭中,存儲有縮略圖標識以及對應的縮略圖大小、偏移位置等信息。
因此,根據縮略圖標識查詢數據頭,便可獲取縮略圖的大小和偏移位置。

具體地,以數據包中存儲有“200×200”、“400×400”和“800×800”三
種尺寸的縮略圖為例,數據包的數據頭可以如圖2C所示。

根據縮略圖標識,通過查詢圖2C,便可獲取該縮略圖標識所對應縮略圖的
大小和偏移位置。如,根據縮略圖標識ID1,查詢圖2C所示的數據頭,可獲取
ID1所對應縮略圖大小為400字節,偏移位置為200。

207、服務器根據該縮略圖的尺寸和偏移位置,從該數據包中為該終端下載
該縮略圖。

以所需縮略圖的縮略圖大小為400字節,偏移位置為200為例,服務器便
可以從數據包中偏移位置為200開始,共讀取400個字節,即獲取到所需縮略
圖。當服務器獲取到所需縮略圖之后,便可為終端下載所需縮略圖。

本發明實施例提供的方法,通過為各個縮略圖生成對應的縮略圖標識,以
便在后續下載縮略圖時,可根據縮略圖標識獲取對應的縮略圖。由于縮略圖標
識與縮略圖是一一對應的,因此,可以避免下載到錯誤尺寸的縮略圖,進而,
使得終端可以正常顯示圖片,提高了圖片的顯示效率。

圖3是本發明實施例提供的一種縮略圖下載方法的流程圖。參見圖3,所述
方法包括:

301、服務器將同一圖片的至少兩個不同尺寸的縮略圖打包在一個數據包
中。

該步驟301與上述步驟201同理,在此不作贅述。

302、服務器根據當前下載配置版本信息以及該至少兩個不同尺寸的縮略圖
的縮略圖編號以及縮略圖大小,生成該數據包的數據頭。

由于業務需要,服務器可以改變下載配置和上傳配置,如增加新的縮略圖
尺寸。然而,在改變下載配置和上傳配置時,并不會對之前已經壓縮過的數據
包進行更改,因此,為了保證能夠在下載時不發生混淆,則可以為不同的下載
配置分配不同的下載配置版本信息,以便在后續過程中,通過下載配置版本信
息,找到對應版本的下載配置。同時,在基于不同下載配置進行圖片壓縮時,
也將其下載配置版本信息寫入至數據包的數據頭中,服務器可以在數據頭中,
劃分出指定位,用于存儲下載配置版本信息。

例如,下載配置版本信息的形式可以是“版本1”、“版本2”等,當然,也
可以是其他形式,本發明實施例對此不作限定。

具體地,假設原下載配置和上傳配置包括“400×400”和“800×800”兩
種尺寸,則原下載配置可以為“400×400尺寸:縮略圖1;800×800尺寸:縮
略圖2”,服務器可以將“版本1”作為該下載配置的版本信息。假設服務器增
加一種新的縮略圖尺寸,而該新的縮略圖尺寸為“200×200”,則新下載配置更
新為“200×200尺寸:縮略圖1;400×400尺寸:縮略圖2;800×800尺寸:
縮略圖3”,服務器可以將“版本2”作為該更新后的下載配置的版本信息。

具體地,當服務器完成對圖片的壓縮后,根據壓縮得到的各個縮略圖編號、
縮略圖的大小、偏移位置以及當前下載配置的版本信息生成數據頭。

在本發明提供的另一實施例中,服務器還可以采用等長結構體的形式存儲
縮略圖,也即是,在數據包的數據頭中可以不包括縮略圖的偏移位置,而是僅
包括縮略圖編號、縮略圖的大小以及當前下載配置的版本信息。

服務器還可以為該至少兩個不同尺寸的縮略圖中的每一個縮略圖生成對應
的圖片特征值,并將該每一個縮略圖的圖片特征值寫入該數據包的數據頭。當
然,服務器還可以將該數據頭的創建時間、更新時間、該數據包中縮略圖的數
目寫入該數據包的數據頭。該寫入過程與上述步驟202同理,在此不作贅述。

303、服務器接收終端的縮略圖獲取請求,該縮略圖獲取請求攜帶數據包標
識、待獲取的縮略圖尺寸以及下載配置版本信息。

該步驟303與上述步驟204的區別在于在步驟303中接收的縮略圖獲取請
求,除了攜帶數據包標識以及待獲取的縮略圖尺寸外,還攜帶下載配置版本信
息,其他過程與上述步驟204同理。

304、服務器根據該數據包標識和該下載配置版本信息,獲取與該下載配置
版本信息對應的數據包。

服務器根據數據包標識,找到數據包的存儲地址,再根據數據包的存儲地
址,找到數據包;而根據下載配置版本信息,服務器則可以獲取到與該數據包
對應的下載配置。

305、服務器根據該下載配置版本信息對應的下載配置和待獲取的縮略圖尺
寸,從與該下載配置版本信息對應的數據包中為該終端下載縮略圖。

具體地,服務器首先可以根據下載配置獲取所需尺寸對應的縮略圖編號。
然后,服務器再根據縮略圖編號,查詢數據頭,獲取與縮略圖編號對應的縮略
圖大小和偏移位置。最后,服務器根據該縮略圖大小和偏移位置,從數據包中
獲取該縮略圖,并為終端下載該縮略圖。

在上述實施例中,僅以更改下載配置為例進行了說明,而實際場景中,可
以對上傳配置和下載配置均進行同理修改,其具體過程不再贅述。

本發明實施例提供的方法,通過保留各種不同的下載配置,并為各種下載
配置生成對應的下載配置版本信息。使得在后續的縮略圖下載過程中,可以根
據下載配置版本信息獲取與數據包對應的下載配置,避免了因為下載配置與數
據包不匹配而導致的下載到錯誤尺寸縮略圖的情況。進而,使得終端可以正常
顯示圖片,提高了圖片的顯示效率。

圖4是本發明實施例提供的一種縮略圖下載裝置的結構示意圖。參見圖4,
所述裝置包括:

接收模塊401,用于接收終端的縮略圖獲取請求,該縮略圖獲取請求攜帶數
據包標識和待獲取的縮略圖尺寸;

獲取模塊402,用于根據該數據包標識和該縮略圖的尺寸,從數據包的下載
配置中,獲取該縮略圖的縮略圖標識,該數據包的下載配置包括該數據包中各
個縮略圖的尺寸和對應的縮略圖標識;

該獲取模塊402,還用于根據該縮略圖標識,查詢該數據包的數據頭,獲取
該縮略圖大小和偏移位置,該數據頭包括該數據包中的各個縮略圖標識、縮略
圖大小和偏移位置;

下載模塊403,用于根據該縮略圖大小和偏移位置,從該數據包中為該終端
下載該縮略圖。

可選地,該裝置還包括:

打包模塊,用于將同一圖片的至少兩個不同尺寸的縮略圖打包在一個數據
包中;

分配模塊,用于為該至少兩個不同尺寸的縮略圖中的每一個縮略圖分配對
應的縮略圖標識;

生成模塊,用于根據該至少兩個不同尺寸的縮略圖的縮略圖標識、縮略圖
大小以及偏移位置,生成該數據包的數據頭。

可選地,該生成模塊,還用于為該至少兩個不同尺寸的縮略圖中的每一個
縮略圖生成對應的圖片特征值;

寫入模塊,用于將該每一個縮略圖的圖片特征值寫入該數據包的數據頭。

可選地,該寫入模塊,還用于將該數據頭的創建時間、更新時間、該數據
包中縮略圖的數目以及每個縮略圖的縮略圖編號、縮略圖尺寸寫入該數據包的
數據頭。

可選地,該獲取模塊402,還用于根據該數據包標識和該下載配置版本信息,
獲取與該下載配置版本信息對應的數據包;

該下載模塊403,還用于根據該下載配置版本信息對應的下載配置和該待獲
取的縮略圖尺寸,從與該下載配置版本信息對應的數據包中為該終端下載縮略
圖。

上述所有可選技術方案,可以采用任意結合形成本公開的可選實施例,在
此不再一一贅述。

本發明提供的裝置,為各個縮略圖生成對應的縮略圖標識,以便在后續下
載縮略圖時,可根據縮略圖標識獲取對應的縮略圖。由于縮略圖標識與縮略圖
是一一對應的,因此,可以避免下載到錯誤尺寸的縮略圖,進而,使得終端可
以正常顯示圖片,提高了圖片的顯示效率。

需要說明的是:上述實施例提供的縮略圖下載裝置在縮略圖下載時,僅以
上述各功能模塊的劃分進行舉例說明,實際應用中,可以根據需要而將上述功
能分配由不同的功能模塊完成,即將設備的內部結構劃分成不同的功能模塊,
以完成以上描述的全部或者部分功能。另外,上述實施例提供的縮略圖下載裝
置與縮略圖下載方法實施例屬于同一構思,其具體實現過程詳見方法實施例,
這里不再贅述。

圖5是根據一示例性實施例示出的一種用于縮略圖下載的裝置500的框圖。
例如,裝置500可以被提供為一服務器。參照圖5,裝置500包括處理組件522,
其進一步包括一個或多個處理器,以及由存儲器532所代表的存儲器資源,用
于存儲可由處理部件522的執行的指令,例如應用程序。存儲器532中存儲的
應用程序可以包括一個或一個以上的每一個對應于一組指令的模塊。此外,處
理組件522被配置為執行指令,以執行上述圖1、圖2或圖3所示的縮略圖下載
方法。

裝置500還可以包括一個電源組件526被配置為執行裝置500的電源管理,
一個有線或無線網絡接口550被配置為將裝置500連接到網絡,和一個輸入輸
出(I/O)接口558。裝置500可以操作基于存儲在存儲器532的操作系統,例
如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或類似。

本領域普通技術人員可以理解實現上述實施例的全部或部分步驟可以通過
硬件來完成,也可以通過程序來指令相關的硬件完成,所述的程序可以存儲于
一種計算機可讀存儲介質中,上述提到的存儲介質可以是只讀存儲器,磁盤或
光盤等。

以上所述僅為本發明的較佳實施例,并不用以限制本發明,凡在本發明的
精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的
保護范圍之內。

關 鍵 詞:
縮略圖 下載 方法 裝置
  專利查詢網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
關于本文
本文標題:縮略圖下載方法和裝置.pdf
鏈接地址:http://www.rgyfuv.icu/p-6100839.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服客服 - 聯系我們

[email protected] 2017-2018 zhuanlichaxun.net網站版權所有
經營許可證編號:粵ICP備17046363號-1 
 


收起
展開
山东11选5中奖结果走势图