一種圖片顯示方法及裝置與流程
2023-10-29 14:40:52 2

本發明涉及圖片處理領域,尤其涉及一種圖片顯示方法及裝置。
背景技術:
隨著計算機技術的發展,智能化教學已經逐漸普及到各個校園中,基於智能化教學,老師可利用各種智能化教學設備,如大屏智能平板等實現教學而不需要再使用粉筆在黑板上寫字,從而提高了教學的效率,也解決了老師吃粉筆灰的問題。
在有些教學情況下,老師希望可以逐漸顯示其教學內容,而非一下子完整顯示出來。例如,美術老師上課時想讓一幅畫一點一點的呈現出來,又比如數學老師想讓解題的步驟一步一步的呈現出來。
現有技術中,雖然利用PPT可以實現逐步顯示,但是PPT的逐步顯示不夠靈活,而且製作難度大,製作所需時間也比較長,使用體驗不佳。
技術實現要素:
針對上述問題,本發明的目的在於提供一種圖片顯示方法及裝置,可根據用戶的操作來逐步進行圖像的顯示。
本發明提供了一種圖片顯示方法,包括如下步驟:
當監聽到滑鼠位於待顯示圖片的隱藏區域內時,獲取所述滑鼠在當前時刻的坐標,並將所述當前時刻的坐標存入預設的點集合;
查詢所述點集合中位於當前時刻之前的上一個時刻的坐標;
根據所述當前時刻的坐標與所述上一個時刻的坐標,生成當前移動路徑;
顯示與所述當前移動路徑對應的像素。
優選地,在當監聽到滑鼠位於待顯示圖片的隱藏區域內時,獲取所述滑鼠在當前時刻的坐標,並將所述當前時刻的坐標存入預設的點集合之前,還包括:
將待顯示圖片的clip屬性設置為一個空的Geometry對象,以隱藏所述待顯示圖片。
優選地,所述當監聽到滑鼠位於待顯示圖片的隱藏區域內時,獲取所述滑鼠在當前時刻的坐標,並將所述當前時刻的坐標存入預設的點集合,具體為:
監聽滑鼠在顯示屏幕坐標系下的第一坐標;
根據所述第一坐標及預置的第二坐標,得到所述滑鼠相對於待顯示圖片的第三坐標;其中,所述第二坐標為所述待顯示圖片的參考點在所述顯示屏幕坐標系下的坐標;
當判斷所述第三坐標位於所述待顯示圖片的隱藏區域內時,將所述第三坐標設置為當前時刻的坐標,並將所述當前時刻的坐標存入預設的點集合中。
優選地,當所述當前時刻的坐標與所述上一個時刻的坐標連續時,根據所述當前時刻的坐標與所述上一個時刻的坐標,生成當前移動路徑。
優選地,所述顯示與所述當前移動路徑對應的像素,具體為:
將所述當前路徑設置給所述待顯示圖片的clip屬性,以顯示與所述當前移動路徑對應的像素。
優選地,在顯示與所述當前移動路徑對應的像素之前,還包括:
將預置的路徑寬度設置給所述當前移動路徑。
本發明還提供一種圖片顯示裝置,包括:
監聽單元,用於當監聽到滑鼠位於待顯示圖片的隱藏區域內時,獲取所述滑鼠在當前時刻的坐標,並將所述當前時刻的坐標存入預設的點集合;
查詢單元,用於查詢所述點集合中位於當前時刻之前的上一個時刻的坐標;
移動路徑生成單元,用於根據所述當前時刻的坐標與所述上一個時刻的坐標,生成當前移動路徑;
顯示單元,用於顯示與所述當前移動路徑對應的像素。
優選地,還包括:
隱藏單元,用於將待顯示圖片的clip屬性設置為一個空的Geometry對象,以隱藏所述待顯示圖片。
優選地,所述監聽單元具體包括:
坐標監聽模塊,用於監聽滑鼠在顯示屏幕坐標系下的第一坐標;
坐標變換模塊,用於根據所述第一坐標及預置的第二坐標,得到所述滑鼠相對於待顯示圖片的第三坐標;其中,所述第二坐標為所述待顯示圖片的參考點在所述顯示屏幕坐標系下的坐標;
保存模塊,用於當判斷所述第三坐標位於所述待顯示圖片的隱藏區域內時,將所述第三坐標設置為當前時刻的坐標,並將所述當前時刻的坐標存入預設的點集合中。
優選地,還包括:
路徑寬度設置單元,用於將預置的路徑寬度設置給所述當前移動路徑。
本發明實施例提供的圖片顯示方法及裝置,可根據用戶移動滑鼠形成的路徑來顯示所述待顯示圖片上的相應的區域,使得用戶可以根據實際的邊移動滑鼠邊顯示圖像,實現了靈活的圖片顯示,整個過程操作實現簡單,操作便捷,滿足了教學或演示中的需求,提升了互動的效果。
附圖說明
為了更清楚地說明本發明的技術方案,下面將對實施方式中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施方式,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1是本發明實施例提供的圖片顯示方法的流程示意圖。
圖2是本發明實施例提供的待顯示圖片部分顯示時的示意圖。
圖3是本發明實施例提供的圖片顯示裝置的結構示意圖。
圖4是圖3的監聽單元的結構示意圖。
具體實施方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。
請參閱圖1,本發明實施例提供了一種圖片顯示方法,其可由圖像顯示裝置來執行,所述圖像顯示裝置可為筆記本、桌上型電腦或其他智能終端。
其中,所述圖片顯示方法至少包括如下步驟:
S101,當監聽到滑鼠位於待顯示圖片的隱藏區域內時,獲取所述滑鼠在當前時刻的坐標,並將所述當前時刻的坐標存入預設的點集合。
在本發明實施例中,首先需要將所述待顯示圖片隱藏起來,即將所述待顯示圖片的所有像素的透明度設置為1(歸一化的透明度),此時所述待顯示圖片呈不可視的隱藏狀態。
其中,可將所述待顯示圖片的clip屬性設置為一個空的Geometry對象。這時,所述待顯示圖片的像素的透明度變成1(即完全透明),從而實現隱藏圖片的效果。
在本發明實施例中,所述圖片顯示裝置會保持監聽用戶通過滑鼠在顯示屏幕上的位置,當監聽到滑鼠位於待顯示圖片的隱藏區域內時,獲取所述滑鼠在當前時刻的坐標,並將所述當前時刻的坐標存入預設的點集合。
需要說明的是,由於所述圖像顯示裝置初始獲取的坐標是滑鼠相對於顯示屏幕的坐標,即在顯示屏幕坐標系下的坐標,因而需要進行坐標系的換算來得到所述滑鼠相對於所述待顯示圖像的坐標。
具體地,所述圖像顯示裝置首先通過系統接口獲取與滑鼠在顯示屏幕坐標系下的第一坐標P1(P1.x,P1.y),然後獲取所述待顯示圖片的參考點(如左上角的點)在所述顯示屏幕坐標系下的第二坐標P2(P2.x,P2.y),接著根據所述第一坐標P1及所述二坐標P2,得到第三坐標P3=(P1.x-P2.x,P1.y-P2.y),即得到所述滑鼠相對於待顯示圖片的第三坐標。最後當判斷所述第三坐標位於所述待顯示圖片的隱藏區域內時,將所述第三坐標設置為當前時刻的坐標,並將所述當前時刻的坐標存入預設的點集合中。
S102,查詢所述點集合中位於當前時刻之前的上一個時刻的坐標。
在本發明實施例中,由步驟S101監聽得到的當前時刻的坐標都會存入到所述點集合中,因而可以在所述點集合中查詢到位於當前時刻之前的上一個時刻的坐標,其中,這個坐標是經過坐標系變換後的坐標。
S103,根據所述當前時刻的坐標與所述上一個時刻的坐標,生成當前移動路徑。
在本發明實施例中,在獲得當前時刻的坐標與所述上一個時刻的坐標後,即可以生成當前移動路徑。
具體地,可通過StreamGeometry來生成當前移動路徑,首先,通過StreamGeometry中的Open方法獲取一個可以繪製路徑的上下文對象StreamGeometryContext,StreamGeometryContext包含兩個方法:BeginFigure和LineTo,BeginFigure就是初始化第一個點應該畫在那裡(上一時刻的坐標),LinkTo是第二點的坐標(當前時刻的坐標),它將第二個點與第一個連接起來從而成為一條線,生成移動路線,再通過StreamGeometryContext中的GetWidenedPathGeometry方法就可以根據所述移動路線生成當前移動路徑。
在本發明實施例中,當用戶不斷移動或滑動滑鼠時,所述圖像顯示裝置就可以不斷生成移動路徑。
需要說明的是,在本發明實施例中,在根據所述當前時刻的坐標與所述上一個時刻的坐標,生成當前移動路徑之前,首先需要判斷所述當前時刻的坐標與所述上一個時刻的坐標是否連續,如果不連續,則不會根據這兩個坐標生成當前移動路徑。其中,連續要求這兩個坐標的x值和y值的差的絕對值不大於預定的參數(如優選的,所述參數可選擇為1)。例如假設所述當前時刻的坐標為(x,y),則當所述上一個時刻的坐標為(x±1,y),(x±1,y±1),(x,y±1)時,則這兩個點連續,否則不連續。其目的是防止用戶在不同的位置點擊時造成的額外顯示的問題。
例如,如圖2所述,假設用戶上一時刻的滑鼠的坐標在A點,然後退出滑動顯示的模式後,移動到B點,並再次進行滑動顯示模式,則這時候不應該根據這兩個點生成當前移動路徑,否則會使得AB之間的區域都顯示出來。
S104,顯示與所述當前移動路徑對應的像素。
在本發明實施例中,所述圖像顯示裝置將所述當前移動路徑設置給所述待顯示圖片的Clip屬性,此時所述待顯示圖片上只會顯示與所述當前移動路徑對應的區域內的像素,其它部分還是保持透明狀態。這樣,就可以根據用戶的操作顯示相應的部分,從而滿足教學或演示中的需求。
例如,美術老師上課時有一幅畫想讓它一點一點的呈現出來,就可以使用本發明實施例,先將整幅畫隱藏,再用滑鼠將首先顯示的區域擦出來,從而實現一點一點呈現的目的。再例如,數學老師想讓解題的步驟一步一步的呈現出來,可以先將整個的解題步驟設置為隱藏,在講課的時候可以講一步擦一步,從而實現一步一步呈現的目的。
綜上所述,本發明實施例提供的圖片顯示方法,可根據用戶移動滑鼠形成的路徑來顯示所述待顯示圖片上的相應的區域,使得用戶可以根據實際需要的邊移動滑鼠邊顯示圖像,實現了靈活的圖片顯示,整個過程操作實現簡單,操作便捷,滿足了教學或演示中的需求,提升了互動的效果。
為了便於對本發明的理解,下面將對本發明的一些優選實施例做更進一步的描述。
上述實施例中,所述移動路徑的線寬為1個像素,這導致用戶可能需要非常多的滑動操作才能顯示自己所要顯示的內容,操作非常不便。
為此,在本優選實施例中,還包括:
將預置的路徑寬度設置給所述當前移動路徑。
如圖2所示,在本優選實施例中,可將滑鼠的形狀設置成類似橡皮擦的形狀,橡皮擦的高度即是預置的路徑寬度,這樣,在顯示的時候,會將當前滑鼠所覆蓋的範圍內的像素都一併顯示,使得每次顯示的像素點的數目較多,從而避免了需要頻繁移動或滑動滑鼠的問題。
此外,所述路徑寬度可由用戶選擇,這樣用戶可根據實際情況選擇需要的路徑寬度,以滿足實際的使用需求。
請參閱圖3,本發明還提供一種圖片顯示裝置100,包括:
監聽單元10,用於當監聽到滑鼠位於待顯示圖片的隱藏區域內時,獲取所述滑鼠在當前時刻的坐標,並將所述當前時刻的坐標存入預設的點集合。
查詢單元20,用於查詢所述點集合中位於當前時刻之前的上一個時刻的坐標。
移動路徑生成單元30,用於根據所述當前時刻的坐標與所述上一個時刻的坐標,生成當前移動路徑。
需要說明的是,在本發明實施例中,所述移動路徑生成單元30在根據所述當前時刻的坐標與所述上一個時刻的坐標,生成當前移動路徑之前,首先需要判斷所述當前時刻的坐標與所述上一個時刻的坐標是否連續,如果不連續,則不會根據這兩個坐標生成當前移動路徑。其中,連續要求這兩個坐標的x值和y值的差的絕對值不大於預定的參數(如優選的,所述參數可選擇為1)。例如假設所述當前時刻的點擊點的坐標為(x,y),則當所述上一個時刻的點擊點的坐標為(x±1,y),(x±1,y±1),(x,y±1)時,則這兩個點連續,否則不連續。其目的是防止用戶在不同的位置點擊時造成的額外顯示的問題。
例如,如圖2所述,假設用戶上一時刻的滑鼠的坐標在A點,然後退出滑動顯示的模式後,移動到B點,並再次進行滑動顯示模式,則這時候不應該根據這兩個點生成當前移動路徑,否則會使得AB之間的區域都顯示出來。
顯示單元40,用於顯示與所述當前移動路徑對應的像素。
在本發明實施例中,所述顯示單元40將所述當前移動路徑設置給所述待顯示圖片的Clip屬性,此時所述待顯示圖片上只會顯示與所述當前移動路徑對應的區域內的像素,其它部分還是保持透明狀態。這樣,就可以根據用戶的操作顯示相應的部分,從而滿足教學或演示中的需求。
綜上所述,本發明實施例提供的圖片顯示裝置100,可根據用戶移動滑鼠形成的路徑來顯示所述待顯示圖片上的相應的區域,使得用戶可以根據實際需要的邊移動滑鼠邊顯示圖像,實現了靈活的圖像顯示,整個過程操作實現簡單,操作便捷,滿足了教學或演示中的需求,提升了互動的效果。
其中,優選地,還包括:
隱藏單元50,用於將待顯示圖片的clip屬性設置為一個空的Geometry對象,以隱藏所述待顯示圖片。
在本發明實施例中,首先需要將所述待顯示圖片隱藏起來,即將所述待顯示圖片的所有像素的透明度設置為1(歸一化的透明度),此時所述待顯示圖片呈不可視的隱藏狀態。
其中,可將所述待顯示圖片的Clip屬性設置為一個空的Geometry對象。這時,所述待顯示圖片的像素的透明度變成1(即完全透明),從而實現隱藏圖片的效果。
請參閱圖4,其中,優選地,所述監聽單元10具體包括:
坐標監聽模塊11,用於監聽滑鼠在顯示屏幕坐標系下的第一坐標。
坐標變換模塊12,用於根據所述第一坐標及預置的第二坐標,得到所述滑鼠相對於待顯示圖片的第三坐標;其中,所述第二坐標為所述待顯示圖片的參考點在所述顯示屏幕坐標系下的坐標。
保存模塊13,用於當判斷所述第三坐標位於所述待顯示圖片的隱藏區域內時,將所述第三坐標設置為當前時刻的坐標,並將所述當前時刻的坐標存入預設的點集合中。
優選地,還包括:
路徑寬度設置單元50,用於將預置的路徑寬度設置給所述當前移動路徑。
如圖2所示,在本優選實施例中,可將滑鼠的形狀設置成類似橡皮擦的形狀,橡皮擦的高度即是預置的路徑寬度,這樣,在顯示的時候,會將當前滑鼠所覆蓋的範圍內的像素都一併顯示,使得每次顯示的像素點的數目較多,從而避免了需要頻繁移動或滑動滑鼠的問題。
此外,所述路徑寬度可由用戶選擇,這樣用戶可根據實際情況選擇需要的路徑寬度,以滿足實際的使用需求。
以上所揭露的僅為本發明一種較佳實施例而已,當然不能以此來限定本發明之權利範圍,本領域普通技術人員可以理解實現上述實施例的全部或部分流程,並依本發明權利要求所作的等同變化,仍屬於發明所涵蓋的範圍。
本領域普通技術人員可以理解實現上述實施例方法中的全部或部分流程,是可以通過電腦程式來指令相關的硬體來完成,所述的程序可存儲於一計算機可讀取存儲介質中,該程序在執行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質可為磁碟、光碟、只讀存儲記憶體(Read-Only Memory,ROM)或隨機存儲記憶體(Random Access Memory,RAM)等。