本發(fā)明涉及圖片處理技術(shù)領(lǐng)域,尤其涉及一種群組頭像的設(shè)置方法及裝置。
背景技術(shù):
Android操作系統(tǒng)作為目前市場上最火爆的移動終端操作系統(tǒng)之一,具有操作界面華麗、系統(tǒng)處理流暢、視覺沖擊力強等優(yōu)點,在用戶體驗上為我們帶來了質(zhì)的變化。更值得一提的是,Android操作系統(tǒng)處理圖形圖像的技術(shù)已經(jīng)非常成熟,尤其是在IM(Instant Messaging,即時通訊)通訊領(lǐng)域,對于各種相片、頭像的特效處理都有所涉及。
目前的群組頭像的設(shè)置方式是:在群組頭像對應(yīng)的顯示控件上面設(shè)置一個默認的群組頭像,或者由用戶手動上傳一張圖片作為群組頭像。現(xiàn)有方式設(shè)置的群組頭像都是單一的一張圖片,圖片內(nèi)容固定且不能編輯,無法體現(xiàn)群組的成員特點。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供了一種群組頭像的設(shè)置方法及裝置,用以解決現(xiàn)有群組頭像設(shè)置方式單一、無法體現(xiàn)群組成員特點的問題。
針對現(xiàn)有技術(shù)存在的問題,本發(fā)明實施例提供了一種群組頭像的設(shè)置方法,包括:
獲取群組成員的頭像圖片;
將頭像圖片拼接為一張合成圖片;
將合成圖片設(shè)置為群組頭像。
進一步的,本發(fā)明實施例還提供了一種群組頭像的設(shè)置裝置,包括:
獲取單元,用于獲取群組成員的頭像圖片;
拼接單元,用于將頭像圖片拼接為一張合成圖片;
設(shè)置單元,用于將合成圖片設(shè)置為群組頭像。
本發(fā)明實施例提供的群組頭像的設(shè)置方法及裝置,首先獲取群組成員的頭像圖片,然后將頭像圖片拼接為一張合成圖片,最后將合成圖片設(shè)置為群組頭像。本發(fā)明實施例能夠?qū)⒍鄠€群組成員的頭像圖片進行拼接并作為群組頭像使用,與現(xiàn)有技術(shù)相比,群組頭像不再是單一的一張圖片,能夠根據(jù)群組成員頭像的改變而變化,體現(xiàn)出群組的成員特點。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例提供的一種群組頭像的設(shè)置方法流程圖;
圖2為本發(fā)明實施例提供的另一種群組頭像的設(shè)置方法流程圖;
圖3為本發(fā)明實施例提供的一種群組頭像的設(shè)置裝置的組成框圖;
圖4為本發(fā)明實施例提供的另一種群組頭像的設(shè)置裝置的組成框圖。
具體實施方式
為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
本發(fā)明實施例提供了一種群組頭像的設(shè)置方法,如圖1所示,該方法包括:
101、獲取群組成員的頭像圖片。
在本發(fā)明實施例中,獲取群組成員的頭像圖片,首先要確定具體選擇的群組成員,然后分別獲取選擇的群組成員對應(yīng)的頭像圖片。其中選擇的群組成員的數(shù)量可以根據(jù)需求預(yù)先設(shè)置。
102、將頭像圖片拼接為一張合成圖片。
在本發(fā)明實施例中,將頭像圖片拼接為一張合成圖片,首先需要獲取群組成員的頭像圖片,然后將頭像圖片按照指定的順序拼接成為一張合成圖片。
例如,可以采用九宮格的布局樣式對頭像圖片進行拼接,在群組中依次獲取九名群組成員的頭像圖片,然后根據(jù)頭像圖片的獲取先后順序按照從上到下、從左到右的順序安放在九宮格中固定的位置上。當(dāng)群組成員數(shù)量小于九時,由于不能獲取得到九名群組成員的頭像圖片,可以使用空白圖片來代替缺少的頭像圖片?;蛘弋?dāng)群組成員數(shù)量小于九時,可以采用四宮格的布局樣式對頭像圖片進行拼接,在群組中依次獲取四名群組成員的頭像圖片,然后根據(jù)頭像圖片的獲取先后順序按照從上到下、從左到右的順序安放在九宮格中固定的位置上。
103、將合成圖片設(shè)置為群組頭像。
在本發(fā)明實施例中,將合成圖片設(shè)置為群組頭像,是通過將合成圖片設(shè)置在群組頭像對應(yīng)的顯示控件上面。
本發(fā)明實施例提供的一種群組頭像的設(shè)置方法,首先獲取群組成員的頭像圖片,然后將頭像圖片拼接為一張合成圖片,最后將合成圖片設(shè)置為群組頭像。本發(fā)明實施例能夠?qū)⒍鄠€群組成員的頭像圖片進行拼接并作為群組頭像使用,與現(xiàn)有技術(shù)相比,群組頭像不再是單一的一張圖片,能夠根據(jù)群組成員頭像的改變而變化,體現(xiàn)出群組的成員特點。
本發(fā)明實施例提供了另一種群組頭像的設(shè)置方法,如圖2所示,該方法包括:
201、按照活躍度由高到低的順序,選擇預(yù)設(shè)數(shù)量的目標(biāo)群組成員。
其中,活躍度高低可以通過群組成員的發(fā)言數(shù)量、發(fā)言時間、積分等級或者好友數(shù)量來進行判斷,目標(biāo)群組成員的數(shù)量可以根據(jù)需求預(yù)先設(shè)置。
對于本發(fā)明實施例,步驟201包括:按照發(fā)言數(shù)量由多到少的順序,選擇預(yù)設(shè)數(shù)量的目標(biāo)群組成員;或者,按照最新發(fā)言時間由近到遠的順序,選擇預(yù)設(shè)數(shù)量的目標(biāo)群組成員;或者,按照成員積分等級由高到低的順序,選擇預(yù)設(shè)數(shù)量的目標(biāo)群組成員;或者,按照成員好友數(shù)量由多到少的順序,選擇預(yù)設(shè)數(shù)量的目標(biāo)群組成員。
例如,根據(jù)需求確定在群組A中目標(biāo)群組成員的預(yù)設(shè)數(shù)量是4名,就可以根據(jù)在群組A中所有群組成員發(fā)言的數(shù)量由高到低進行排序,然后選擇發(fā)言數(shù)量最高的4名群組成員,確定其為目標(biāo)群組成員;或者可以根據(jù)在群組A中所有群組成員最新的發(fā)言時間由近到遠進行排序,然后選擇發(fā)言時間最近的4名群組成員,確定其為目標(biāo)群組成員;或者可以根據(jù)在群組A中所有群組成員積分的等級由高到低進行排序,然后選擇積分等級最高的4名群組成員,確定其為目標(biāo)群組成員;或者可以根據(jù)在群組A中所有群組成員好友的數(shù)量由多到少進行排序,然后選擇好友數(shù)量最多的4名群組成員,確定其為目標(biāo)群組成員。
202、分別獲取每個目標(biāo)群組成員的頭像圖片。
在本發(fā)明實施例中,可以通過查找目標(biāo)群組成員的賬號ID獲取該目標(biāo)群組成員的用戶信息,然后從用戶信息中找到目標(biāo)群組成員頭像圖片的鏈接,最后通過鏈接獲取目標(biāo)群組成員對應(yīng)的頭像圖片。并且使用這種方法分別獲取每個目標(biāo)群組成員的頭像圖片。
203、將頭像圖片拼接為一張合成圖片。
對于本發(fā)明實施例,步驟203包括:
Step1、將每個頭像圖片分別賦值到一個位圖對象上;
Step2、按照群組頭像的尺寸設(shè)置位圖對象的尺寸;
Step3、分別創(chuàng)建尺寸與群組頭像尺寸一致的空白位圖對象及畫布對象;
Step4、通過畫布對象將頭像圖片對應(yīng)的位圖對象進行尺寸縮小,并按照指定位置繪制在空白位圖對象上。
在本發(fā)明實施例中,將頭像圖片對應(yīng)的位圖對象進行尺寸縮小的比例,由目標(biāo)群組成員的預(yù)設(shè)數(shù)量來決定,當(dāng)目標(biāo)群組成員的預(yù)設(shè)數(shù)量為四名時,就分別將每個位圖對象的尺寸都縮小為原來尺寸的四分之一;當(dāng)目標(biāo)群組成員的預(yù)設(shè)數(shù)量為九名時,就分別將每個位圖對象的尺寸都縮小為原來尺寸的九分之一。
例如,首先按照需求確定在群組X中目標(biāo)群組成員的預(yù)設(shè)數(shù)量是四名,根據(jù)活躍度的排序,確定具體選擇的四名目標(biāo)群組成員:a、b、c、d,并且分別獲取每個目標(biāo)群組成員對應(yīng)的頭像圖片。然后將獲取得到的a、b、c、d的頭像圖片分別賦值到一個位圖對象上,a、b、c、d對應(yīng)的位圖對象分別為A、B、C、D。獲取群組X的頭像尺寸大小,然后將位圖對象A、B、C、D的尺寸都設(shè)置成與群組X的頭像相同的尺寸大小。接下來分別創(chuàng)建一個尺寸與群組X頭像尺寸一致的空白位圖對象E及畫布對象F。最后根據(jù)目標(biāo)群組成員的預(yù)設(shè)數(shù)量,通過畫布對象F將位圖對象A、B、C、D的尺寸縮小為原來的1/4,并按照指定位置繪制在空白位圖對象E上。
204、將合成圖片設(shè)置為群組頭像。
其中,關(guān)于步驟204將合成圖片設(shè)置為群組頭像的詳細描述,可以參考圖1對應(yīng)部分的描述,本發(fā)明實施例此處將不再贅述。
205、調(diào)用內(nèi)存回收方法對系統(tǒng)內(nèi)存進行回收。
在本發(fā)明實施例中,當(dāng)需要處理圖片過多時,系統(tǒng)中會產(chǎn)生大量的bitmap需要垃圾回收處理,需要進行垃圾回收的次數(shù)就更多也發(fā)生地更頻繁,進而對系統(tǒng)資源造成負荷。為了保證系統(tǒng)內(nèi)存不被占用過多,這時通過調(diào)用Bitmap類的recycle()方法,及時回收先前調(diào)用過的圖片資源,保證系統(tǒng)內(nèi)存不被浪費。
進一步地,作為圖1方法的具體實現(xiàn),本發(fā)明實施例提供了一種群組頭像的設(shè)置裝置,如圖3所示,該裝置包括:獲取單元31、拼接單元32、設(shè)置單元33。
獲取單元31,用于獲取群組成員的頭像圖片;
拼接單元32,用于將頭像圖片拼接為一張合成圖片;
設(shè)置單元33,用于將合成圖片設(shè)置為群組頭像。
需要說明的是,本發(fā)明實施例提供的一種群組頭像的設(shè)置裝置所涉及各功能單元的其他相應(yīng)描述,可以參考圖1中的對應(yīng)描述,在此不再贅述。本發(fā)明實施例中可以通過硬件處理器(hardware processor)來實現(xiàn)相關(guān)功能模塊。
本發(fā)明實施例提供的一種群組頭像的設(shè)置裝置,首先獲取群組成員的頭像圖片,然后將頭像圖片拼接為一張合成圖片,最后將合成圖片設(shè)置為群組頭像。本發(fā)明實施例能夠?qū)⒍鄠€群組成員的頭像圖片進行拼接并作為群組頭像使用,與現(xiàn)有技術(shù)相比,群組頭像不再是單一的一張圖片,能夠根據(jù)群組成員頭像的改變而變化,體現(xiàn)出群組的成員特點。
進一步地,作為圖2方法的具體實現(xiàn),本發(fā)明實施例提供了另一種群組頭像的設(shè)置裝置,如圖4所示,獲取單元31包括:
選擇模塊311,用于按照活躍度由高到低的順序,選擇預(yù)設(shè)數(shù)量的目標(biāo)群組成員;
獲取模塊312,用于分別獲取每個目標(biāo)群組成員的頭像圖片。
進一步的,選擇模塊311用于:
按照發(fā)言數(shù)量由多到少的順序,選擇預(yù)設(shè)數(shù)量的目標(biāo)群組成員;或者,
按照最新發(fā)言時間由近到遠的順序,選擇預(yù)設(shè)數(shù)量的目標(biāo)群組成員;或者,
按照成員積分等級由高到低的順序,選擇預(yù)設(shè)數(shù)量的目標(biāo)群組成員;或者,
按照成員好友數(shù)量由多到少的順序,選擇預(yù)設(shè)數(shù)量的目標(biāo)群組成員。
進一步的,如圖4所示,拼接單元32包括:
賦值模塊321,用于將每個頭像圖片分別賦值到一個位圖對象上;
設(shè)置模塊322,用于按照群組頭像的尺寸設(shè)置位圖對象的尺寸;
創(chuàng)建模塊323,用于分別創(chuàng)建尺寸與群組頭像尺寸一致的空白位圖對象及畫布對象;
繪制模塊324,用于通過畫布對象將頭像圖片對應(yīng)的位圖對象進行尺寸縮小,并按照指定位置繪制在空白位圖對象上。
進一步的,如圖4所示,該裝置進一步包括:
回收單元34,用于在將合成圖片設(shè)置為群組頭像之后,調(diào)用內(nèi)存回收方法對系統(tǒng)內(nèi)存進行回收。
需要說明的是,本發(fā)明實施例提供的另一種群組頭像的設(shè)置裝置所涉及各功能單元的其他相應(yīng)描述,可以參考圖2中的對應(yīng)描述,在此不再贅述。本發(fā)明實施例中可以通過硬件處理器來實現(xiàn)相關(guān)功能模塊。
本發(fā)明實施例提供的另一種群組頭像的設(shè)置裝置,首先獲取群組成員的頭像圖片,然后將頭像圖片拼接為一張合成圖片,最后將合成圖片設(shè)置為群組頭像。本發(fā)明實施例能夠調(diào)用Bitmap類的recycle()方法,及時回收先前調(diào)用過的圖片資源,與現(xiàn)有技術(shù)相比,能夠主動對系統(tǒng)內(nèi)存進行回收,保證在處理圖片過多時,系統(tǒng)內(nèi)存不被浪費。
以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性的勞動的情況下,即可以理解并實施。
通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到各實施方式可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當(dāng)然也可以通過硬件?;谶@樣的理解,上述技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可以存儲在計算機可讀存儲介質(zhì)中,如ROM/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行各個實施例或者實施例的某些部分所述的方法。
最后應(yīng)說明的是:以上實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的精神和范圍。