一種圖片的顯示方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及圖像處理領(lǐng)域,尤其涉及一種圖片的顯示方法及裝置。
【背景技術(shù)】
[0002] 現(xiàn)有的圖片顯示方法的具體做法是:對(duì)于需要進(jìn)行旋轉(zhuǎn)操作的圖片,先基于該圖 片的原始位圖進(jìn)行旋轉(zhuǎn),再根據(jù)屏幕分辨率或屏幕窗口的大小對(duì)旋轉(zhuǎn)后的原始位圖進(jìn)行壓 縮,最后顯示壓縮后的圖片。然而,采用現(xiàn)有技術(shù)中的這種方法對(duì)大量高清晰圖片(例如: 4K2K等具有高清顯示分辨率的圖片)進(jìn)行操作時(shí),會(huì)耗費(fèi)大量的內(nèi)存資源,還會(huì)在加載圖 片和顯示圖片的過程中發(fā)生卡頓、延遲等現(xiàn)象。其中,4K2K為具有3840X2160的物理分辨 率的超高清格式的簡稱。
[0003] 具體的,現(xiàn)有的圖片顯示方法包括如下步驟:
[0004] Sl :獲取圖片的原始位圖以及該圖片的尺寸;
[0005] S2 :利用ExifInterface接口,通過改變?cè)搱D片自身屬性的方式,對(duì)獲取到的原始 位圖進(jìn)行旋轉(zhuǎn);
[0006] S3:根據(jù)當(dāng)前屏幕分辨率或窗口大小,調(diào)整旋轉(zhuǎn)后的原始圖片的尺寸,得到調(diào)整后 的圖片;
[0007] S4:顯示調(diào)整后的圖片。
[0008] 可見,現(xiàn)有的圖片顯示方法具有以下缺陷:
[0009] 第一,通過上述步驟S2以及S3可以看出,現(xiàn)有的圖片顯示方法,是通過改變?cè)?位圖自身屬性的方式對(duì)原始圖片進(jìn)行旋轉(zhuǎn),并對(duì)旋轉(zhuǎn)后的原始位圖進(jìn)行尺寸調(diào)整,這種方 式是在對(duì)旋轉(zhuǎn)操作之后再對(duì)原始位圖進(jìn)行尺寸調(diào)整,由于圖片的原始位圖(也稱為點(diǎn)陣圖 像)是由各像素點(diǎn)構(gòu)成的,因此原始位圖較大,在加載和顯示時(shí)需要占用大量內(nèi)存;并且, 這種方式還會(huì)改變?cè)嘉粓D的屬性,使該圖片在其他終端設(shè)備上均按照修改后的屬性和尺 寸進(jìn)行顯示,可見,該圖片自身的屬性根據(jù)當(dāng)前設(shè)備的屏幕分辨率或窗口大小進(jìn)行修改,但 是由于當(dāng)前設(shè)備的屏幕分辨率可能并不是最優(yōu)的,這樣,就有可能降低了該圖片的分辨度 和清晰度,影響了用戶的視覺效果。
[0010] 第二,通過上述步驟S1、S2以及S3可以看出,當(dāng)用戶選擇顯示大量圖片時(shí),現(xiàn)有的 圖片顯示方法需要逐一改變每個(gè)原始位圖的自身屬性,并逐一調(diào)整每個(gè)原始位圖的尺寸, 這會(huì)占用終端設(shè)備大量的內(nèi)存資源,給終端設(shè)備的正常運(yùn)行帶來負(fù)面影響;另外,由于上述 操作會(huì)耗費(fèi)大量時(shí)間,嚴(yán)重降低了顯示圖片的時(shí)間,降低了用戶的體驗(yàn)。
【發(fā)明內(nèi)容】
[0011] 本發(fā)明實(shí)施例提供一種圖片的顯示方法及裝置,在不改變?cè)紙D片的屬性的前提 下,增加了圖片顯示的靈活性,節(jié)省了終端的內(nèi)存占用率。
[0012] 本發(fā)明實(shí)施例提供了一種圖片的顯示方法,該方法包括:
[0013] 接收用于顯示圖片的指令;
[0014] 根據(jù)所述指令中所包含的待顯示圖片的標(biāo)識(shí),獲取所述待顯示圖片的原始位圖, 并在當(dāng)前設(shè)備的數(shù)據(jù)庫中查找與所述待顯示圖片對(duì)應(yīng)的預(yù)先存儲(chǔ)的第一旋轉(zhuǎn)角度;
[0015] 根據(jù)當(dāng)前屏幕的分辨率和/或當(dāng)前窗口大小,調(diào)整所述待顯示圖片的原始位圖的 顯示尺寸,得到所述原始位圖的壓縮位圖;并按照查找到的第一旋轉(zhuǎn)角度顯示所述原始位 圖的壓縮位圖。
[0016] 本發(fā)明實(shí)施例還提供了一種圖片的顯示裝置,該裝置包括:
[0017] 指令接收單元,用于接收用于顯示圖片的指令;
[0018] 處理單元,用于根據(jù)所述指令中所包含的待顯示圖片的標(biāo)識(shí),獲取所述待顯示圖 片的原始位圖,并在當(dāng)前設(shè)備的數(shù)據(jù)庫中查找與所述待顯示圖片對(duì)應(yīng)的預(yù)先存儲(chǔ)的第一旋 轉(zhuǎn)角度;
[0019] 調(diào)整及顯示單元,用于根據(jù)當(dāng)前屏幕的分辨率和/或當(dāng)前窗口大小,調(diào)整所述待 顯示圖片的原始位圖的顯示尺寸,得到所述原始位圖的壓縮位圖;并查找到的第一旋轉(zhuǎn)角 度顯示所述原始位圖的壓縮位圖。
[0020] 從上述技術(shù)方案可以看出,在接收到用于顯示圖片的指令之后,獲取待顯示圖片 的原始位圖,并且,在當(dāng)前設(shè)備的數(shù)據(jù)庫中查找到該待顯示圖片對(duì)應(yīng)的預(yù)先存儲(chǔ)的第一旋 轉(zhuǎn)角度;這樣,本發(fā)明實(shí)施例首先對(duì)待顯示圖片的原始位圖進(jìn)行壓縮,從而縮小了待顯示圖 片的大小,當(dāng)后續(xù)需要對(duì)待顯示圖片進(jìn)行旋轉(zhuǎn)操作時(shí),直接對(duì)已壓縮的位圖進(jìn)行旋轉(zhuǎn),與現(xiàn) 有技術(shù)直接對(duì)原始位圖進(jìn)行旋轉(zhuǎn)的方式比較,本發(fā)明實(shí)施例有效的節(jié)省了圖片加載、旋轉(zhuǎn) 和顯示過程所占用的內(nèi)存,提升了圖片加載、旋轉(zhuǎn)和顯示速度;進(jìn)一步的,本發(fā)明實(shí)施例根 據(jù)查找到的第一旋轉(zhuǎn)角度對(duì)原始位圖的壓縮位圖進(jìn)行旋轉(zhuǎn),并在旋轉(zhuǎn)操作后顯示圖片。這 樣,基于對(duì)原始位圖的壓縮位圖進(jìn)行旋轉(zhuǎn)操作,避免了現(xiàn)有技術(shù)中對(duì)原始位圖進(jìn)行旋轉(zhuǎn)操 作導(dǎo)致的消耗大量內(nèi)存的現(xiàn)象。另外,本發(fā)明實(shí)施例中的第一旋轉(zhuǎn)角度是基于待顯示圖片 自身方向?qū)D片的顯示方向進(jìn)行調(diào)整的參數(shù),該第一旋轉(zhuǎn)角度是存儲(chǔ)于當(dāng)前設(shè)備的數(shù)據(jù)庫 中,并沒有替代待顯示圖片的自身屬性,這樣,無論用戶如何旋轉(zhuǎn)各圖片的顯示方向,都不 會(huì)改變各圖片的自身屬性,因此也不會(huì)降低圖片的原始分辨率,從而在保證了圖片的原始 清晰度和分辨率的前提下,提供了一種更靈活的圖片顯示方法,進(jìn)而提高了加載和顯示速 率、降低了內(nèi)存消耗、節(jié)省了內(nèi)存占用率。
【附圖說明】
[0021] 為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使 用的附圖作簡要介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本 領(lǐng)域的普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其 他的附圖。
[0022] 圖1為本發(fā)明實(shí)施例提供的一種圖片的顯示方法的流程示意圖;
[0023] 圖2為本發(fā)明實(shí)施例提供的一種對(duì)于未顯示圖片的圖像旋轉(zhuǎn)方法的流程示意圖;
[0024] 圖3為本發(fā)明實(shí)施例提供的一種圖像顯示方法的流程示意圖;
[0025] 圖4為本發(fā)明實(shí)施例提供的一種對(duì)于已顯示圖片的圖像旋轉(zhuǎn)方法的流程示意圖;
[0026] 圖5為本發(fā)明實(shí)施例提供的一種縮略圖的生成或更新方法的流程示意圖;
[0027] 圖6為本發(fā)明實(shí)施例提供的一種圖片的顯示裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0028] 為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明作進(jìn) 一步地詳細(xì)描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施 例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的 所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0029] 本發(fā)明實(shí)施例適用于各種智能終端,尤其適用于基于Android (安卓)系統(tǒng)開發(fā)的 智能手機(jī)、智能電視等終端設(shè)備。本發(fā)明實(shí)施例提供了一種靈活且高效的圖像顯示及縮略 圖的快速同步方法。其中,本發(fā)明實(shí)施例提出一種基于當(dāng)前窗口的圖像旋轉(zhuǎn)算法,并將圖像 顯示時(shí)的角度統(tǒng)一存儲(chǔ)在當(dāng)前設(shè)備(例如,智能終端、智能電視端)的數(shù)據(jù)庫中管理,一旦 當(dāng)前設(shè)備的數(shù)據(jù)庫被清除,圖像就顯示為自身屬性中的角度,從而使圖像的旋轉(zhuǎn)只基于當(dāng) 前設(shè)備,當(dāng)該圖像在其他設(shè)備中打開時(shí)仍顯示該圖像自身屬性中的角度,一般來講,在圖像 旋轉(zhuǎn)過程中,可能會(huì)根據(jù)當(dāng)前屏幕對(duì)圖像進(jìn)行拉伸,從而降低了圖像的分辨率,然而,本發(fā) 明實(shí)施例不改變圖像自身屬性中的角度,從而在保證圖像的分辨率的同時(shí),提供了一種更 靈活的圖像旋轉(zhuǎn)方法。同時(shí),本發(fā)明實(shí)施例首先對(duì)待顯示圖片的原始位圖進(jìn)行壓縮,從而縮 小了待顯示圖片的大小,當(dāng)后續(xù)需要對(duì)待顯示圖片進(jìn)行旋轉(zhuǎn)操作時(shí),直接對(duì)已壓縮的位圖 進(jìn)行旋轉(zhuǎn),與現(xiàn)有技術(shù)直接對(duì)原始位圖進(jìn)行旋轉(zhuǎn)的方式比較,本發(fā)明實(shí)施例有效的節(jié)省了 圖片加載、旋轉(zhuǎn)和顯示過程所占用的內(nèi)存,提升了圖片加載