專利名稱:一種打開和關(guān)閉圖片瀏覽窗口的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及圖像瀏覽領(lǐng)域,特別是涉及打開和關(guān)閉圖像瀏覽窗口領(lǐng)域。
背景技術(shù):
在計算機(jī)系統(tǒng)中, 一般采用文件夾的方式對圖像文件進(jìn)行管理,將圖像文
件組織到一個或多個文件夾中。例如,在Windows XP操作系統(tǒng)的資源管理器 中,用戶選擇打開相應(yīng)的文件夾時,可用縮略圖、平鋪、圖標(biāo)、列表和詳細(xì)信 息等方式查看圖像文件??s略圖方式是將文件夾所包含圖像的縮小顯示展示在 代表該文件的圖標(biāo)上,從而可以快速了解該文件的內(nèi)容。當(dāng)采用縮略圖方式顯 示圖片文件列表時,要瀏覽查看圖片文件的內(nèi)容時,用戶可以采用如下方式打 開圖片文件進(jìn)行瀏覽
1、 使用幻燈片方式查看。選擇窗口左側(cè)的"作為幻燈片查看"功能,打 開全屏的圖片瀏覽窗口,圖片文件以單行排列的縮略圖形式顯示,同時在界面 上顯示當(dāng)前選擇的圖片文件的完整縮小圖像,可以通過使用左右箭頭按鍵選擇 圖片,或者通過單擊選擇一幅圖片,選擇后的圖片以較大的顯示大小顯示在同 一界面的較大顯示區(qū)域。
2、 雙擊縮略圖,在新彈出的窗口中打開圖片文件。 以上圖像文件的查看方式都是以較小的縮略圖形式展示圖像文件的內(nèi)容。
如果要查看圖像文件的原始內(nèi)容或圖像細(xì)節(jié),在目前的操作模式下,需要先選 擇圖像文件,再按回車鍵或使用鼠標(biāo)雙擊等操作彈出 一個單獨的圖片瀏覽窗 口,在該圖片瀏覽窗口中查看圖像文件的原始內(nèi)容。其他一些專用的圖像查看 軟件,如ACDSee等,操作也基本類似。
這種方法的缺點是從縮略圖切換到圖片瀏覽窗口顯示時,通過回車鍵或 鼠標(biāo)雙擊啟動直接顯示單獨的圖片瀏覽窗口。完成圖片的查看后,關(guān)閉圖片瀏 覽窗口時,圖片瀏覽窗口直接消失??梢?,圖像瀏覽查看在現(xiàn)有的操作模式下, 在縮略圖和圖片瀏覽窗口之間的切換操作呆板、不流暢,影響了用戶的操作感 受。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提出了一種打開或關(guān)閉圖像時在縮略圖和
圖像大圖間平滑切換的方法,不需要用戶顯式的執(zhí)行打開或關(guān)閉搡作,也不需 要借助額外的控制按鈕,將圖片的打開和關(guān)閉過程直接融入了瀏覽過程的一個 放縮操作,解決了現(xiàn)有技術(shù)中操作呆板、不流暢、影響用戶的操作感受的問題。 為了解決上述問題,本發(fā)明提出了一種打開圖片瀏覽窗口的方法,包括
下列步驟
接收對縮略圖的放大命令,所述縮略圖用于指向保存在存儲器中的圖片文
件;
以動態(tài)漸變模式打開圖片瀏覽窗口 ,所述圖片瀏覽窗口用于顯示所述縮略 圖指向的圖片文件的圖像。
優(yōu)選的,以動態(tài)漸變模式打開圖片瀏覽窗口采用下列步驟實現(xiàn) 設(shè)置所述圖片瀏覽窗口的顯示區(qū)域; 獲所述取縮略圖的顯示區(qū)域;
以所述縮略圖的顯示區(qū)域為起始顯示區(qū)域,所述圖片瀏覽窗口的顯示區(qū)域
為結(jié)束顯示區(qū)域,計算中間顯示區(qū)域;
在所述中間顯示區(qū)域里顯示所述圖片文件經(jīng)過變換處理的圖像; 按照所述圖片瀏覽窗口的顯示區(qū)域,顯示圖片瀏覽窗口 。 優(yōu)選的,計算得到的中間顯示區(qū)域是多個,所述方法還可以包括, 清除當(dāng)前顯示區(qū)域及其所顯示內(nèi)容,取下一個中間顯示區(qū)域,重復(fù)顯示所
述圖片文件經(jīng)過變換處理的圖像,直至取完多個中間顯示區(qū)域。 優(yōu)選的,所述方法還可以包括,
在所述縮略圖的顯示區(qū)域和所述中間顯示區(qū)域之間加入特效。 優(yōu)選的,所述特效是
在所述縮略圖的顯示區(qū)域和所述中間顯示區(qū)域之間繪制煙霧等粒子效果。 優(yōu)選的,所述變換處理是縮放、旋轉(zhuǎn)或者顏色變換等像素級變換處理。 優(yōu)選的,還包括,對縮略圖的放大命令也同時用做所述圖片瀏覽窗口對顯
示的圖像的放大顯示命令。
優(yōu)選的,所述對縮略圖的放大命令是在所述縮略圖上滾動鼠標(biāo)滾輪或者點
擊鼠標(biāo)按鍵。
本發(fā)明還提出了一種關(guān)閉圖片瀏覽窗口的方法,包括,
縮略圖和圖片瀏覽窗口 ,所述縮略圖用于指向保存在存儲器中的圖片文 件,所述圖片瀏覽窗口用于顯示所述縮略圖指向的圖片文件的圖像, 所述方法包:fe:
接收對所述圖片瀏覽窗口的縮小命令,所述縮小命令是在所述圖片瀏覽器 或者所述縮略圖上發(fā)出;
以動態(tài)漸變到所述縮略圖上的模式關(guān)閉所述圖片瀏覽窗口 。
優(yōu)選的,所述方法還可以包括,判斷所述圖片瀏覽窗口是否小于預(yù)設(shè)的大 小,若否,由所述圖片瀏覽窗口處理所述縮小命令,若是,繼續(xù)處理。
優(yōu)選的,以動態(tài)漸變到所述縮略圖上的模式關(guān)閉所述圖片瀏覽窗口采用下
列步驟實現(xiàn)
獲取所述圖片瀏覽窗口的顯示區(qū)域; 獲取所述縮略圖的顯示區(qū)域; 關(guān)閉所述圖片瀏覽窗口;
以所述圖片瀏覽窗口的顯示區(qū)域為起始顯示區(qū)域,所述縮略圖的顯示區(qū)域
為結(jié)束顯示區(qū)域,計算中間顯示區(qū)域;
在所述中間顯示區(qū)域顯示所述圖片文件經(jīng)過變換處理的圖像。 優(yōu)選的,計算得到的中間顯示區(qū)域是多個,所述方法還可以包括, 清除當(dāng)前顯示區(qū)域及其所顯示內(nèi)容,取下一個中間顯示區(qū)域,重復(fù)顯示所
述圖片文件經(jīng)過變換處理的圖像,直至取完所述多個中間顯示區(qū)域。 優(yōu)選的,所述方法還可以包括,
在圖片瀏覽窗口的顯示區(qū)域和中間顯示區(qū)域之間加入特效。
優(yōu)選的,所述特效是在所述圖片瀏覽窗口的顯示區(qū)域和所述中間顯示區(qū)域
之間繪制煙霧等粒子效果。
優(yōu)選的,所述變換處理是縮放、旋轉(zhuǎn)或者顏色變換等像素級變換處理。 優(yōu)選的,所述縮小命令是在所述圖片瀏覽窗口或者所述縮略圖上滾動鼠標(biāo)
滾輪或者點擊鼠標(biāo)按4定。
本發(fā)明還提供了一種打開圖片瀏覽窗口的裝置,包括
命令接收單元,用于接收對縮略圖的選擇命令,所述縮略圖用于指向保存
在存儲器中的圖片文件; 命令處理單元,用于以動態(tài)漸變模式打開圖片瀏覽窗口,所述圖片瀏覽窗 口用于顯示所述縮略圖指向的圖片文件的圖像。
優(yōu)選的,所述命令處理單元由下列單元組成
圖片瀏覽窗口顯示區(qū)域設(shè)置單元,用于設(shè)置圖片瀏覽窗口的顯示區(qū)域; 縮略圖的顯示區(qū)域獲取單元,用于獲取縮略圖的顯示區(qū)域; 中間顯示區(qū)域計算單元,用于以縮略圖的顯示區(qū)域為起始顯示區(qū)域,圖片
瀏覽窗口的顯示區(qū)域為結(jié)束顯示區(qū)域,計算中間顯示區(qū)域;
圖像變換顯示單元,用于在中間顯示區(qū)域顯示所述圖片文件經(jīng)過變換處理
的圖像;
圖片瀏覽窗口打開單元,用于按照設(shè)置的圖片瀏覽窗口的顯示區(qū)域,顯示 圖片瀏覽窗口。
優(yōu)選的,計算得到的中間顯示區(qū)域是一個或多個,所述命令處理單元還可 以包括,
重復(fù)顯示單元,用于取下一個中間顯示區(qū)域,重復(fù)顯示所述圖片文件經(jīng)過 變換處理的圖像,直至取完多個中間顯示區(qū)域。 優(yōu)選的,所述命令處理單元還可以包括,
特效單元,用于在所述縮略圖的顯示區(qū)域和所述中間顯示區(qū)域間加入特效。
優(yōu)選的,所述特效是在所述縮略圖的顯示區(qū)域和所述中間顯示區(qū)域之間繪
制煙霧等粒子效果。
優(yōu)選的,所述變換處理是縮放、旋轉(zhuǎn)或者顏色變換等像素級變換處理。 優(yōu)選的,對縮略圖的放大命令也同時用做所述圖片瀏覽窗口對顯示的圖像
的放大顯示命令。
優(yōu)選的,對所述縮略圖的放大命令是在所述縮略圖上滾動鼠標(biāo)滾輪或者點 擊鼠標(biāo)按鍵。
本發(fā)明還提供了一種關(guān)閉圖片瀏覽窗口的裝置,包括,縮略圖和圖片瀏覽 窗口,
所述縮略圖用于指向保存在存儲器中的圖片文件,所述圖片窗口用于顯示 所述縮略圖指向的圖片文件的圖像,
所述裝置包括
命令接收單元,用于接收對所述圖片瀏覽窗口的縮小命令,所述縮小命令
是在所述圖片瀏覽器或者所述縮略圖上發(fā)出;
動態(tài)關(guān)閉單元,以動態(tài)漸變到所述縮略圖上的模式關(guān)閉所述圖片瀏覽窗口 。
優(yōu)選的,還可以包括,
判斷單元,用于判斷所述圖片瀏覽窗口是否小于預(yù)設(shè)的大小,若是,調(diào)用 動態(tài)關(guān)閉單元,若否,由所述圖片瀏覽窗口處理所述縮小命令。 優(yōu)選的,所述動態(tài)關(guān)閉單元由下列單元組成 第一顯示區(qū)域獲取單元,用于獲取所述圖片瀏覽窗口的顯示區(qū)域; 第二顯示區(qū)域獲取單元,用于獲取所述縮略圖的顯示區(qū)域; 關(guān)閉單元,用于關(guān)閉所述圖片瀏覽窗口;
中間顯示區(qū)域計算單元,用于以圖片瀏覽窗口的顯示區(qū)域為起始顯示區(qū) 域,以縮略圖的顯示區(qū)域為結(jié)束顯示區(qū)域,計算中間顯示區(qū)域;
圖像變換顯示單元,用于在中間顯示區(qū)域顯示所述圖片文件經(jīng)過變換處理 的圖像
優(yōu)選的,計算得到的中間顯示區(qū)域是多個,所述動態(tài)關(guān)閉單元還可以包括, 重復(fù)顯示單元,用于清除當(dāng)前顯示區(qū)域及其所顯示內(nèi)容,取下一個中間顯
示區(qū)域,重復(fù)顯示所述圖片文件經(jīng)過變換處理的圖像,直至取完所述多個中間
顯示區(qū)域。
優(yōu)選的,所述動態(tài)關(guān)閉單元還可以包括,
特效單元,用于在圖片瀏覽窗口的顯示區(qū)域和中間顯示區(qū)域間加入特效。 優(yōu)選的,所述特效是在所述圖片瀏覽窗口的顯示區(qū)域和所述中間顯示區(qū)域
之間繪制煙霧等粒子效果。
優(yōu)選的,所述變換處理是縮放、旋轉(zhuǎn)或者顏色變換等像素級變換處理。 優(yōu)選的,所述縮小命令是在所述圖片瀏覽窗口或者所述縮略圖上滾動鼠標(biāo)
滾輪或者點擊鼠標(biāo)按鍵。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點
1、由縮略圖打開圖片瀏覽窗口時,采用動態(tài)漸變的效果逐步漸變到圖片
瀏覽窗口,當(dāng)圖片瀏覽窗口完全覆蓋在縮略圖窗口區(qū)域時,用戶將感覺到圖片
瀏覽窗口是從縮略圖動態(tài)放大變換來的;關(guān)閉圖片瀏覽窗口時,采用動態(tài)漸變 的效果逐步漸變到縮略圖上,使用戶感覺正在查看的圖片逐步回歸到縮略圖,
顯示流暢,提高了用戶的使用體驗。
2、 動態(tài)漸變的過程中,可以加入旋轉(zhuǎn)或者特效,進(jìn)一步美化了顯示效果。
3、 可以用鼠標(biāo)滾輪操作,進(jìn)行圖片瀏覽窗口的打開和關(guān)閉,用戶感覺使 用同一個放大命令實現(xiàn)了縮略圖放大到圖片瀏覽窗口,并且可以繼續(xù)放大,縮 小時也是一樣,用戶感覺不到縮略圖列表和圖片瀏覽窗口之間的隔閡,符合用 戶的使用心理,能有效的提高用戶使用感受。
4、 由于在縮略圖接收到的放縮命令被用作圖片瀏覽窗口的放縮控制命令, 用戶在打開圖片、放大圖片、縮小圖片的整個過程中,鼠標(biāo)指針可以一直停留 在縮略圖上,不停的發(fā)出放大縮小指令(通常優(yōu)選鼠標(biāo)滾輪的滾動作為放縮指 令,也可采用鼠標(biāo)^4走,只不過這樣的相應(yīng)方式用戶體驗不夠好)即可控制圖 片瀏覽窗口的》丈縮。用戶無需移動鼠標(biāo)位置即可快速查看和關(guān)閉瀏覽的文件, 有利于在查看大量圖片文件時方便的切換查看不同的圖片文件。
圖l是本發(fā)明適用的計算機(jī)設(shè)備結(jié)構(gòu)圖; 圖2是本發(fā)明的打開圖片瀏覽窗口的方法實施例流程圖; 圖3是本發(fā)明的漸進(jìn)變換打開圖片瀏覽器窗口的流程圖; 圖4a是本發(fā)明的縮略圖列表的示意圖; 圖4b是本發(fā)明的在一個縮略圖上執(zhí)行放大指令后的示意圖; 圖4c是本發(fā)明的動態(tài)推進(jìn)過程中的 一個中間顯示區(qū)域示意圖; 圖5是本發(fā)明的在中間顯示區(qū)域中顯示圖片的流程圖; 圖6是是本發(fā)明的關(guān)閉圖片瀏覽窗口的方法實施例流程圖; 圖7是本發(fā)明的圖片瀏覽窗口漸變到縮略圖的步驟流程圖; 圖8是本發(fā)明的判斷鼠標(biāo)所在的縮略圖的流程圖; 圖9是本發(fā)明的打開圖片瀏覽窗口的裝置實施例框圖; 圖10是本發(fā)明的關(guān)閉圖片瀏覽窗口的裝置實施例框圖。
具體實施例方式
為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式
對本發(fā)明作進(jìn)一步詳細(xì)的說明。
本發(fā)明的實施例可以應(yīng)用于使用Windows XP操作系統(tǒng)的計算機(jī)設(shè)備中, 但不局限于于此,本領(lǐng)域的專業(yè)人員容易理解,本發(fā)明可以應(yīng)用于任何具有顯 示輸出裝置和處理器的計算機(jī)設(shè)備中。通常這樣的計算機(jī)設(shè)備,如圖l所示, 包括,與總線200相連的主存儲器201,用于儲存數(shù)據(jù)和指令,由隨機(jī)存取存 儲器(RAM)或其他動態(tài)存貯器構(gòu)成;與總線200相連的處理器202,用于執(zhí) 行主存儲器中的指令;與總線200相連的只讀存儲器(ROM) 203,用于存儲 靜態(tài)信息和處理器202的指令;與總線200相連的存儲裝置204,用于存儲更 多的信息和指令,可以采用諸如磁盤、光盤、或磁光盤等介質(zhì)。與總線200 相連的顯示器205,用于顯示程序信息,可以采用如陰極射線管(CRT),液 晶顯示器(LCD)等設(shè)備。與總線200相連的輸入裝置206,用于輸入信息, 可以包括字母數(shù)字鍵和其他控制鍵。還可以配備另 一種用戶輸入裝置計算機(jī)指 點設(shè)備207,可以是光標(biāo)控制器,諸如鼠標(biāo)、搖桿、跟蹤球、或光標(biāo)方向鍵、 觸摸屏、手寫筆、無線遙控裝置等,計算機(jī)指點設(shè)備可以將用戶輸入的方向信 息和按鍵命令傳輸?shù)教幚砥?02,并可以控制顯示器205上的光標(biāo)進(jìn)行移動。 計算機(jī)指點設(shè)備通常在兩個軸上(如x,y)具有兩個自由度,可以指定平面中 的位置。與總線200相連的通訊接口 208,用于接收和發(fā)送數(shù)據(jù)信息,通過通 訊接口 208可以把計算機(jī)設(shè)備連接到局域網(wǎng)209中,局域網(wǎng)209可以連接到主 機(jī)210,還可以連接到互聯(lián)網(wǎng)服務(wù)提供商211,并通過互聯(lián)網(wǎng)服務(wù)提供商211 連接到互聯(lián)網(wǎng)212。本計算機(jī)設(shè)備運行的過程是,處理器202從主存貯器201 中取得的一條指令,執(zhí)行指令,如果指令需要輸入輸出數(shù)據(jù),則根據(jù)要求讀入 或?qū)懗鰯?shù)據(jù),執(zhí)行完本條指令后,再取下一條指令執(zhí)行。本發(fā)明應(yīng)用的硬件電 路可以替換為軟件指令或硬件與軟件指令結(jié)合,本發(fā)明的實施例不限于硬件電 路和軟件的任何特定組合。
以以上特征為判定標(biāo)準(zhǔn),具有上述特性的移動設(shè)備諸如PDA、手機(jī)、數(shù) 字電視機(jī)頂盒、游戲主機(jī)、筆記本電腦或者PC機(jī)均可以被視為一種計算機(jī)設(shè) 備。
下面介紹在Windows XP操作系統(tǒng)下,為資源管理器添加插件,實施本發(fā)
明,為資源管理器增加通過鼠標(biāo)滾輪動態(tài)漸進(jìn)式打開和關(guān)閉圖片的操作。
在現(xiàn)有的windowsXP操作系統(tǒng)中,資源管理器提供了使用縮略圖方式瀏 覽查看圖像的方式,也可選擇使用幻燈片、平鋪、圖標(biāo)、列表、詳細(xì)信息等方 式查看瀏覽圖像。鼠標(biāo)的滾動操作用于瀏覽更多的縮略圖或文件信息。如果要 查看圖像文件的原始內(nèi)容或圖像細(xì)節(jié),需要在資源管理器中先選擇圖像文件, 再按回車鍵或使用鼠標(biāo)雙擊等操作顯示一個單獨的界面,在該界面中查看圖像 文件的原始內(nèi)容。
本實施例通過截獲資源管理器文件瀏覽窗口的鼠標(biāo)消息來實施本發(fā)明。利 用BHO對象(Browser Helper Objects,瀏覽器幫助者對象)來幫助截獲文件 瀏覽窗口的鼠標(biāo)消息。BHO是一個進(jìn)程內(nèi)COM組件,注冊于注冊表中某一 鍵下。在IE或資源管理器啟動時,查詢注冊表中的該鍵并把該鍵下的所有對 象預(yù)以加載。資源管理器啟動完成時,調(diào)用BHO的初始化方法,在初始化方 法中,得到資源管理器的主窗口句柄,將主窗口子類化。子類化后的窗口處理 函數(shù)處理WM—PARENTNOTIFY消息,監(jiān)控文件瀏覽窗口的創(chuàng)建。當(dāng)檢測到 文件瀏覽窗口創(chuàng)建時,子類化該文件瀏覽窗口,至此完成文件瀏覽窗口消息的 攔截,處理代碼可以接收資源管理器文件瀏覽窗口上用戶的鍵盤、鼠標(biāo)或其它 計算機(jī)指點設(shè)備的操作消息,并對相應(yīng)的消息做出響應(yīng)。
參見圖2,是本發(fā)明的打開圖片瀏覽窗口的方法實施例流程圖,包括 步驟IOI,接收對縮略圖的放大命令,所述縮略圖用于指向保存在存儲器 中的圖片文件;
縮略圖既可以是操作系統(tǒng)提供的,例如,在windowsXP系統(tǒng)中的資源管理 器中提供的縮略圖列表,也可以是由另外編寫的代碼產(chǎn)生的,縮略圖對象中包 含其對應(yīng)的保存在存儲器中文件的位置信息,并且把文件的內(nèi)容用縮略圖的方 式表現(xiàn)出來,所述的放大命令可以是預(yù)先定義的,例如,可以是鼠標(biāo)滾輪的滾 動命令、鼠標(biāo)按鍵命令或者鍵盤的上下翻頁命令。
步驟102,以動態(tài)漸變模式打開圖片瀏覽窗口,所述圖片瀏覽窗口用于顯 示所述縮略圖指向的圖片文件的圖像。
現(xiàn)有技術(shù)中,采用直接以預(yù)定的大小顯示圖片瀏覽窗口來打開圖片,缺少 從縮略圖到圖片瀏覽窗口的過渡,本發(fā)明采用動態(tài)漸變的方式打開圖片瀏覽窗
口,可以在縮略圖和圖片瀏覽窗口之間產(chǎn)生動態(tài)漸變效果,可以平滑的過渡, 使用戶感覺到圖片瀏覽窗口是從縮略圖動態(tài)放大漸變來的,提高了用戶的使用感受。
優(yōu)選的,步驟102可以釆用下列步驟實現(xiàn) 設(shè)置圖片瀏覽窗口的顯示區(qū)域; 獲取縮略圖的顯示區(qū)域;
以縮略圖的顯示區(qū)域為起始顯示區(qū)域,圖片瀏覽窗口的顯示區(qū)域為結(jié)束顯 示區(qū)域,計算中間顯示區(qū)域;
在中間顯示區(qū)域里顯示所述圖片文件經(jīng)過變換處理的圖像; 按照所述圖片瀏覽窗口的顯示區(qū)域,顯示圖片瀏覽窗口 。 預(yù)先設(shè)置圖片瀏覽窗口的顯示區(qū)域,確定圖片瀏覽窗口最終要顯示的位 置,圖片瀏覽窗口一般為四邊形,所述的顯示區(qū)域可以用四邊形的4個頂點的 坐標(biāo)來表示,也可以使用四邊形的中心位置的坐標(biāo)、寬高的邊長和旋轉(zhuǎn)的角度 來表示;再獲取縮略圖的顯示區(qū)域,同樣可以用四邊形的4個頂點的坐標(biāo)來表 示;以縮略圖的顯示區(qū)域為起始顯示區(qū)域,以圖片瀏覽窗口的顯示區(qū)域為結(jié)束 顯示區(qū)域,計算中間顯示區(qū)域,計算的方法可以采用線性的插值算法,也可以 采用非線性的插值算法,得到中間狀態(tài)的中間顯示區(qū)域;取得所述縮略圖指向 的圖片文件的內(nèi)容,經(jīng)過變換處理后顯示在中間顯示區(qū)域中,例如,所述的變 換處理可以是縮放、旋轉(zhuǎn)或者顏色變換等,顯示時可以采用顯示圖片的全部內(nèi) 容也可以只顯示圖片的一部分;按照所述圖片瀏覽窗口的顯示區(qū)域,顯示圖片 瀏覽窗口,圖片窗口中顯示出所述縮略圖指向的圖片文件的內(nèi)容。
優(yōu)選的,還包括,清除當(dāng)前顯示區(qū)域及其所顯示內(nèi)容,取下一個中間顯示 區(qū)域,重復(fù)顯示所述圖片文件經(jīng)過變換處理的圖像,直至取完多個中間顯示區(qū) 域。為了更好的體現(xiàn)平滑過渡的效果,可以計算得到多個中間顯示區(qū)域,逐個 在每個顯示區(qū)域中顯示圖片。在下一個中間顯示區(qū)域繪制圖像前,可以直接清 除當(dāng)前區(qū)域及其顯示內(nèi)容,也可以稍候再對當(dāng)前區(qū)域及其顯示內(nèi)容進(jìn)行清除或 做變換以達(dá)到拖尾顯示效果。
優(yōu)選的,還包括,在縮略圖的顯示區(qū)域和中間顯示區(qū)域間加入特效。為更 好的提高用戶的體驗,也可以在漸變過程中加入特效處理。優(yōu)選的,所述特效是在所述縮略圖的顯示區(qū)域和所述中間顯示區(qū)域之間 繪制煙霧等粒子效果。例如,可以把縮略圖顯示區(qū)域的頂點和正在顯示的中間 顯示區(qū)域的頂點間繪制連接線,使用戶更好的感覺到漸變的過程,也可以加入 煙霧等拖尾的效果。
優(yōu)選的,還包括,所述變換處理是縮放、旋轉(zhuǎn)或者顏色變換等像素級變換 處理。例如,可以4巴每個中間顯示區(qū)域中顯示的圖片旋轉(zhuǎn) 一 定的角度進(jìn)行顯示, 例如,有3個中間顯示區(qū)域,可以設(shè)定每個中間顯示區(qū)域中圖片的旋轉(zhuǎn)角度順 次增加90度,可以實現(xiàn)在中間漸變過程中,圖片旋轉(zhuǎn)了 360度的效果,使?jié)u 變過程更加豐富多彩。同樣也可以是放縮或者對顏色進(jìn)行變換等處理。
優(yōu)選的,對縮略圖的放大命令是在所述縮略圖上滾動鼠標(biāo)滾輪或者點擊鼠 標(biāo)按鍵。所述放大命令可以是滾動鼠標(biāo)滾輪或者點擊鼠標(biāo)按鍵,最優(yōu)選的,使 用鼠標(biāo)的滾輪滾動命令做為放大命令,可以更好的提高用戶的使用感受,和用 戶平常使用的放縮控制方法一致。常規(guī)的鼠標(biāo)滾輪應(yīng)用于列表或內(nèi)容的滾動, 也有用于圖片瀏覽窗口時進(jìn)行放縮的案例,它們是基于已經(jīng)打開的文件的操作 處理方法,并且對于縮小操作,通常文件縮小到一定程度后就固定不變了。本 發(fā)明可以使用放大命令將縮略圖指向的圖片文件的內(nèi)容由縮略圖大小動態(tài)漸 變到圖片瀏覽窗口 ,用戶感覺到圖片瀏覽窗口是從縮略圖動態(tài)放大變換來的, 效果流暢,提高了用戶的使用感受。
優(yōu)選的,對縮略圖的放大命令也同時用做所述圖片瀏覽窗口對顯示的圖像 的放大顯示命令,如果用戶首次在一個縮略圖上執(zhí)行放大命令(該縮略圖代表 的圖片文件處于未被打開狀態(tài)),則會觸發(fā)圖片文件的打開操作并以所述動態(tài) 變換方法將圖片文件內(nèi)容顯示在所述圖片瀏覽窗口中,此后,所述圖片瀏覽窗 口還可以接收跟所述縮略圖上相同的放大命令對圖像進(jìn)行放大顯示,這個放大 命令可以在縮略圖上發(fā)出,也可以在圖片瀏覽窗口上發(fā)出,執(zhí)行的效果是一樣 的,例如,圖片打開以后,用戶還可以在縮略圖上繼續(xù)發(fā)出放大命令,對圖片 瀏覽窗口繼續(xù)放大。這樣,給用戶的感覺就是,使用鼠標(biāo)滾輪將縮略圖放大到 了圖片瀏覽窗口中,并且可以繼續(xù)在圖片瀏覽窗口或縮略圖上發(fā)出放大命令對 圖片瀏覽窗口進(jìn)一步放大,用戶全然感覺不到縮略圖被放大和圖片被打開的差 異。所述圖片瀏覽窗口除支持上面介紹的所述^:大命令外,還可以支持其它類
型的放大命令。
下面描述在文件瀏覽窗口中的縮略圖列表上響應(yīng)鼠標(biāo)的滾動消息,并以漸 進(jìn)變換方式打開縮略圖所指向的圖片文件的過程。
在處理代碼中添加鼠標(biāo)滾輪消息響應(yīng),因為文件瀏覽窗口實際上是一個
list-view系統(tǒng)控件,向文件瀏覽窗口發(fā)送LVM—HITTEST消息即可根據(jù)鼠標(biāo)位 置得到當(dāng)前鼠標(biāo)下的文件縮略圖項,如果返回-1,表示鼠標(biāo)沒有在文件縮略圖 項上滾動,將滾動消息傳遞給系統(tǒng)的默認(rèn)處理。否則,根據(jù)返回的索引得到縮 略圖項所代表的圖像文件名稱及縮略圖項的顯示區(qū)域A,加載該圖像文件,繼 續(xù)下面描述的過程,參見圖3,本發(fā)明的在文件瀏覽器窗口中縮略圖列表上響 應(yīng)鼠標(biāo)漸進(jìn)變換打開圖片瀏覽器窗口的流程圖,具體包括得到縮略圖在屏幕 上的顯示區(qū)域A,得到圖像打開后在屏幕上的顯示區(qū)域B,加栽要顯示的圖像 文件,得到屏幕的設(shè)備上下文,緩存屏幕快照的圖像,根據(jù)一定的變換算法將 圖像從顯示區(qū)域A動態(tài)變換到顯示區(qū)域B顯示,利用緩存的屏幕快照恢復(fù)屏幕 顯示,在目標(biāo)顯示區(qū)域B處創(chuàng)建顯示圖像的窗口。
至此得到了縮略圖在屏幕上的顯示區(qū)域A及縮略圖所代表圖像文件的內(nèi) 容,設(shè)縮略圖打開后在屏幕上的顯示區(qū)域為B,根據(jù)設(shè)置,例如B可為全屏或 屏幕大小的3/4大小。下一步的步驟就是將圖像從顯示區(qū)域A使用一定的變換算 法S1逐步推進(jìn)到顯示區(qū)域B。
由于一般的縮略圖窗口不是全屏的,根據(jù)不同的變換算法,圖像在打開逐 步放大的過程中,動態(tài)顯示內(nèi)容可能一部分位于縮略圖窗口之中,參見圖4a, 是本發(fā)明的縮略圖列表的示意圖, 一部分位于縮略圖窗口之外,參見圖4b, 是本發(fā)明的在一個縮略圖上執(zhí)行放大指令后的示意圖。如圖4c所示,是動態(tài) 推進(jìn)過程中的一個中間顯示區(qū)域示意圖。401表示文件瀏覽縮略圖窗口, 402 表示當(dāng)前正在打開的縮略圖,403表示推進(jìn)到大圖過程中的一個顯示區(qū)域,如 果實施煙霧等粒子效果,在402和403之間的區(qū)域也包括了一部分顯示效果內(nèi) 容。從圖中可以看出,403的一部分位于縮略圖窗口 401之內(nèi), 一部分位于401 窗口之外,402和403之間的區(qū)域也有一部分位于401窗口之內(nèi)。由于這種跨 窗口顯示情況的存在,不能筒單的在同一個窗口內(nèi)實施動態(tài)打開效果。下面描 述了 一種在Windows操作系統(tǒng)下解決該問題的方法。 在Windows操作系統(tǒng)下,可利用GetDC系統(tǒng)函數(shù)得到整個屏幕的DC (設(shè)備 上下文),通過屏幕的設(shè)備上下文,可在所有的窗口之上繪制顯示內(nèi)容,即以 屏幕上當(dāng)前的顯示內(nèi)容為背景,在該背景之上實施動態(tài)推進(jìn)效果。當(dāng)圖像顯示 推進(jìn)到目標(biāo)顯示區(qū)域B之后,可通過創(chuàng)建一個無邊框及標(biāo)題欄的窗口,作為圖 像的目標(biāo)顯示窗口。在調(diào)用GetDC系統(tǒng)函數(shù)時,傳入NULL作為參數(shù)即可得到 屏幕的設(shè)備上下文。
下面描述利用 一種直線飛出算法打開圖像文件時從顯示區(qū)域A推進(jìn)到顯 示區(qū)域B的詳細(xì)步驟。
為了便于理解,本處所用變量集中描述如下
dcS:屏幕設(shè)備上下文,作為每步變換效果的輸出目的地;
dcBak:內(nèi)存設(shè)備上下文,包含了屏幕圖像快照;
dcPic:內(nèi)存設(shè)備上下文,包含了要推進(jìn)打開顯示的圖像;
A:縮略圖在屏幕上的顯示區(qū)域,包括top,bottom,left,right四個屬性,表示 在屏幕上的上、下、左、右坐標(biāo);
B:圖像打開后在屏幕上的目標(biāo)顯示區(qū)域,屬性同A。
參見圖5 ,是本發(fā)明的在中間顯示區(qū)域中顯示圖片的流程圖,具體包括 得到縮略圖在屏幕上的顯示區(qū)域A,得到圖像打開后在屏幕上的顯示區(qū)域B, 加載要顯示的圖像文件,得到屏幕的設(shè)備上下文,緩存屏幕快照的圖像,根據(jù) 一定的變換算法將圖像從顯示區(qū)域A動態(tài)變換到顯示區(qū)域B顯示,利用緩存的 屏幕快照恢復(fù)屏幕顯示,在目標(biāo)顯示區(qū)域B處創(chuàng)建顯示圖像的窗口 。
在上面的步驟中,已經(jīng)得到了縮略圖在屏幕上的顯示區(qū)域A,以及縮略圖 所代表圖像文件的內(nèi)容。首先通過GetDC(NULL)系統(tǒng)函數(shù)調(diào)用得到屏幕的設(shè) 備上下文,設(shè)為dcS,在此設(shè)備上下文中包括了調(diào)用此函數(shù)時屏幕上顯示內(nèi)容 的圖像快照。接著創(chuàng)建一個和桌面兼容的內(nèi)存設(shè)備上下文,設(shè)為dcBak,用于 緩存當(dāng)前的屏幕圖像快照,通過BitBlt將dcS中包括的屏幕圖像拷貝到dcBak中。 創(chuàng)建另一個和桌面兼容的內(nèi)存設(shè)備上下文dcPic,將縮略圖所代表圖像文件的 內(nèi)容選擇到dcPic中。
設(shè)圖像從顯示區(qū)域A直線飛出推進(jìn)到顯示區(qū)域B需要的變換次數(shù)為count, 則推進(jìn)過程中第i步圖像的顯示區(qū)域C (跟A類似,同樣包^top,bottom,left,right 四個屬性),以下是一種可選的線性變換方法,可利用如下公式計算得到 C.left=A.left+(B.left-A.left)*i/count C.top=A.top+(B.top-A.top)*i/count C.right=A.right+(B-right-A.right)*i/count C.bottom=A.bottom+(B.bottom-A,bottom)*i/count
在每次循環(huán)中,通過上述公式計算本次循環(huán)圖像顯示的目標(biāo)位置。然后開 始本次循環(huán)的繪制,首先通過BitBlt將dcBak中包含的屏幕圖像快照復(fù)制到屏幕 設(shè)備上下文dcS中,接著通過StretchBlt系統(tǒng)函數(shù)將dcPic中包含的圖像拉伸拷貝 到屏幕設(shè)備上下文dcS的C區(qū)域內(nèi),完成本次循環(huán)的繪制。此處僅僅是改變了 圖像的顯示區(qū)域及大小,可在將dcPic拷貝到dcS的C區(qū)域之前,實施特效處理, 比如改變圖像的亮度或者實施旋轉(zhuǎn)等。
完成循環(huán)繪制之后,通過BitBlt系統(tǒng)函數(shù)將dcBak中包含的屏幕圖像快照復(fù) 制到屏幕設(shè)備上下文dcS中,清除覆蓋在其他窗口之上的過渡顯示內(nèi)容。然后 通過CreateWindowEx創(chuàng)建一個無邊框、無標(biāo)題欄的頂層彈出式窗口 ,將該窗 口定位到屏幕上的B區(qū)域,通過ShowWindow系統(tǒng)函l史顯示該窗口 ,在該窗口 內(nèi)顯示打開的圖像文件,至此完成從縮略圖打開圖像文件的過程。
參見圖6,是本發(fā)明的關(guān)閉圖片瀏覽窗口的方法實施例流程圖,包括縮 略圖和圖片瀏覽窗口,所述縮略圖用于指向保存在存儲器中的圖片文件,所述 圖片窗口用于顯示所述縮略圖指向的圖片文件的圖像;具體包括
步驟601,接收對所述圖片瀏覽窗口的縮小命令,所述縮小命令是在所述 圖片瀏覽器或者所述縮略圖上發(fā)出。
步驟602,縮小所述圖片瀏覽窗口。
步驟603,當(dāng)所述圖片瀏覽窗口縮小到小于預(yù)設(shè)的大小時,以動態(tài)漸變到 所述縮略圖上的模式關(guān)閉所述圖片瀏覽窗口 。
所述的縮小命令可以是預(yù)先定義的,例如,可以是鼠標(biāo)滾輪的滾動命令或 者鍵盤的上下翻頁命令。所述縮小命令可以是在所述圖片瀏覽窗口發(fā)出,控制 圖片瀏覽窗口的大小,也可以是在縮略圖上發(fā)出,由圖2的方法打開圖片瀏覽
窗口后,仍舊可以用所述的放大命令放大所述圖片瀏覽窗口,此時,也可以在 縮略圖上發(fā)出縮小命令,控制圖片瀏覽窗口的縮小,當(dāng)縮小到一定的大小后, 觸發(fā)動態(tài)漸變的關(guān)閉圖片瀏覽窗口的動作。
優(yōu)選的,步驟603可以采用下列步驟實現(xiàn)采用下列步驟實現(xiàn)
獲取圖片瀏覽窗口的顯示區(qū)域。
獲取縮略圖的顯示區(qū)域。
關(guān)閉所述圖片瀏覽窗口。
以圖片瀏覽窗口的顯示區(qū)域為起始顯示區(qū)域,以縮略圖的顯示區(qū)域為結(jié)束
顯示區(qū)域,計算中間顯示區(qū)域。
在中間顯示區(qū)域顯示所述圖片文件經(jīng)過變換處理的圖像。 獲取圖片瀏覽窗口的顯示區(qū)域,圖片瀏覽窗口一般為四邊形,所述的顯示
區(qū)域可以用四邊形的4個頂點的坐標(biāo)來表示,也可以使用四邊形的中心位置的
坐標(biāo)、寬高的邊長和旋轉(zhuǎn)的角度來表示;再獲取縮略圖的顯示區(qū)域,同樣可以 用四邊形的4個頂點的坐標(biāo)來表示;關(guān)閉所述圖片瀏覽窗口 ;以圖片瀏覽窗口的 顯示區(qū)域為起始顯示區(qū)域,以縮略圖的顯示區(qū)域為結(jié)束顯示區(qū)域,計算中間顯 示區(qū)域,計算的方法可以采用線性的插值算法,也可以采用非線性的插值算法, 得到中間狀態(tài)的中間顯示區(qū)域;取得所述縮略圖指向的圖片文件的內(nèi)容,經(jīng)過 變換處理后顯示在中間顯示區(qū)域中,例如,所述的變換處理可以是縮放、旋轉(zhuǎn) 或者顏色變換等,顯示時可以采用顯示全部圖片也可以采用顯示圖片的一部 分;按照所述圖片瀏覽窗口的顯示區(qū)域,顯示圖片瀏覽窗口,圖片窗口中顯示 出所述縮略圖指向的圖片文件的內(nèi)容。
優(yōu)選的,還包括,清除當(dāng)前顯示區(qū)域及其所顯示內(nèi)容,取下一個中間顯示 區(qū)域,重復(fù)顯示所述圖片文件經(jīng)過變換處理的圖像,直至取完所述多個中間顯 示區(qū)域。為了更好的體現(xiàn)平滑過渡的效果,可以計算得到多個中間顯示區(qū)域, 逐個在每個顯示區(qū)域中顯示圖片。
優(yōu)選的,還包括,在圖片瀏覽窗口的顯示區(qū)域和中間顯示區(qū)域間加入特效。 優(yōu)選的,在所述圖片瀏覽窗口的顯示區(qū)域和所述中間顯示區(qū)域之間繪制煙 霧等粒子效果。
優(yōu)選的,所述變換處理是縮放、旋轉(zhuǎn)或者顏色變換等像素級變換處理。
優(yōu)選的,對縮小命令是在所述圖片瀏覽窗口上滾動鼠標(biāo)滾輪或者點擊鼠標(biāo) 按鍵。優(yōu)選的,可以使用鼠標(biāo)的滾輪向某方向滾動做為縮小命令,可以和在圖 片瀏覽窗口中的縮小命令一樣,當(dāng)用戶操作圖片瀏覽窗口縮小到特定的大小 時,將其使用動態(tài)漸變的效果縮小到縮略圖上,使用戶感覺正在查看的圖片逐 步回歸到縮略圖,顯示流暢,提高了用戶的使用體驗。
優(yōu)選的,還包括,所述圖片瀏覽窗口接收鼠標(biāo)滾輪滾動或鼠標(biāo)按4建命令對 顯示的圖像進(jìn)行縮放顯示。
下面描述在圖片瀏覽窗口上響應(yīng)鼠標(biāo)的滾動消息,利用直線飛入算法從大
圖顯示過渡到縮略圖瀏覽模式的步驟。具體包括
大圖顯示窗口中保存有當(dāng)前顯示的圖像文件數(shù)據(jù),以及該圖像文件在縮略 圖中對應(yīng)的縮略圖索引。首先響應(yīng)在該窗口內(nèi)的鼠標(biāo)滾^^消息,如果是滾動放 大操作,繼續(xù)放大圖片的顯示。對于縮小操作,可以預(yù)設(shè)一個最小顯示尺寸的 閾值,在圖片的顯示大小達(dá)到該閾值之前,每次縮小滾動只是縮小當(dāng)前顯示的 大圖,達(dá)到該閾值之后,啟動自動推入顯示,將圖片動態(tài)縮小過渡到縮略圖顯 示。或者用戶通過一定的操作觸發(fā)自動推入顯示,如按下Esc鍵或雙擊鼠標(biāo)右 鍵等。參見圖7,是本發(fā)明的圖片瀏覽窗口漸變到縮略圖的步驟流程圖,具體 包括首先得到當(dāng)前大圖在屏幕上的顯示區(qū)域,設(shè)為A,從大圖窗口對象中得 到圖像對應(yīng)的縮略圖對象索引,得到縮略圖在屏幕上的顯示區(qū)域B。顯示區(qū)域 A和顯示區(qū)域B包括top,bottom,left,right四個屬性,表示在屏幕上的上、下、左、 右坐標(biāo)。接著關(guān)閉或隱藏大圖顯示窗口。通過GetDC(NULL)系統(tǒng)函數(shù)調(diào)用得 到屏幕的設(shè)備上下文,設(shè)為dcS,在此設(shè)備上下文中包括了調(diào)用此函數(shù)時屏幕 上顯示內(nèi)容的圖像快照。創(chuàng)建一個和桌面兼容的內(nèi)存設(shè)備上下文,設(shè)為dcBak, 用于緩存當(dāng)前的屏幕圖像快照,通過BitBlt系統(tǒng)函數(shù)將dcS中包括的屏幕圖像拷 貝到dcBak中。將當(dāng)前顯示的圖像文件選擇到另外一個內(nèi)存設(shè)備上下文dcPic 中。
設(shè)圖像從顯示區(qū)域A直線飛入過渡到縮略圖顯示區(qū)域B需要的變換次數(shù)為 count,則推進(jìn)過程中第i步圖像的顯示區(qū)域C可利用如下公式計算得到 <formula>formula see original document page 21</formula>C.right=A.right+(B.right-A.right)*i/count C.bottom=A.bottom+(B.bottom-A.bottom)*i/count
在每次循環(huán)中,通過上述公式計算本次循環(huán)圖像顯示的目標(biāo)位置。然后開 始本次循環(huán)的繪制,首先通過BitBlt系統(tǒng)函數(shù)將dcBak中包含的屏幕圖像快照復(fù) 制到屏幕設(shè)備上下文dcS中,清除上次循環(huán)顯示的內(nèi)容,接著通過StretchBlt系 統(tǒng)函數(shù)將dcPic中包含的圖像拉伸拷貝到屏幕設(shè)備上下文dcS的C區(qū)域內(nèi),完成本次循環(huán)的繪制。
完成循環(huán)繪制之后,通過BitBlt系統(tǒng)函數(shù)將dcBak中包含的屏幕圖像快照復(fù) 制到屏幕設(shè)備上下文dcS中,清除覆蓋在其他窗口之上的過渡顯示內(nèi)容,至此 完成從縮略圖打開圖像文件的過程。
在推入推出循環(huán)繪制過程中,為了防止屏幕的閃爍,可利用雙緩沖技術(shù), 即創(chuàng)建一個和屏幕大小相同的內(nèi)存圖像緩沖區(qū),首先將dcBak和dcPic中的內(nèi)容 繪制到該內(nèi)存圖像緩沖區(qū)內(nèi),再將該內(nèi)存圖像緩沖區(qū)的內(nèi)容拷貝到屏幕設(shè)備上 下文dcS中。dcBak和dcPic如果直接輸出到屏幕上,每輸出一次,屏幕顯示改 .變一次,容易引起閃爍,將他們先輸出到內(nèi)存緩沖中,然后再一次性的輸出到 屏幕上,就可以避免這種情況。
還可使用其它的拉伸算法替換StretchBlt系統(tǒng)函數(shù),以取得更好的拉伸顯示 效果。當(dāng)圖像進(jìn)行縮放時,需要對圖像像素進(jìn)行插補,不同的插值算法(如雙 線性插值法,雙三次插值法)其拉伸顯示效果質(zhì)量是不一樣的。
優(yōu)選的,在大圖顯示窗口滾動放大、或者到達(dá)自動推入顯示之前的滾動縮 小顯示時,大圖窗口的大小及位置與當(dāng)前圖片的顯示大小及位置保持一致。這 樣,從操作體驗上,用戶感覺不到該窗口的存在,而是覺得在才乘作當(dāng)前顯示的 圖片。
通過本實施例的實施,在WindowsXP的資源管理器下瀏覽圖片時,鼠標(biāo) 在縮略圖上向上滾動,即可以漸進(jìn)飛出方式的打開縮略圖所^^表的文件。在彈 出的大圖顯示上鼠標(biāo)向下滾動,縮小大圖的顯示,當(dāng)縮小到設(shè)置的閾值時,大 圖以漸進(jìn)飛入的方式逐步過渡到縮略圖。鼠標(biāo)在資源管理器空白區(qū)域滾動時, 保持默認(rèn)的列表滾動效果。
下面描述一種在動態(tài)推進(jìn)過程中同時實施旋轉(zhuǎn)變換的方法,達(dá)到如下的效
22
果,打開圖像文件時,圖像從縮略圖位置逐步旋轉(zhuǎn)放大推進(jìn)到大圖顯示,關(guān)閉
圖像文件時,圖像從大圖顯示逐步旋轉(zhuǎn)縮小過渡到縮略圖顯示
主要的實施步驟同上面的實施例,不同之處在于推進(jìn)循環(huán)中顯示之前圖像 的變換。利用上述步驟中描述的公式計算推進(jìn)過程中第i步圖像的臨時顯示區(qū) 域C。此時C并不作為第i步的實際圖像顯示區(qū)域,設(shè)從縮略圖到大圖顯示需 要旋轉(zhuǎn)360度,則第i步推進(jìn)時圖像需要旋轉(zhuǎn)的度數(shù)為i*360/count,首先將圖 像拉伸至C區(qū)域的顯示大小,然后將拉伸后的圖像旋轉(zhuǎn)"360/count度,然后 開始本次循環(huán)的繪制,通過BitBlt將dcBak中包含的屏幕圖像快照復(fù)制到屏幕 設(shè)備上下文dcS中,接著將拉伸旋轉(zhuǎn)后的圖像拷貝到屏幕設(shè)備上下文dcS,完 成本次循環(huán)的繪制。
為了更好的說明本發(fā)明的優(yōu)點,下面描述了本發(fā)明的另一個實施例,在 Windows XP操作系統(tǒng)下創(chuàng)建一個獨立的圖像縮略圖顯示應(yīng)用程序,并實施本 發(fā)明的過程。
本實施例中的應(yīng)用程序位于桌面的頂端,從指定的網(wǎng)站上定時檢測是否有 新增的圖片。當(dāng)檢測到有新增的圖片時,自動下載到客戶計算機(jī)。下載緩存的 圖片以單行縮略圖的形式在桌面頂端循環(huán)滾動顯示,從左到右或者從右到左, 鼠標(biāo)移動到縮略圖上,程序停止?jié)L動顯示。鼠標(biāo)滾輪在某個縮略圖上滾動時, 程序以漸變的效果逐步放大顯示該縮略圖所代表的圖片文件至一圖片瀏覽窗 口,此后,所述圖片瀏覽窗口及與所述縮略圖都能接收進(jìn)一步的放大指令,而 處理結(jié)果是繼續(xù)放大圖片瀏覽窗口;當(dāng)鼠標(biāo)在縮略圖或圖片瀏覽窗口(放大的 大圖)上發(fā)出縮小指令(優(yōu)選為向后滾動鼠標(biāo)滾輪)時,使用漸變的效果逐步 縮小顯示,當(dāng)顯示大小縮小到預(yù)先設(shè)定的閾值時,采用自動漸變效果將大圖逐 步縮小至并定位至相應(yīng)縮略圖的顯示區(qū)域,從大圖查看模式平滑的過渡到縮略 圖瀏覽模式。作為應(yīng)用擴(kuò)展,在不允許同時打開多個圖片進(jìn)行瀏覽的模式下, 在有圖片瀏覽窗口被打開的時候,用戶在任一縮略圖上執(zhí)行縮小操作,都可以 對當(dāng)前圖片瀏覽窗口執(zhí)行縮小操作,在當(dāng)前打開的圖片所對應(yīng)的縮略圖以外的 縮略圖上執(zhí)行放大操作時,可以自動將該新的縮略圖所代表的文件調(diào)入圖片瀏 覽窗口進(jìn)行瀏覽;在允許同時存在多個圖片瀏覽窗口時,在縮略圖上發(fā)出放縮 操作指令只影響與其對應(yīng)的圖片瀏覽窗口的放縮。
在本實施例中,縮略圖的顯示作為一個公知的技術(shù),熟悉本領(lǐng)域的專業(yè)人
員可以很容易的實現(xiàn),例如可采用系統(tǒng)的list-view控件顯示,即類似實施例l 中資源管理器中文件瀏覽窗口,或者使用在程序中自己繪制的方式實現(xiàn)。為了 避免對本實施例的其他說明造成不必要的混淆,縮略圖的繪制在此不再贅述, 本實施例中縮略圖采用程序中自己繪制的方式。
首先為縮略圖窗口添加鼠標(biāo)滾輪消息響應(yīng),判斷當(dāng)前鼠標(biāo)位置下是否存在 縮略圖,使用如下方式判斷如圖8所示,初始化縮略圖索引為-1,得到鼠標(biāo) 的當(dāng)前位置,循環(huán)縮略圖,計算當(dāng)前縮略圖的位置,判斷鼠標(biāo)位置是否位于該 位置內(nèi),如果是,保存當(dāng)前循環(huán)縮略圖的索引,得到當(dāng)前鼠標(biāo)下的縮略圖,否 則繼續(xù)循環(huán)縮略圖。如果循環(huán)后的縮略圖索引等于-1,表示當(dāng)前鼠標(biāo)下沒有縮 略圖,將消息轉(zhuǎn)交給系統(tǒng)處理。否則,根據(jù)縮略圖索引得到縮略圖對象,加載 縮略圖所代表的圖像文件。至此得到了縮略圖在屏幕上的顯示區(qū)域A及縮略 圖所代表圖像文件的內(nèi)容,以漸進(jìn)飛出方式打開縮略圖所代表文件的步驟,以 及文件打開后利用漸進(jìn)飛入算法從大圖顯示過渡到縮略圖瀏覽模式的步驟同 實施例1,在此不再贅述。
參見圖9,是本發(fā)明的打開圖片瀏覽窗口的裝置實施例框圖,具體包括
命令接收單元801,用于接收對縮略圖的選擇命令,所述縮略圖用于指向 保存在存儲器中的圖片文件;
命令處理單元802,用于以動態(tài)漸變模式打開圖片瀏覽窗口,所述圖片窗 口用于顯示所述縮略圖指向的圖片文件的圖像。
優(yōu)選的,命令處理單元802由下列單元組成
圖片瀏覽窗口顯示區(qū)域設(shè)置單元8021,用于設(shè)置圖片瀏覽窗口的顯示區(qū)
域;
縮略圖的顯示區(qū)域獲取單元8022,用于獲取縮略圖的顯示區(qū)域; 中間顯示區(qū)域計算單元8023,用于以縮略圖的顯示區(qū)域為起始顯示區(qū)域,
以圖片瀏覽窗口的顯示區(qū)域為結(jié)束顯示區(qū)域,計算中間顯示區(qū)域;
圖像變換顯示單元8024,用于在中間顯示區(qū)域顯示所述圖片文件經(jīng)過變
換處理的圖像;
圖片瀏覽窗口打開單元8025,用于按照設(shè)置的圖片瀏覽窗口的顯示區(qū)域, 打開圖片瀏覽窗口。
優(yōu)選的,計算得到的中間顯示區(qū)域是多個,命令處理單元802還包括,
重復(fù)顯示單元8026,用于取下一個中間顯示區(qū)域,重復(fù)顯示,直至取完 所有的中間顯示區(qū)域。
優(yōu)選的,命令處理單元802還包括,
特效單元8027,用于在縮略圖的顯示區(qū)域和中間顯示區(qū)域間加入特效。 優(yōu)選的,在所述縮略圖的顯示區(qū)域和所述中間顯示區(qū)域之間繪制煙霧等粒 子效果。
優(yōu)選的,所述變換處理是縮放、旋轉(zhuǎn)或者顏色變換等像素級變換處理。 優(yōu)選的,對縮略圖的放大命令也同時用做所述圖片瀏覽窗口對顯示的圖像 的放大顯示命令。
優(yōu)選的,對縮略圖的放大命令是在所述縮略圖上滾動鼠標(biāo)滾輪或者或者點 擊鼠標(biāo)按鍵。
參見圖IO,是本發(fā)明的關(guān)閉圖片瀏覽窗口的裝置實施例框圖,包括 縮略圖和圖片瀏覽窗口 ,所述縮略圖用于指向保存在存儲器中的圖片文 件,所述圖片窗口用于顯示所述縮略圖指向的圖片文件的圖像; 具體包括
命令接收單元901,用于接收對所述圖片瀏覽窗口的縮小命令,所述縮小 命令是在所述圖片瀏覽器或者所述縮略圖上發(fā)出;
動態(tài)關(guān)閉單元902,用于當(dāng)所述圖片瀏覽窗口縮小到預(yù)設(shè)的大小時,以動 態(tài)漸變到所述縮略圖上的模式關(guān)閉所述圖片瀏覽窗口 。
優(yōu)選的,還包括,
判斷單元903,用于判斷所述圖片瀏覽窗口是否小于預(yù)設(shè)的大小,若是, 調(diào)用動態(tài)關(guān)閉單元902,若否,由所述圖片瀏覽窗口處理所述縮小命令。 優(yōu)選的,所述動態(tài)關(guān)閉單元903由下列單元組成 第一顯示區(qū)域獲取單元9031,用于獲取圖片瀏覽窗口的顯示區(qū)域; 第二顯示區(qū)域獲取單元9032,用于獲取縮略圖的顯示區(qū)域; 關(guān)閉單元9033,用于關(guān)閉所述圖片瀏覽窗口;
中間顯示區(qū)域計算單元9034,用于以圖片瀏覽窗口的顯示區(qū)域為起始顯示 區(qū)域,以縮略圖的顯示區(qū)域為結(jié)束顯示區(qū)域,計算中間顯示區(qū)域;
圖像變換顯示單元9035,用于在中間顯示區(qū)域顯示所述圖片文件的圖像。
優(yōu)選的,計算得到的中間顯示區(qū)域是一個或多個,所述動態(tài)關(guān)閉單元903 還包括,重復(fù)顯示單元9036,用于取下一個中間顯示區(qū)域,重復(fù)顯示所述圖片 文件的圖像,直至取完所有的中間顯示區(qū)域。
優(yōu)選的,所述動態(tài)關(guān)閉單元903還包括,特效單元9037,用于在圖片瀏覽 窗口的顯示區(qū)域和中間顯示區(qū)域間加入特效。
優(yōu)選的,所述特效是在所述圖片瀏覽窗口的顯示區(qū)域和所述中間顯示區(qū)域 之間繪制煙霧等粒子效果。
優(yōu)選的,所述變換處理是縮放、旋轉(zhuǎn)或者顏色變換等像素級變換處理。
優(yōu)選的,對縮小命令是在所述縮略圖或圖片瀏覽窗口上滾動鼠標(biāo)滾輪或鼠 標(biāo)按鍵。
熟悉本領(lǐng)域的專業(yè)人員可以理解的是,通過使用不同的變換算法,可實現(xiàn) 不同的圖像打開和關(guān)閉效果。以上描述僅為本發(fā)明的具體實施個例,并不用以 限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn) 等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。對于放縮指令的類型,本發(fā)明優(yōu)選以 用戶體驗最佳也最能體現(xiàn)本發(fā)明應(yīng)用特點的鼠標(biāo)滾輪消息為例進(jìn)行闡述,但并 不限定放縮指令的發(fā)出方式,比如鼠標(biāo)按4定點擊、鍵盤按鈕按下等都是可選的。
本發(fā)明還可以用于移動設(shè)備或者數(shù)字電視機(jī)頂盒等設(shè)備,由于沒有鼠標(biāo)設(shè) 備,其操作則重點以鍵盤或遙控器進(jìn)行操作。本領(lǐng)域一般技術(shù)人員容易理解,
在其它不同的操作系統(tǒng)或計算機(jī)設(shè)備上實施本發(fā)明方案時,具體代碼可能會有 所區(qū)別,但其核心思想是完全一樣的。
本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進(jìn)行了闡述,以上實施 例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的 一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應(yīng)用范圍上均會有改變 之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
1、一種打開圖片瀏覽窗口的方法,其特征在于,包括接收對縮略圖的放大命令,所述縮略圖用于指向保存在存儲器中的圖片文件;以動態(tài)漸變模式打開圖片瀏覽窗口,所述圖片瀏覽窗口用于顯示所述縮略圖指向的圖片文件的圖像。
2、 根據(jù)權(quán)利要求l所述的方法,其特征在于,以動態(tài)漸變模式打開圖片瀏 覽窗口采用下列步驟實現(xiàn)設(shè)置所述圖片瀏覽窗口的顯示區(qū)域; 獲所述取縮略圖的顯示區(qū)域;以所述縮略圖的顯示區(qū)域為起始顯示區(qū)域,所述圖片瀏覽窗口的顯示區(qū)域 為結(jié)束顯示區(qū)域,計算中間顯示區(qū)域;在所述中間顯示區(qū)域里顯示所述圖片文件經(jīng)過變換處理的圖像; 按照所述圖片瀏覽窗口的顯示區(qū)域,顯示圖片瀏覽窗口 。
3、 根據(jù)權(quán)利要求2所述的方法,其特征在于,計算得到的中間顯示區(qū)域是 多個,在中間顯示區(qū)域里顯示所述圖片文件的圖像之后,顯示圖片瀏覽窗口之 前,還包括,清除當(dāng)前顯示區(qū)域及其所顯示內(nèi)容,取下一個中間顯示區(qū)域,重復(fù)顯示所 述圖片文件經(jīng)過變換處理的圖像,直至取完多個中間顯示區(qū)域。
4、 根據(jù)權(quán)利要求2或3所述的方法,其特征在于,還包括, 在所述縮略圖的顯示區(qū)域和所述中間顯示區(qū)域之間加入特效。
5、 根據(jù)權(quán)利要求2或3所述的方法,其特征在于,所述特效是 在所述縮略圖的顯示區(qū)域和所述中間顯示區(qū)域之間繪制煙霧等粒子效果。
6、 根據(jù)權(quán)利要求2或3所述的方法,其特征在于,所述變換處理是縮放、旋轉(zhuǎn)或者顏色變換等像素級變換處理。
7、 根據(jù)權(quán)利要求l、 2或3所述的方法,其特征在于,對縮略圖的放大命令 也同時用做所述圖片瀏覽窗口對顯示的圖像的放大顯示命令。
8、 根據(jù)權(quán)利要求l、 2或3所述的方法,其特征在于,所述對縮略圖的放大 命令是在所述縮略圖上滾動鼠標(biāo)滾輪或者點擊鼠標(biāo)拾建。
9、 一種關(guān)閉圖片瀏覽窗口的方法,包括,縮略圖和圖片瀏覽窗口 ,所述縮略圖用于指向保存在存儲器中的圖片文 件,所述圖片瀏覽窗口用于顯示所述縮略圖指向的圖片文件的圖像, 其特征在于,包括接收對所述圖片瀏覽窗口的縮小命令,所述縮小命令是在所述圖片瀏覽器 或者所述縮略圖上發(fā)出;以動態(tài)漸變到所述縮略圖上的模式關(guān)閉所述圖片瀏覽窗口 。
10、 根據(jù)權(quán)利要求9所述的方法,其特征在于,以動態(tài)漸變到所述縮略圖 上的模式關(guān)閉所述圖片瀏覽窗口之前,還包括,判斷所述圖片瀏覽窗口是否小 于預(yù)設(shè)的大小,若否,由所述圖片瀏覽窗口處理所述縮小命令,若是,繼續(xù)處 理。
11、 根據(jù)權(quán)利要求10所述的方法,其特征在于,以動態(tài)漸變到所述縮略圖 上的模式關(guān)閉所述圖片瀏覽窗口采用下列步驟實現(xiàn)獲取所述圖片瀏覽窗口的顯示區(qū)域; 獲取所述縮略圖的顯示區(qū)域; 關(guān)閉所述圖片瀏覽窗口;以所述圖片瀏覽窗口的顯示區(qū)域為起始顯示區(qū)域,所述縮略圖的顯示區(qū)域 為結(jié)束顯示區(qū)域,計算中間顯示區(qū)域;在所述中間顯示區(qū)域顯示所述圖片文件經(jīng)過變換處理的圖像。
12、 根據(jù)權(quán)利要求ll所述的方法,其特征在于,計算得到的中間顯示區(qū)域 是多個,在中間顯示區(qū)域顯示所述圖片文件經(jīng)過變換處理的圖像之后,還包括,清除當(dāng)前顯示區(qū)域及其所顯示內(nèi)容,取下一個中間顯示區(qū)域,重復(fù)顯示所 述圖片文件經(jīng)過變換處理的圖像,直至取完所述多個中間顯示區(qū)域。
13、 根據(jù)權(quán)利要求11或12所述的方法,其特征在于,還包括, 在圖片瀏覽窗口的顯示區(qū)域和中間顯示區(qū)域之間加入特效。
14、 根據(jù)權(quán)利要求13所述的方法,其特征在于,所述特效是在所述圖片瀏 覽窗口的顯示區(qū)域和所述中間顯示區(qū)域之間繪制煙霧等粒子效果。
15、 根據(jù)權(quán)利要求11或12所述的方法,其特征在于,所述變換處理是縮放、 旋轉(zhuǎn)或者顏色變換等像素級變換處理。
16、 根據(jù)權(quán)利要求9、 10或11所述的方法,其特征在于,所述縮小命令是 在所述圖片瀏覽窗口或者所述縮略圖上滾動鼠標(biāo)滾輪或者點擊鼠標(biāo)按鍵。
17、 一種打開圖片瀏覽窗口的裝置,其特征在于,包括 命令接收單元,用于接收對縮略圖的選擇命令,所述縮略圖用于指向保存在存儲器中的圖片文件;命令處理單元,用于以動態(tài)漸變模式打開圖片瀏覽窗口,所述圖片瀏覽窗 口用于顯示所述縮略圖指向的圖片文件的圖^f象。
18、 根據(jù)權(quán)利要求17所述的裝置,其特征在于,命令處理單元由下列單元 組成圖片瀏覽窗口顯示區(qū)域設(shè)置單元,用于設(shè)置圖片瀏覽窗口的顯示區(qū)域; 縮略圖的顯示區(qū)域獲取單元,用于獲取縮略圖的顯示區(qū)域; 中間顯示區(qū)域計算單元,用于以縮略圖的顯示區(qū)域為起始顯示區(qū)域,圖片瀏覽窗口的顯示區(qū)域為結(jié)束顯示區(qū)域,計算中間顯示區(qū)域;圖像變換顯示單元,用于在中間顯示區(qū)域顯示所述圖片文件經(jīng)過變換處理的圖像;圖片瀏覽窗口打開單元,用于按照設(shè)置的圖片瀏覽窗口的顯示區(qū)域,顯示 圖片瀏覽窗口。
19、 根據(jù)權(quán)利要求18所述的裝置,其特征在于,計算得到的中間顯示區(qū)域 是一個或多個,所述命令處理單元還包括,重復(fù)顯示單元,用于取下一個中間顯示區(qū)域,重復(fù)顯示所述圖片文件經(jīng)過 變換處理的圖像,直至取完多個中間顯示區(qū)域。
20、 根據(jù)權(quán)利要求18或19所述的裝置,其特征在于,所述命令處理單元還 包括,特效單元,用于在所述縮略圖的顯示區(qū)域和所述中間顯示區(qū)域間加入特效。
21、 根據(jù)權(quán)利要求18或19所述的裝置,其特征在于,所述特效是在所述縮 略圖的顯示區(qū)域和所述中間顯示區(qū)域之間繪制煙霧等粒子效果。
22、 根據(jù)權(quán)利要求18或19所述的裝置,其特征在于,所述變換處理是縮放、 旋轉(zhuǎn)或者顏色變換等像素級變換處理。
23、 根據(jù)權(quán)利要求17、 18或19所述的裝置,其特征在于,對縮略圖的放大 命令也同時用做所述圖片瀏覽窗口對顯示的圖像的放大顯示命令。
24、 根據(jù)權(quán)利要求17、 18或19所述的裝置,其特征在于,對所述縮略圖的 放大命令是在所述縮略圖上滾動鼠標(biāo)滾輪或者點擊鼠標(biāo)按^:。
25、 一種關(guān)閉圖片瀏覽窗口的裝置,包括,縮略圖和圖片瀏覽窗口, 所述縮略圖用于指向保存在存儲器中的圖片文件,所述圖片窗口用于顯示所述縮略圖指向的圖片文件的圖像, 其特征在于,包括命令接收單元,用于接收對所述圖片瀏覽窗口的縮小命令,所述縮小命令 是在所述圖片瀏覽器或者所述縮略圖上發(fā)出;動態(tài)關(guān)閉單元,以動態(tài)漸變到所述縮略圖上的模式關(guān)閉所述圖片瀏覽窗o 。
26、 根據(jù)權(quán)利要求25所述的裝置,其特征在于,還包括,判斷單元,用于判斷所述圖片瀏覽窗口是否小于預(yù)設(shè)的大小,若是,調(diào)用 動態(tài)關(guān)閉單元,若否,由所述圖片瀏覽窗口處理所述縮小命令。
27、 根據(jù)權(quán)利要求26所述的裝置,其特征在于,所述動態(tài)關(guān)閉單元由下列 單元組成第 一顯示區(qū)域獲取單元,用于獲取所述圖片瀏覽窗口的顯示區(qū)域; 第二顯示區(qū)域獲取單元,用于獲取所述縮略圖的顯示區(qū)域; 關(guān)閉單元,用于關(guān)閉所述圖片瀏覽窗口;中間顯示區(qū)域計算單元,用于以圖片瀏覽窗口的顯示區(qū)域為起始顯示區(qū) 域,以縮略圖的顯示區(qū)域為結(jié)束顯示區(qū)域,計算中間顯示區(qū)域;圖像變換顯示單元,用于在中間顯示區(qū)域顯示所述圖片文件經(jīng)過變換處理 的圖像。
28、 根據(jù)權(quán)利要求27所述的裝置,其特征在于,計算得到的中間顯示區(qū)域 是多個,所述動態(tài)關(guān)閉單元還包括,重復(fù)顯示單元,用于清除當(dāng)前顯示區(qū)域及其所顯示內(nèi)容,取下一個中間顯 示區(qū)域,重復(fù)顯示所述圖片文件經(jīng)過變換處理的圖像,直至取完所述多個中間 顯示區(qū)域。
29、 根據(jù)權(quán)利要求25、 26、 27或28所述的裝置,其特征在于,所述動態(tài)關(guān) 閉單元還包括,特效單元,用于在圖片瀏覽窗口的顯示區(qū)域和中間顯示區(qū)域間加入特效。
30、 根據(jù)權(quán)利要求26、 27或28所述的裝置,其特征在于,所述特效是在所 述圖片瀏覽窗口的顯示區(qū)域和所述中間顯示區(qū)域之間繪制煙霧等粒子效果。
31、 根據(jù)權(quán)利要求27或28所述的裝置,其特征在于,所述變換處理是縮放、 旋轉(zhuǎn)或者顏色變換等像素級變換處理。
32、 根據(jù)權(quán)利要求25所述的裝置,其特征在于,所述縮小命令是在所述圖 片瀏覽窗口或者所述縮略圖上滾動鼠標(biāo)滾輪或者點擊鼠標(biāo)按鍵。
全文摘要
本發(fā)明提出了一種打開圖片瀏覽窗口的方法,包括接收對縮略圖的放大命令,所述縮略圖用于指向保存在存儲器中的圖片文件;以動態(tài)漸變模式打開圖片瀏覽窗口,所述圖片瀏覽窗口用于顯示所述縮略圖指向的圖片文件的圖像。本發(fā)明還提出了一種關(guān)閉圖片瀏覽窗口的方法包括接收對所述圖片瀏覽窗口的縮小命令;以動態(tài)漸變到所述縮略圖上的模式關(guān)閉所述圖片瀏覽窗口。本發(fā)明還提供了打開和關(guān)閉圖片瀏覽窗口的裝置。本發(fā)明采用動態(tài)漸變的效果打開和關(guān)閉圖片瀏覽窗口,具有操作流暢、視覺效果好的優(yōu)點,提高了用戶的使用感受。
文檔編號G06F3/048GK101192230SQ20061016264
公開日2008年6月4日 申請日期2006年11月30日 優(yōu)先權(quán)日2006年11月30日
發(fā)明者劉炳林, 勇 程 申請人:重慶優(yōu)騰信息技術(shù)有限公司