本發(fā)明涉及顯示技術(shù)領(lǐng)域,特別涉及一種電子設(shè)備及其內(nèi)容顯示方法、裝置和一種非暫時性機(jī)器可讀存儲介質(zhì)。
背景技術(shù):
目前,市面上的電子產(chǎn)品,尤其是大屏幕的電子產(chǎn)品,例如大屏智能手機(jī)、平板電腦等,絕大多數(shù)都支持豎屏、橫屏、全屏等個性化設(shè)置。
為提高用戶使用體驗(yàn),現(xiàn)有方案中,電子產(chǎn)品被設(shè)定為:針對這些個性化設(shè)置以及設(shè)置的更改,獲取電子產(chǎn)品的顯示屏幕尺寸,基于顯示屏幕尺寸創(chuàng)建新的位圖來排版并渲染需要顯示的內(nèi)容,并向用戶展示。此方案的缺點(diǎn)是,在每次更改這些設(shè)置后,都需要創(chuàng)建新的位圖、銷毀原位圖,如果沒有及時銷毀原位圖,頻繁的操作會帶來內(nèi)存溢出的問題,為用戶體驗(yàn)電子產(chǎn)品帶來不好的體驗(yàn)效果。
因此,仍然需要一種能夠解決上述問題的電子設(shè)備的內(nèi)容顯示方案。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種電子設(shè)備的內(nèi)容顯示方法及裝置,以便于提升位圖的利用率,減少內(nèi)存消耗,提升用戶對電子產(chǎn)品的使用體驗(yàn)。
根據(jù)本發(fā)明的一個方面,提供了一種電子設(shè)備的內(nèi)容顯示方法,電子設(shè)備的顯示屏幕具有兩種顯示模式,即橫屏顯示模式和豎屏顯示模式,該方法可以包括:位圖創(chuàng)建步驟,基于顯示屏幕的尺寸,創(chuàng)建電子設(shè)備渲染頁面所需要的基本位圖,基本位圖對應(yīng)于顯示屏幕的橫屏顯示模式和豎屏顯示模式中的一種;設(shè)置步驟,接收用戶對顯示屏幕的個性化設(shè)置,個性化設(shè)置包括顯示屏幕的顯示模式;排版渲染步驟,響應(yīng)于用戶對顯示屏幕的個性化設(shè)置,在基本位圖上對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖,其中,當(dāng)個性化設(shè)置的顯示模式與基本位圖對應(yīng)的顯示模式不同時,以順時針或逆時針旋轉(zhuǎn)90°的方式對需要顯示的內(nèi)容進(jìn)行排版;展示步驟,在顯示屏幕上展示渲染位圖,其中,當(dāng)個性化設(shè)置的顯示模式與基本位圖的顯示模式不同時,將渲染位圖以與排版渲染步驟中相反的方向旋轉(zhuǎn)90°。
由此,基于顯示屏幕的顯示模式,在基本位圖上對需要顯示的內(nèi)容進(jìn)行排版和渲染,以用戶期望的方式向用戶個性化展示需要顯示的內(nèi)容,提升用戶體驗(yàn)。
優(yōu)選地,排版渲染步驟還可以包括:響應(yīng)于接收到用戶對顯示屏幕新的個性化設(shè)置,擦除先前的渲染位圖上的顯示內(nèi)容,以恢復(fù)基本位圖,以便基于新的個性化設(shè)置,在基本位圖上對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖。
由此,基于用戶對顯示屏幕的個性化設(shè)置,無需創(chuàng)建新的位圖,而在同一基本位圖上進(jìn)行個性化排版和渲染,極大地提升位圖的利用率,以避免不斷的創(chuàng)建位圖和銷毀位圖對電子產(chǎn)品帶來的內(nèi)存溢出的問題。
優(yōu)選地,展示步驟還可以包括:將旋轉(zhuǎn)后的渲染位圖平移到顯示屏幕上適于其顯示的位置。
由此,可以在適當(dāng)?shù)奈恢猛暾叵蛴脩粽故拘枰@示的內(nèi)容,保障用戶的體驗(yàn)效果。
優(yōu)選地,用戶對顯示屏幕的個性化設(shè)置還包括內(nèi)容顯示區(qū)域的尺寸及其相對于顯示屏幕的預(yù)定位置,在排版渲染步驟中,在基本位圖的由內(nèi)容顯示區(qū)域的尺寸限定的部分位圖上,對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖,其中部分位圖經(jīng)過排版和渲染后成為部分渲染位圖。展示步驟還包括:根據(jù)內(nèi)容顯示區(qū)域的尺寸在渲染位圖中截取部分渲染位圖,以在顯示屏幕上預(yù)定位置處展示部分渲染位圖。
由此,可以基于內(nèi)容顯示區(qū)域在顯示屏幕上的比例設(shè)置,以用戶期望的方式展示顯示內(nèi)容。
根據(jù)本發(fā)明的另一方面,還提供了一種電子設(shè)備的內(nèi)容顯示裝置,電子設(shè)備的顯示屏幕具有兩種顯示模式,即橫屏顯示模式和豎屏顯示模式,該裝置可以包括:位圖創(chuàng)建模塊,用于基于顯示屏幕的尺寸,創(chuàng)建電子設(shè)備渲染頁面所需要的基本位圖,基本位圖對應(yīng)于顯示屏幕的橫屏顯示模式和豎屏顯示模式中的一種;設(shè)置模塊,用于接收用戶對顯示屏幕的個性化設(shè)置,個性化設(shè)置包括顯示屏幕的顯示模式;排版渲染模塊,用于響應(yīng)于用戶對顯示屏幕的個性化設(shè)置,在基本位圖上對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖,其中,當(dāng)個性化設(shè)置的顯示模式與基本位圖對應(yīng)的顯示模式不同時,以順時針或逆時針旋轉(zhuǎn)90°的方式對需要顯示的內(nèi)容進(jìn)行排版;展示模塊,用于在顯示屏幕上展示渲染位圖,其中,當(dāng)個性化設(shè)置的顯示模式與基本位圖的顯示模式不同時,將渲染位圖以與排版渲染過程中相反的方向旋轉(zhuǎn)90°。
優(yōu)選地,排版渲染模塊還可以用于:響應(yīng)于接收到用戶對顯示屏幕新的個性化設(shè)置,擦除先前的渲染位圖上的顯示內(nèi)容,以恢復(fù)基本位圖,以便基于新的個性化設(shè)置,在基本位圖上對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖。
優(yōu)選地,展示模塊還可以用于:將旋轉(zhuǎn)后的渲染位圖平移到顯示屏幕上適于其顯示的位置。
優(yōu)選地,用戶對顯示屏幕的個性化設(shè)置還包括內(nèi)容顯示區(qū)域的尺寸及其相對于顯示屏幕的預(yù)定位置,排版渲染模塊在基本位圖的由內(nèi)容顯示區(qū)域的尺寸限定的部分位圖上,對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖,其中部分位圖經(jīng)過排版和渲染后成為部分渲染位圖,展示模塊還用于:根據(jù)內(nèi)容顯示區(qū)域的尺寸在渲染位圖中截取部分渲染位圖,以在顯示屏幕上預(yù)定位置處展示部分渲染位圖。
根據(jù)本發(fā)明的又一方面,還提供了一種電子設(shè)備,包括:顯示屏幕;處理器;以及存儲器,其上存儲有可執(zhí)行代碼,當(dāng)可執(zhí)行代碼被處理器執(zhí)行時,使處理器執(zhí)行上述的電子設(shè)備的內(nèi)容顯示方法。
根據(jù)本發(fā)明的又一方面,還提供了一種非暫時性機(jī)器可讀存儲介質(zhì),其上存儲有可執(zhí)行代碼,當(dāng)可執(zhí)行代碼被電子設(shè)備的處理器執(zhí)行時,使處理器執(zhí)行上述的電子設(shè)備的內(nèi)容顯示方法。
通過本發(fā)明,能夠針對電子設(shè)備的顯示屏幕的顯示模式創(chuàng)建基本位圖,并響應(yīng)于用戶對顯示屏幕的個性化設(shè)置,在基本位圖上對需要顯示的內(nèi)容進(jìn)行排版和渲染,以提升位圖的利用率,以減少內(nèi)存的消耗,提升電子設(shè)備的體驗(yàn)效果。
附圖說明
通過結(jié)合附圖對本公開示例性實(shí)施方式進(jìn)行更詳細(xì)的描述,本公開的上述以及其它目的、特征和優(yōu)勢將變得更加明顯,其中,在本公開示例性實(shí)施方式中,相同的參考標(biāo)號通常代表相同部件。
圖1示出了根據(jù)本發(fā)明一實(shí)施例的電子設(shè)備的示意性框圖。
圖2示出了根據(jù)本發(fā)明一實(shí)施例的內(nèi)容顯示方法的示意性流程圖。
圖3示出了根據(jù)本發(fā)明另一實(shí)施例的內(nèi)容顯示方法的示意性流程圖。
圖4示出了根據(jù)本發(fā)明又一實(shí)施例的內(nèi)容顯示方法的示意性流程圖。
圖5示出了根據(jù)本發(fā)明一實(shí)施例的內(nèi)容顯示裝置的示意性框圖。
圖6示出了根據(jù)本發(fā)明的一個應(yīng)用例。
具體實(shí)施方式
下面將參照附圖更詳細(xì)地描述本公開的優(yōu)選實(shí)施方式。雖然附圖中顯示了本公開的優(yōu)選實(shí)施方式,然而應(yīng)該理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施方式所限制。相反,提供這些實(shí)施方式是為了使本公開更加透徹和完整,并且能夠?qū)⒈竟_的范圍完整地傳達(dá)給本領(lǐng)域的技術(shù)人員。
如前所述,為提升位圖的利用率,并減少內(nèi)存的消耗,提升用戶對電子設(shè)備的體驗(yàn)效果,本發(fā)明提出一種電子設(shè)備及其內(nèi)容顯示方法及裝置。以下將結(jié)合附圖及實(shí)施例詳細(xì)描述本發(fā)明的技術(shù)方案。
圖1示出了根據(jù)本發(fā)明一實(shí)施例的電子設(shè)備的示意性框圖。
如圖1所示,本發(fā)明的電子設(shè)備可以包括顯示屏幕、處理器和存儲器。
顯示屏幕具有尺寸(本文中僅考慮二維尺寸),分別為對應(yīng)于高度的高度尺寸和對應(yīng)于寬度的寬度尺寸,這兩個尺寸的數(shù)值可以相同也可以不同。
根據(jù)尺寸數(shù)值的不同以及向用戶展示的方式不同,顯示屏幕的顯示模式可以包括橫屏顯示模式和豎屏顯示模式。其中,橫屏顯示模式時,高度尺寸的數(shù)值小于寬度尺寸的數(shù)值,豎屏顯示模式時,高度尺寸的數(shù)值大于寬度尺寸的數(shù)值。
有的電子設(shè)備(例如智能手機(jī)、平板電腦等)的顯示屏幕的常規(guī)顯示模式為豎屏顯示模式,有的電子設(shè)備(例如筆記本電腦)的顯示屏幕的常規(guī)顯示模式為橫屏顯示模式,用戶可以根據(jù)需要手動或自動以更改顯示屏幕的顯示模式,電子設(shè)備的處理器可以響應(yīng)于顯示模式的更改,正確地向用戶展示需要顯示的內(nèi)容。
存儲器上可以存儲有可執(zhí)行代碼,處理器可以執(zhí)行該可執(zhí)行代碼。當(dāng)可執(zhí)行代碼被處理器執(zhí)行時,使處理器執(zhí)行根據(jù)本發(fā)明的電子設(shè)備的內(nèi)容顯示方法。
如下將結(jié)合附圖2-4及實(shí)施例詳細(xì)描述本發(fā)明的內(nèi)容顯示方法。
圖2示出了根據(jù)本發(fā)明一實(shí)施例的內(nèi)容顯示方法的示意性流程圖。
如圖2所示,在步驟s210(位圖創(chuàng)建步驟),基于顯示屏幕的尺寸,創(chuàng)建電子設(shè)備渲染頁面所需要的基本位圖,其中,基本位圖對應(yīng)于顯示屏幕的橫屏顯示模式和豎屏顯示模式的一種。
如前所述,電子設(shè)備的顯示屏幕可以具有常規(guī)的顯示模式,例如智能手機(jī)的豎屏顯示、筆記本電腦的橫屏顯示等,常規(guī)的顯示模式對應(yīng)于顯示屏幕的尺寸。
基本位圖可以是根據(jù)顯示屏幕的尺寸創(chuàng)建的,以使基本位圖對應(yīng)于顯示屏幕的常規(guī)顯示模式(顯示屏幕的橫屏顯示模式和豎屏顯示模式中的一種)。
在常規(guī)顯示模式為豎屏顯示時,顯示屏幕的高度尺寸數(shù)值大于寬度尺寸數(shù)值,以顯示屏幕的寬度尺寸作為基本位圖的寬度數(shù)值,以顯示屏幕的高度尺寸作為基本位圖的高度數(shù)值,以使基本位圖對應(yīng)于顯示屏幕的豎屏顯示模式。例如,在顯示屏幕的尺寸為1080*1920(寬度*高度)時,基本位圖的尺寸也為1080*1920。
在常規(guī)顯示模式為橫屏顯示時,顯示屏幕的高度尺寸數(shù)值小于寬度尺寸數(shù)值,以顯示屏幕的寬度尺寸作為基本位圖的寬度數(shù)值,以顯示屏幕的高度尺寸作為基本位圖的高度數(shù)值,以使基本位圖對應(yīng)于顯示屏幕的橫屏顯示模式。例如,在顯示屏幕的尺寸為1920*1080(寬度*高度)時,基本位圖的尺寸也為1920*1080。
由此,基本位圖的尺寸與顯示屏幕的尺寸一致,以使得基本位圖與顯示屏幕相匹配,基本位圖上的內(nèi)容能夠在顯示屏幕上正確、完整地顯示。
在步驟s220(設(shè)置步驟),接收用戶對顯示屏幕的個性化設(shè)置,個性化設(shè)置包括顯示屏幕的顯示模式。
用戶可以是指電子設(shè)備的制造者,也可以是電子設(shè)備的使用者。個性化設(shè)置可以是顯示屏幕的常規(guī)顯示模式,例如,電腦的橫屏顯示、智能手機(jī)的豎屏顯示等等;也可以是用戶更改個性化設(shè)置后的顯示屏幕的顯示模式(與基本位圖對應(yīng)的顯示模式不同的顯示屏幕的顯示模式)。
個性化設(shè)置可以是用戶輸入或選擇的,也可以是電子設(shè)備響應(yīng)于用戶對電子設(shè)備的操作自動確定的,例如,用戶手動旋轉(zhuǎn)電子設(shè)備,電子設(shè)備自動確定顯示屏幕的顯示模式。
在步驟s230(排版渲染步驟),響應(yīng)于用戶對顯示屏幕的個性化設(shè)置,在基本位圖上對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖。
顯示的內(nèi)容可以包括文字、圖像、影像中的一項(xiàng)或多項(xiàng)的組合。
當(dāng)個性化設(shè)置的顯示模式與基本位圖對應(yīng)的顯示模式相同時,例如,基本位圖對應(yīng)的顯示模式為豎屏顯示,個性化設(shè)置的顯示模式也為豎屏顯示。此時,直接在基本位圖上對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖。
當(dāng)個性化設(shè)置的顯示模式與基本位圖對應(yīng)的顯示模式不同時,例如,基本位圖對應(yīng)的顯示模式為豎屏顯示,個性化設(shè)置的顯示模式為橫屏顯示。此時,以順時針或逆時針旋轉(zhuǎn)90°的方式在基本位圖上對需要顯示的內(nèi)容進(jìn)行排版和渲染。
順時針還是逆時針旋轉(zhuǎn)的旋轉(zhuǎn)方向可以是根據(jù)個性化設(shè)置的顯示模式相對于基本位圖的顯示模式的旋轉(zhuǎn)方向確定的。例如,手機(jī)的常規(guī)顯示模式為豎屏顯示,其上下邊緣是確定的,當(dāng)其旋轉(zhuǎn)為橫屏顯示時,有兩種旋轉(zhuǎn)方法,根據(jù)相應(yīng)的旋轉(zhuǎn)方法,確定排版渲染的旋轉(zhuǎn)方向分別對應(yīng)于順時針還是逆時針,以使排版渲染的方向與顯示屏幕的顯示模式相匹配。
在步驟s240(展示步驟),在顯示屏幕上展示渲染位圖。
當(dāng)個性化設(shè)置的顯示模式與基本位圖的顯示模式相同時,直接在顯示屏幕上展示渲染位圖。
當(dāng)個性化設(shè)置的顯示模式與基本位圖的顯示模式不同時,將渲染位圖以與排版渲染步驟中相反的方向旋轉(zhuǎn)90°。例如,當(dāng)排版渲染步驟中的排版渲染方向是順時針旋轉(zhuǎn)90°時,渲染位圖的旋轉(zhuǎn)方向?yàn)槟鏁r針旋轉(zhuǎn)90°;當(dāng)排版渲染步驟中的排版渲染方向是逆時針旋轉(zhuǎn)90°時,渲染位圖的旋轉(zhuǎn)方向?yàn)轫槙r針旋轉(zhuǎn)90°。
由此,以使得渲染位圖上的顯示內(nèi)容能夠以與顯示屏幕的顯示模式相匹配的顯示方式進(jìn)行展示。
應(yīng)當(dāng)理解,上述方法的步驟,特別是步驟s210和步驟s220,其順序可以是不固定的,即也可以先執(zhí)行步驟s220的設(shè)置步驟,再執(zhí)行步驟s210的位圖創(chuàng)建步驟。
另外,考慮到用戶可以多次更改顯示屏幕的個性化設(shè)置,如果電子設(shè)備在每次接收到新的個性化設(shè)置后都重新構(gòu)建位圖、銷毀原位圖,則會帶來內(nèi)存溢出的問題。因此,本公開還提出使位圖能夠被重復(fù)利用的方案,以便于在新的個性化設(shè)置與先前的個性化設(shè)置的顯示模式不相同時,重復(fù)利用基本位圖,以提高位圖的利用率,減少內(nèi)存消耗,提升用戶體驗(yàn)。
圖3示出了根據(jù)本發(fā)明另一實(shí)施例的內(nèi)容顯示方法的示意性流程圖。
如圖3所示,在步驟s310,基于顯示屏幕的尺寸,創(chuàng)建電子設(shè)備渲染頁面所需要的基本位圖,基本位圖對應(yīng)于顯示屏幕的橫屏顯示模式和豎屏顯示模式中的一種。
在步驟s320,接收用戶當(dāng)前對顯示屏幕的個性化設(shè)置,其中,當(dāng)前的個性化設(shè)置包括顯示屏幕的顯示模式,當(dāng)前個性化設(shè)置為新的個性化設(shè)置,與先前的個性化設(shè)置的顯示模式不相同。
在步驟s330,響應(yīng)于當(dāng)前的個性化設(shè)置,判斷基本位圖上是否存在顯示內(nèi)容。
若步驟s330中判斷結(jié)果為是,即基本位圖上存在需要顯示的內(nèi)容,則進(jìn)入步驟s340;若判斷結(jié)果為否,即基本位圖上不存在顯示內(nèi)容,則直接進(jìn)入步驟s350。
在步驟s340,響應(yīng)于當(dāng)前的個性化設(shè)置,擦除先前的渲染位圖上的顯示內(nèi)容,以恢復(fù)基本位圖,以便于重復(fù)利用基本位圖,然后再進(jìn)入步驟s350。
在步驟350,響應(yīng)于當(dāng)前的個性化設(shè)置,在基本位圖上對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖。
這里,當(dāng)前的個性化設(shè)置可以是與基本位圖對應(yīng)的顯示模式不同的顯示模式,也可以是與基本位圖的顯示模式相同的個性化設(shè)置的顯示模式。
當(dāng)前的個性化設(shè)置的顯示模式與基本位圖對應(yīng)的顯示模式相同時,直接在基本位圖上對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖。
當(dāng)前的個性化設(shè)置的顯示模式與基本位圖對應(yīng)的顯示模式不同時,響應(yīng)于當(dāng)前的個性化設(shè)置,以順時針或逆時針旋轉(zhuǎn)90°的方式對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖。
在步驟s360,在顯示屏幕上展示渲染位圖。
當(dāng)前的個性化設(shè)置的顯示模式與基本位圖對應(yīng)的顯示模式相同時,直接在顯示屏幕上展示渲染位圖。
當(dāng)前的個性化設(shè)置的顯示模式與基本位圖對應(yīng)的顯示模式不同時,將渲染位圖以與排版渲染步驟中相反的方向旋轉(zhuǎn)90°,以使渲染位圖對應(yīng)的顯示模式與當(dāng)前個性化設(shè)置的顯示模式相同。
當(dāng)用戶在顯示屏幕上瀏覽渲染位圖及其上的顯示內(nèi)容時,如果對顯示屏幕的個性化設(shè)置進(jìn)行了更改,則還可以返回步驟s320,以針對更改后的新的個性化設(shè)置,重新為用戶渲染位圖。
由此,基于基本位圖,需要顯示的內(nèi)容能夠以與個性化設(shè)置的顯示模式相同的方式進(jìn)行展示,減少內(nèi)存問題,同時提高用戶的體驗(yàn)效果。
另外,如上面參考圖2和圖3所述,在實(shí)際應(yīng)用中,用戶進(jìn)行個性化設(shè)置操作之后,新的個性化設(shè)置的顯示模式可能與先前的個性化設(shè)置的顯示模式相同,也可以不相同,不同的情況可能引起不同的展示結(jié)果。因此在上述的方法流程中,還可以增加判斷步驟,以便于基于新的個性化設(shè)置準(zhǔn)確確定顯示內(nèi)容的展示方式。
圖4示出了根據(jù)本發(fā)明又一實(shí)施例的內(nèi)容顯示方法的示意性流程圖,其中示出了上述判斷步驟。
如圖4所示,分別以與圖3所示的步驟s310和步驟s320相同的方式執(zhí)行在步驟s410的位圖創(chuàng)建步驟和步驟s420的設(shè)置步驟。
在步驟s430中,響應(yīng)于接收到用戶對顯示屏幕的個性化設(shè)置,判斷當(dāng)前的個性化設(shè)置的顯示模式與先前的個性化設(shè)置的顯示模式是否相同。若是,則進(jìn)入步驟s440;若否,則進(jìn)入步驟s450。
在步驟s440,繼續(xù)按原(先前)顯示模式在顯示屏幕上展示需要顯示的內(nèi)容。若當(dāng)前需要顯示的內(nèi)容與原顯示內(nèi)容相同,則可以直接展示原顯示內(nèi)容。若當(dāng)前需要顯示的內(nèi)容與原顯示內(nèi)容不相同,則可以擦除原渲染位圖上的顯示內(nèi)容,再基于原顯示模式在基本位圖上排版渲染當(dāng)前需要顯示的內(nèi)容。
在步驟s450,判斷基本位圖上是否存在顯示內(nèi)容。若是,則進(jìn)入步驟s460,若否,則直接進(jìn)入步驟s470。
在步驟s460,響應(yīng)于接收到用戶對顯示屏幕新的(當(dāng)前的)個性化設(shè)置,擦除先前的渲染位圖上的顯示內(nèi)容,以恢復(fù)基本位圖,然后再進(jìn)入步驟s470。
在步驟s470中,判斷當(dāng)前的個性化設(shè)置的顯示模式與基本位圖對應(yīng)的顯示模式是否相同。若是,則進(jìn)入步驟s480,若否,則進(jìn)入步驟s485。
在步驟s480,直接在基本位圖上進(jìn)行排版和渲染,得到渲染位圖。
在步驟s490,在顯示屏幕上展示渲染位圖。
在步驟s485,基于新的個性化設(shè)置,以順時針或逆時針旋轉(zhuǎn)90°的方式對需要顯示的內(nèi)容進(jìn)行排版和渲染。
在步驟s495,將渲染位圖以與步驟s485中相反的方向旋轉(zhuǎn)90°,并在顯示屏幕上展示渲染位圖。
在步驟s490和步驟s495中,當(dāng)用戶在瀏覽渲染位圖及其上的顯示內(nèi)容的過程中,對個性化設(shè)置做出了更改,則還可以返回步驟s420中,以便于重新接收新的個性化設(shè)置,以對應(yīng)于新的個性化設(shè)置的顯示模式向用戶展示需要顯示的內(nèi)容,以提高位圖的利用率,減少內(nèi)存的消耗。
由于在展示過程中,基于不同的旋轉(zhuǎn)點(diǎn)(例如,渲染位圖的中心位置、渲染位圖的頂角等)旋轉(zhuǎn)得到的渲染位圖的位置不同,渲染位圖的位置與顯示屏幕不匹配,呈現(xiàn)在顯示屏幕上的顯示內(nèi)容可能不完全或不正確。因此,還可以將旋轉(zhuǎn)后的渲染位圖平移到顯示屏幕上適于其顯示的位置,以便于展示。
位圖的內(nèi)容顯示區(qū)域在顯示屏幕上可以是全屏顯示,也可以非全屏顯示。針對不同的顯示狀態(tài)(全屏顯示或非全屏顯示),顯示屏幕上適于渲染位圖顯示的位置不同。
全屏顯示的情況下,可以平移渲染位圖使旋轉(zhuǎn)后渲染位圖的邊緣與顯示屏幕的邊緣相匹配。非全屏顯示的情況下,可以平移渲染位圖使旋轉(zhuǎn)后渲染位圖的顯示內(nèi)容在顯示屏幕的中心位置或指定其它位置展示。其中,渲染位圖可以在于顯示屏幕相同的平面內(nèi)橫向或縱向平移,平移的距離可以基于適于其顯示的位置確定,以確保渲染位圖能夠平移至適于其顯示的位置。
由此,渲染位圖能夠在顯示屏幕的合適位置正確顯示,保障了用戶的體驗(yàn)效果。
如前所述,在顯示屏幕的內(nèi)容顯示區(qū)域處顯示需要顯示的內(nèi)容,內(nèi)容顯示區(qū)域可以在顯示屏幕上全部顯示,也可以部分顯示。因此,用戶對顯示屏幕的個性化設(shè)置還可以包括內(nèi)容顯示區(qū)域的尺寸及其相對于顯示屏幕的預(yù)定位置。
內(nèi)容顯示區(qū)域的尺寸可以是小于或等于顯示屏幕的尺寸(基本位圖的尺寸等于顯示屏幕的常規(guī)尺寸)的預(yù)定尺寸。例如,常規(guī)顯示模式為豎屏顯示的智能手機(jī),假設(shè)其基本位圖的尺寸為1080*1920(寬度*和高度),如果在顯示屏幕上還顯示通知欄,且通知欄的高度是48,則內(nèi)容顯示區(qū)域的寬度為1080,高度為1920-48,即1872。同理,當(dāng)更改為橫屏顯示且存在通知欄時,內(nèi)容顯示區(qū)域的寬度為1920,高度為1080-48,即1032。內(nèi)容顯示區(qū)域的寬度和/或高度均可以小于或等于顯示屏幕的對應(yīng)尺寸。
內(nèi)容顯示區(qū)域相對于顯示屏幕的預(yù)定位置可以是適于展示需要顯示的內(nèi)容的任意位置。例如,內(nèi)容顯示區(qū)域與顯示屏幕的寬度一致,且底部邊緣與顯示屏幕的底部邊緣重疊。用戶可以通過個性化設(shè)置修改內(nèi)容顯示區(qū)域的尺寸及其位置,以滿足用戶的個性化需求。
相應(yīng)地,在設(shè)置步驟(例如步驟s220、步驟s320和步驟s420等)中,接收到的用戶對顯示屏幕的個性化設(shè)置,可以包括內(nèi)容顯示區(qū)域的尺寸及其相對于顯示屏幕的預(yù)定位置。
在排版渲染步驟(例如步驟s230、步驟s350、步驟s480和步驟s485等)中,可以在基本位圖的由內(nèi)容顯示區(qū)域的尺寸限定的部分位圖上,對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖,其中,部分位圖經(jīng)過排版和渲染后成為部分渲染位圖?;蛘撸部梢曰趦?nèi)容顯示區(qū)域的尺寸,采集相應(yīng)的部分位圖數(shù)據(jù),得到能夠在顯示屏幕的預(yù)定位置展示的部分渲染位圖。
在展示步驟(例如步驟s240、步驟s360、步驟s490和步驟s495等)中,在顯示屏幕的預(yù)定位置,例如中心或其它指定位置處展示部分渲染位圖。
至此,結(jié)合圖2-4詳細(xì)描述了本發(fā)明的內(nèi)容顯示方法。上述的內(nèi)容顯示方法可以是由一種內(nèi)容顯示裝置實(shí)現(xiàn)的。
圖5示出了根據(jù)本發(fā)明一實(shí)施例的內(nèi)容顯示裝置的示意性框圖。其中,內(nèi)容顯示裝置500的功能模塊可以由實(shí)現(xiàn)本發(fā)明原理的硬件、軟件或硬件和軟件的結(jié)合來實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員可以理解的是,圖5所描述的功能模塊可以組合起來或者劃分成子模塊,從而實(shí)現(xiàn)上述發(fā)明的原理。因此,本文的描述可以支持對本文描述的功能模塊的任何可能的組合、或者劃分、或者更近一步的限定。
圖5所示的內(nèi)容顯示裝置500可以用來實(shí)現(xiàn)圖2-4所示的內(nèi)容顯示方法,下面僅就內(nèi)容顯示裝置500可以具有的功能模塊以及各功能模塊可以執(zhí)行的操作做簡要說明,對于其中涉及的細(xì)節(jié)部分可以參見上文結(jié)合圖2-4的描述,在此不再贅述。
如圖5所示,本發(fā)明的內(nèi)容顯示裝置500可以包括位圖創(chuàng)建模塊510、設(shè)置模塊520、排版渲染模塊530和展示模塊540。
位圖創(chuàng)建模塊510可以用于基于顯示屏幕的尺寸,創(chuàng)建電子設(shè)備渲染頁面所需要的基本位圖,基本位圖對應(yīng)于顯示屏幕的橫屏顯示模式和豎屏顯示模式中的一種。
設(shè)置模塊520可以用于接收用戶對顯示屏幕的個性化設(shè)置,個性化設(shè)置包括顯示屏幕的顯示模式。
排版渲染模塊530可以用于響應(yīng)于用戶對顯示屏幕的個性化設(shè)置,在基本位圖上對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖,其中,當(dāng)個性化設(shè)置的顯示模式與基本位圖對應(yīng)的顯示模式不同時,以順時針或逆時針旋轉(zhuǎn)90°的方式對需要顯示的內(nèi)容進(jìn)行排版。
展示模塊540可以用于在顯示屏幕上展示渲染位圖,其中,當(dāng)個性化設(shè)置的顯示模式與基本位圖的顯示模式不同時,將渲染位圖以與排版渲染過程中相反的方向旋轉(zhuǎn)90°。
當(dāng)用戶對顯示屏幕的個性化設(shè)置進(jìn)行更改,使當(dāng)前的個性化設(shè)置的顯示模式與先前個性化設(shè)置的顯示模式不同,并且基本位圖上存在顯示內(nèi)容時,排版渲染模塊530還可以響應(yīng)于接收到用戶對顯示屏幕新的個性化設(shè)置,擦除先前的渲染位圖上的顯示內(nèi)容,以恢復(fù)基本位圖,以便基于新的個性化設(shè)置,在基本位圖上對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖。
當(dāng)個性化設(shè)置的顯示模式與基本位圖對應(yīng)的顯示模式不同時,展示模塊540還可以將旋轉(zhuǎn)后的渲染位圖平移到顯示屏幕上適于其顯示的位置。
當(dāng)用戶對顯示屏幕的個性化設(shè)置還包括內(nèi)容顯示區(qū)域的尺寸及其相對于顯示屏幕的預(yù)定位置時,排版渲染模塊530還可以在基本位圖的由內(nèi)容顯示區(qū)域的尺寸限定的部分位圖上,對需要顯示的內(nèi)容進(jìn)行排版和渲染,以得到渲染位圖,部分位圖經(jīng)過排版和渲染后成為部分渲染位圖。展示模塊還可以根據(jù)內(nèi)容顯示區(qū)域的尺寸在渲染位圖上截取部分渲染位圖,以在顯示屏幕上預(yù)定位置處展示部分渲染位圖。
【應(yīng)用例】
以下以智能手機(jī)為例,并結(jié)合圖6簡單說明本發(fā)明的技術(shù)方案。圖6中簡單示出智能手機(jī)的顯示屏幕(忽略手機(jī)邊框)。手機(jī)的常規(guī)顯示模式為豎屏顯示,假設(shè)基本位圖已創(chuàng)建,基本位圖的尺寸與顯示屏幕的尺寸相同(邊緣重疊),并且基本位圖上存在顯示內(nèi)容,其常規(guī)的文字方向如圖6中的610所示。假設(shè)用戶在瀏覽已存在的顯示內(nèi)容時更改個性化設(shè)置-顯示屏幕的顯示模式,并且內(nèi)容顯示區(qū)域的尺寸與顯示屏幕的尺寸(基本位圖的尺寸)相同,具體的內(nèi)容顯示流程如下:
1.用戶在瀏覽顯示內(nèi)容時更改個性化設(shè)置,例如將顯示屏幕的顯示模式更改為逆時針的橫屏顯示。
2.智能手機(jī)的處理器響應(yīng)于接收到的用戶的新的個性化設(shè)置,并判斷新的個性化設(shè)置是否與先前的個性化設(shè)置的顯示模式相同、基本位圖上是否存在顯示內(nèi)容、新的個性化設(shè)置的顯示模式與基本位圖對應(yīng)的顯示模式是否相同等等。
3.在新的個性化設(shè)置與先前的個性化設(shè)置的顯示模式不同并且基本位圖上存在顯示內(nèi)容時,擦除先前渲染位圖上的顯示內(nèi)容。
4.基于新的個性化設(shè)置,以順時針旋轉(zhuǎn)90°的方式更改顯示內(nèi)容的排版方向,并進(jìn)行排版和渲染(如圖6的620所示);
5.基于新的個性化設(shè)置,將基本位圖逆時針旋轉(zhuǎn)90°,并在顯示屏幕上展示給用戶(如圖6的630所示)。
由此,可以響應(yīng)于用戶對顯示屏幕的顯示模式的更改,以用戶期望的方式在基本位圖上重新排版渲染,以展示需要顯示的內(nèi)容,提高位圖的利用率,提升用戶的體驗(yàn)效果。
上文中已經(jīng)參考附圖詳細(xì)描述了根據(jù)本發(fā)明的電子設(shè)備及其內(nèi)容顯示方法、裝置和一種可讀存儲介質(zhì)。
此外,根據(jù)本發(fā)明的方法還可以實(shí)現(xiàn)為一種計算機(jī)程序,該計算機(jī)程序包括用于執(zhí)行本發(fā)明的上述方法中限定的上述各步驟的計算機(jī)程序代碼指令。或者,根據(jù)本發(fā)明的方法還可以實(shí)現(xiàn)為一種計算機(jī)程序產(chǎn)品,該計算機(jī)程序產(chǎn)品包括計算機(jī)可讀介質(zhì),在該計算機(jī)可讀介質(zhì)上存儲有用于執(zhí)行本發(fā)明的上述方法中限定的上述功能的計算機(jī)程序。
或者,本發(fā)明還可以實(shí)施為一種非暫時性機(jī)器可讀存儲介質(zhì),其上存儲有可執(zhí)行代碼,當(dāng)所述可執(zhí)行代碼被電子設(shè)備的處理器執(zhí)行時,使所述處理器執(zhí)行根據(jù)本發(fā)明的上述內(nèi)容顯示方法。
本領(lǐng)域技術(shù)人員還將明白的是,結(jié)合這里的公開所描述的各種示例性邏輯塊、模塊、電路和算法步驟可以被實(shí)現(xiàn)為電子硬件、計算機(jī)軟件或兩者的組合。
附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個實(shí)施例的系統(tǒng)和方法的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)記的功能也可以以不同于附圖中所標(biāo)記的順序發(fā)生。例如,兩個連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實(shí)現(xiàn),或者可以用專用硬件與計算機(jī)指令的組合來實(shí)現(xiàn)。
以上已經(jīng)描述了本發(fā)明的各實(shí)施例,上述說明是示例性的,并非窮盡性的,并且也不限于所披露的各實(shí)施例。在不偏離所說明的各實(shí)施例的范圍和精神的情況下,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說許多修改和變更都是顯而易見的。本文中所用術(shù)語的選擇,旨在最好地解釋各實(shí)施例的原理、實(shí)際應(yīng)用或?qū)κ袌鲋械募夹g(shù)的改進(jìn),或者使本技術(shù)領(lǐng)域的其它普通技術(shù)人員能理解本文披露的各實(shí)施例。