一種瀏覽器中進行頁面縮放的方法和裝置制造方法
【專利摘要】本發明公開了一種瀏覽器中進行頁面縮放的方法和裝置,涉及瀏覽器【技術領域】。所述方法包括:監測到瀏覽器側的縮放操作事件;在當前標簽頁面中創建一展示界面,在其中加載顯示所述當前標簽頁面的縮放比例數據;依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據;依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作。本發明解決了在縮放過程中用戶無法直觀的了解縮放到了何種程度問題,取得了使用戶可以在頁面縮放的過程中直觀的看見具體的縮放比例,可以減少用戶由于無法及時知道縮放比例而進行的多余操作,避免系統資源的浪費的有益效果。
【專利說明】—種瀏覽器中進行頁面縮放的方法和裝置
【技術領域】
[0001]本發明涉及瀏覽器【技術領域】,具體涉及一種瀏覽器中進行頁面縮放的方法和裝置。
【背景技術】
[0002]在現在互聯網技術中,很多信息均可以從互聯網得到,其中一種獲取信息的方式是通過瀏覽器去獲取網頁數據,然后利用內核將網頁數據進行解析、渲染,在瀏覽器的標簽頁中展示給用戶,以供用戶瀏覽。
[0003]但是,瀏覽器的標簽頁因為不同的情景需要及用戶習慣的不同,頁面顯示的內容要呈現不同的大小,傳統技術中,很多瀏覽器對頁面調整的方式包括:
[0004]1、提供一個界面比例選擇界面,讓用戶選擇。如圖1,瀏覽器提供圖中SI的頁面縮放Π(即圖中右下側100%和倒三角所對應的位置),當用戶點擊倒三角,則彈出S2這一提供各種比例的選擇界面(即圖中的50%到400%、自定義、放大、縮小字樣所對應的界面),當用戶點擊某個縮放比例時,瀏覽器則將當前頁面按所述縮放比例進行縮放;
[0005]但是,該種方式對于用戶來說,由于用戶不知道當前場景適合自己的頁面大小是哪一種,那么用戶點擊Si的縮放按鈕,在點擊縮放比例,使當前頁面縮放,如果不合適,用戶需要再次執行上述過程。因此該種方式,對于用戶來說操作繁瑣,浪費效率。
[0006]2、瀏覽器提供縮放快捷鍵,比如“Ctrl”和“ + ”或的組合,當用戶按下組合后,瀏覽器內核直接在后臺執行,對當前頁面進行渲染。
[0007]但是,該種方式,當用戶使用快捷鍵后,瀏覽器內核直接獲取該命令,然后直接對當前頁面進行渲染,用戶也無法確切知道當前的縮放比例是多少,是否達到最適合的縮放比例,因而使用戶可能冗余的點擊快捷鍵,從而浪費時間和系統資源。
【發明內容】
[0008]鑒于上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上述問題的瀏覽器中進行頁面縮放的裝置和相應的瀏覽器中進行頁面縮放的方法。
[0009]依據本發明的一個方面,提供了一種瀏覽器中進行頁面縮放的方法,包括:
[0010]監測到瀏覽器側的縮放操作事件;
[0011]在當前標簽頁面中創建一展示界面,在其中加載顯示所述當前標簽頁面的縮放比例數據;
[0012]依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據;
[0013]依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0014]可選地,所述在當前標簽頁面中創建一展示界面包括:
[0015]在當前標簽頁面上方創建透明的分層窗口。
[0016]可選地,所述依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據包括:
[0017]根據縮放操作事件,計算頁面的縮放比例數據;
[0018]將存儲的對應縮放比例數據的位圖,在所述分層窗口上進行更新。
[0019]可選地,所述將存儲的對應縮放比例數據的位圖,在所述分層窗口上進行更新包括:
[0020]選擇對應所述縮放比例的半透明的位圖;
[0021]通過分層窗口更新函數,控制將該位圖復制到設備描述表,再由設備描述表將所述位圖更新到所述分層窗口指定位置進行展示。
[0022]可選地,所述在當前標簽頁面中創建一展示界面包括:
[0023]在當前標簽頁面上方創建遮罩層;所述遮罩層添加在頁面文檔元素模型樹中最后一個元素位置之后,所述遮罩層置于頂層,所述遮罩層覆蓋的區域包括頁面顯示的區域。
[0024]可選地,所述依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據包括:
[0025]根據縮放操作事件,計算頁面的縮放比例數據;
[0026]將對應所述縮放比例的指示內容寫入所述遮罩層中指定區域進行展示。
[0027]可選地,所述調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作包括:
[0028]根據渲染所述頁面的瀏覽器內核類型,調用相應的頁面縮放接口執行所述縮放操作。
[0029]可選地,所述縮放操作事件至少包括:
[0030]鼠標滾輪操作、和/或鍵盤組合快捷鍵操作。
[0031]可選地,在所述展示界面中展示的是對應所述縮放比例數據的一個數字或者圖片。
[0032]可選地,依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作之前,還包括:
[0033]將所述縮放比例數據對應記錄到當前存在的Tab頁面以及新創建的Tab頁面的顯示數據中,以對各Tab頁面進行縮放操作;
[0034]或者,將所述縮放比例數據對應記錄到所有在進行顯示Tab頁面的顯示數據中,以對各Tab頁面進行縮放操作;
[0035]或者,將所述縮放比例數據進行記錄,以對將要進行加載顯示的Tab頁面進行縮放操作。
[0036]可選地,還包括:
[0037]根據用戶的配置確定進行縮放操作的Tab頁面范圍。
[0038]可選地,依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作包括:
[0039]當進行瀏覽器內核切換時,將當前頁面的縮放比例數據通過IPC通信傳遞給將要進行渲染的第二內核,第二內核調用對應的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0040]可選地,依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作包括:
[0041]針對IE內核的Tab標簽頁,由Tab標簽頁對應的網頁線程調用頁面縮放接口IffebBrowser2:: ExecffB 進行縮放操作;
[0042]針對Chrome內核的Tab標簽頁,依據各個標簽頁ID進行輪詢,由對應標簽頁ID的頁面線程中調用頁面縮放接口 WebKit::WebView::setZoomLevel進行縮放操作。
[0043]可選地,所述依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作包括:
[0044]根據瀏覽器主進程維護的標簽頁清單中的與標簽頁ID對應的網頁線程ID的webcontent對象,將縮放比例數據存入進行縮放操作的Tab頁面范圍內的標簽頁的webcongtent 對象中;
[0045]網頁線程根據webcontent對象中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對頁面進行縮放。
[0046]本發明還公開了一種瀏覽器中進行頁面縮放的裝置,包括:
[0047]縮放操作監控模塊,適于監測到瀏覽器側的縮放操作事件;
[0048]展示創建模塊,適于在當前標簽頁面中創建一展示界面,在其中加載顯示所述當前標簽頁面的縮放比例數據;
[0049]展示更新模塊,適 于依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據;
[0050]頁面縮放模塊,適于依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0051 ] 可選地,所述展示創建模塊包括:
[0052]分層窗口創建模塊,適于在當前標簽頁面上方創建透明的分層窗口。
[0053]可選地,所述展示更新模塊包括:
[0054]第一縮放比例計算模塊,適于根據縮放操作事件,計算頁面的縮放比例數據;
[0055]第一展示更新模塊,適于將存儲的對應縮放比例數據的位圖,在所述分層窗口上進行更新。
[0056]可選地,所述第一展示更新模塊包括:
[0057]位圖選擇模塊,適于選擇對應所述縮放比例的半透明的位圖;
[0058]第二展示更新模塊,適于通過分層窗口更新函數,控制將該位圖復制到設備描述表,再由設備描述表將所述位圖更新到所述分層窗口指定位置進行展示。
[0059]可選地,所述展示創建模塊包括:
[0060]遮罩層創建模塊,適于在當前標簽頁面上方創建遮罩層;所述遮罩層添加在頁面文檔元素模型樹中最后一個元素位置之后,所述遮罩層置于頂層,所述遮罩層覆蓋的區域包括頁面顯示的區域。
[0061]可選地,所述展示更新模塊包括:
[0062]第二縮放比例計算模塊,適于根據縮放操作事件,計算頁面的縮放比例數據;
[0063]第三展示更新模塊,適于將對應所述縮放比例的指示內容寫入所述遮罩層中指定區域進行展示。
[0064]可選地,所述頁面縮放模塊包括:[0065]分類頁面縮放模塊,適于根據渲染所述頁面的瀏覽器內核類型,調用相應的頁面縮放接口執行所述縮放操作。
[0066]可選地,所述縮放操作事件至少包括:
[0067]鼠標滾輪操作、和/或鍵盤組合快捷鍵操作。
[0068]可選地,在所述展示界面中展示的是對應所述縮放比例數據的一個數字或者圖片。
[0069]可選地,所述頁面縮放模塊之前,還包括:
[0070]第一記錄模塊,適于將所述縮放比例數據對應記錄到當前存在的Tab頁面以及新創建的Tab頁面的顯示數據中,以對各Tab頁面進行縮放操作;
[0071]或者,第二記錄模塊,適于將所述縮放比例數據對應記錄到所有在進行顯示Tab頁面的顯示數據中,以對各Tab頁面進行縮放操作;
[0072]或者,第三記錄模塊,適于將所述縮放比例數據進行記錄,以對將要進行加載顯示的Tab頁面進行縮放操作。
[0073]可選地,還包括:
[0074]范圍配置模塊,適于根據用戶的配置確定進行縮放操作的Tab頁面范圍。
[0075]可選地,頁面縮放模塊包括:
[0076]比例數據傳輸模塊,適于當進行瀏覽器內核切換時,將當前頁面的縮放比例數據通過IPC通信傳遞給將要進行渲染的第二內核,第二內核調用對應的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0077]可選地,頁面縮放模塊包括:
[0078]第一頁面縮放模塊,適于針對IE內核的Tab標簽頁,由Tab標簽頁對應的網頁線程調用頁面縮放接口 IWebBrowser2::ExecWB進行縮放操作;
[0079]第二頁面縮放模塊,適于針對Chrome內核的Tab標簽頁,依據各個標簽頁ID進行輪詢,由對應標簽頁ID的頁面線程中調用頁面縮放接口 WebKit::WebView::setZoomLevel進行縮放操作。
[0080]可選地,所述頁面縮放模塊包括:
[0081]比例數據轉存模塊,適于根據瀏覽器主進程維護的標簽頁清單中的與標簽頁ID對應的網頁線程ID的webcontent對象,將縮放比例數據存入進行縮放操作的Tab頁面范圍內的標簽頁的webcongtent對象中;
[0082]第三縮放模塊,適于網頁線程根據webcontent對象中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對頁面進行縮放。
[0083]根據本發明的瀏覽器中進行頁面縮放的方法,本發明監測用戶的縮放操作事件,當監測到縮放操作事件時,在當前標簽頁面中創建一展示界面,在其中加載顯示所述當前標簽頁面的縮放比例數據,而后對于具體的增加或者減小縮放比例數據的縮放操作事件,依據其相應地更新顯示所述展示界面中加載的所述縮放比例數據,解決了在縮放過程中用戶無法直觀的了解縮放到了何種程度問題,取得了使用戶可以在頁面縮放的過程中直觀的看見具體的縮放比例,可以減少用戶由于無法及時知道縮放比例而進行的多余操作,避免系統資源的浪費的有益效果。
[0084]上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發明的上述和其它目的、特征和優點能夠更明顯易懂,以下特舉本發明的【具體實施方式】。
【專利附圖】
【附圖說明】
[0085]通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對于本領域普通技術人員將變得清楚明了。附圖僅用于示出優選實施方式的目的,而并不認為是對本發明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0086]圖1示出了【背景技術】中進行縮放操作的操作示例;
[0087]圖2示出了根據本發明一個實施例的一種瀏覽器中進行頁面縮放的方法的流程示意圖;
[0088]圖3示出了根據本發明一個實施例的優選的一種瀏覽器中進行頁面縮放的方法的流程示意圖;
[0089]圖3A和圖3B示出了根據本發明實施例三的一種縮減操作展示示例;
[0090]圖4示出了根據本發明一個實施例的一種瀏覽器中進行頁面縮放的方法的流程示意圖;
[0091]圖5示出了根據本發明一個實施例的一種瀏覽器內核切換匹配庫數據更新的裝置的結構示意圖;
[0092]圖6示出了根據本發明一個實施例的優選的一種瀏覽器內核切換匹配庫數據更新的裝置的結構示意圖;
[0093]圖7示出了根據本發明一個實施例的一種瀏覽器內核切換匹配庫數據更新的裝置的結構示意圖。
【具體實施方式】
[0094]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍完整的傳達給本領域的技術人員。
[0095]實施例一
[0096]參照圖2,其示出了本發明實施例瀏覽器中進行頁面縮放的方法的流程示意圖,具體可以包括:
[0097]步驟110,監測到瀏覽器側的縮放操作事件;
[0098]在本發明實施例中,當用戶觸發針對瀏覽器Tab頁面的縮放操作事件時,瀏覽器則會監控該縮放操作事件。
[0099]步驟120,在當前標簽頁面中創建一展示界面,在其中加載顯示所述當前標簽頁面的縮放比例數據;
[0100]在監測到用戶觸發的針對瀏覽器Tab頁面的縮放操作事件后,在本發明實施例中,由瀏覽器主進程在當前標簽頁面中創建一展示界面,以在其中加載顯示當前標簽頁面的縮放比例數據。
[0101]在本發明中,展示界面可以有多種,比如在TAB頁面左上角空白處創建一個微縮UI界面,在該Π界面中展示縮放比例數據。或者在當前標簽頁面上方創建透明的分層窗口,在透明的分層窗口中顯示一半透明的縮放比例數據。或者創建一遮罩層,在遮罩層中顯示縮放比例數據。
[0102]步驟130,依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據;
[0103]在前面創建展示界面后,用戶的增加、減小縮放操作事件對應的縮放比例數據均可在所述展示界面進行更新。
[0104]在本發明實施例中,所述縮放操作事件包括鼠標滾輪操作、和/或鍵盤組合快捷鍵操作。如“Ctrl鍵”+ “鼠標滾輪”組合,“Ctrl鍵” + “一鍵”組合,“Ctrl鍵”+ “+鍵”
如A坐坐
-- 口寸寸O
[0105]另外,在本發明實施例中,在所述展示界面中展示的是對應所述縮放比例數據的一個數字或者圖片。
[0106]步驟140,依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0107]在本發明實施例中,本步驟可包括:
[0108]子步驟Α1401,針對IE內核的Tab標簽頁,由Tab標簽頁對應的網頁線程調用頁面縮放接口 IWebBrowser2:: ExecffB進行縮放操作;
[0109]即如果瀏覽器是使用的IE內核,貝U可采用IWebBrowser2::ExecWB接口進行縮放操作,達到改變頁面大小的功能。
[0110]和/或子步驟A1402,針對Chrome內核的Tab標簽頁,依據各個標簽頁ID進行輪詢,由對應標簽頁ID的頁面線程中調用頁面縮放接口 WebKit::WebView::setZoomLevel進行縮放操作。
[0111]即如果瀏覽器是使用的Chrome內核,則可采用WebKit::WebView::setZoomLevel接口進行縮放操作,達到改變頁面大小的功能。
[0112]可選地,所述調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作包括:
[0113]子步驟141,根據渲染所述頁面的瀏覽器內核類型,調用相應的頁面縮放接口執行所述縮放操作。
[0114]在本發明實施例中,瀏覽器可能采用多種內核,比如同時采用ie內核和chrome內核。那么對于采用不同內核渲染的Tab頁面,本發明根據所述頁面的瀏覽器內核類型,調用相應的頁面縮放接口執行所述縮放操作。其調用的各種內核的接口與子步驟A1401、子步驟A1401類似。
[0115]可選地,依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作之前,還包括:
[0116]子步驟A1403,將所述縮放比例數據對應記錄到當前存在的Tab頁面以及新創建的Tab頁面的顯示數據中,以對各Tab頁面進行縮放操作;
[0117]或者,子步驟A1404,將所述縮放比例數據對應記錄到所有在進行顯示Tab頁面的顯示數據中,以對各 Tab頁面進行縮放操作;
[0118]或者,子步驟A1405,將所述縮放比例數據進行記錄,以對將要進行加載顯示的Tab頁面進行縮放操作。
[0119]本發明實施例中,對于用戶的縮放操作,其應用的Tab頁面范圍可以有多種情況:
[0120]其一,是如子步驟A1401所描述,將最終確定的縮放比例數據進行記錄,應用于所有Tab頁面,既對瀏覽器中當前存在的Tab頁面進行相同的縮放,也對用戶新打開的頁面進行相同的縮放;
[0121]其二,是如子步驟A1402所描述,將最終確定的縮放比例數據進行記錄,只針對當前瀏覽器中存在的Tab頁面進行縮放。
[0122]其三,是如子步驟A1402所描述,將最終確定的縮放比例數據進行記錄,除了對當前Tab頁面進行縮放外,還對用戶切換顯示的Tab頁面進行縮放,其他不顯示的頁面不進行縮放。
[0123]可選地,還包括:
[0124]子步驟142,根據用戶的配置確定進行縮放操作的Tab頁面范圍。
[0125]上述各種縮放范圍可由用戶預先進行配置,配置好以后,在本發明對頁面進行縮放時,則會針對的進行縮放操作的Tab頁面范圍內的Tab頁面進行縮放。
[0126]可選地,依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作包括:
[0127]子步驟143,當進行瀏覽器內核切換時,將當前頁面的縮放比例數據通過IPC通信傳遞給將要進行渲染的第二內核,第二內核調用對應的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0128]當本發明存在多個內核時,如果不只對當前的Tab頁面進行縮放,那么如果存在由其他內核渲染的Tab頁面,那么縮放比例數據則需要傳遞給其他內核,即對于其他內核控制的Tab頁面,當瀏覽器切換內核時,將當前頁面的縮放比例數據通過IPC通信((IPC(Inter-Process Communication)進程間通信))傳遞給將要進行渲染的第二內核,第二內核調用對應的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0129]可選地,所述依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作包括:
[0130]子步驟144,根據瀏覽器主進程維護的標簽頁清單中的與標簽頁ID對應的網頁線程ID的webcontent對象,將縮放比例數據存入進行縮放操作的Tab頁面范圍內的標簽頁的webcongtent對象中;
[0131]子步驟145,網頁線程根據webcontent對象中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對頁面進行縮放。
[0132]為了使用戶確定的縮放比例數據傳遞至負責管理Tab頁面的各網頁線程,本發明實施例中瀏覽器主進程會維護一個list清單,該清單中維護了每個對應Tab標簽頁ID的網頁線程ID和其webcontent對象的對應關系,那么當得到縮放數據以后,瀏覽器主進程則根據該list清單的對應關系,將縮放比例數據存入各網頁線程ID的webcontent對象中,然后網頁線程根據webcontent對象中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對頁面進行縮放。
[0133]根據本發明的瀏覽器中進行頁面縮放的方法,本發明監測用戶的縮放操作事件,當監測到縮放操作事件時,在當前標簽頁面中創建一展示界面,在其中加載顯示所述當前標簽頁面的縮放比例數據,而后對于具體的增加或者減小縮放比例數據的縮放操作事件,依據其相應地更新顯示所述展示界面中加載的所述縮放比例數據。解決了在縮放過程中用戶無法直觀的了解縮放到了何種程度問題,取得了使用戶可以在頁面縮放的過程中直觀的看見具體的縮放比例,可以減少用戶由于無法及時知道縮放比例而進行的多余操作,避免系統資源的浪費的有益效果。
[0134]實施例二
[0135]參照圖3,其示出了本發明可選地瀏覽器中進行頁面縮放的方法的流程示意圖,具體可以包括:
[0136]步驟210,監測到瀏覽器側的縮放操作事件;
[0137]步驟220,在當前標簽頁面上方創建透明的分層窗口,在其中加載顯示所述當前標簽頁面的縮放比例數據;
[0138]在本發明實施例中,在當前標簽頁上方創建LayeredWindow,即分層窗口,該分層窗口具有透明的效果,其透明的意義也包括:可毫無影響的看見下一層窗口的內容,鼠標也可穿透分層窗口。
[0139]在本發明實施例中,可通過窗口創建函數CreateWindowEx創建LayeredWindow。CreateffindowEx函數通過擴展格式創建一個層疊的,自動彈出的(pop — up)或是一個子窗口,其函數原型如下:
[0140]HWND CreateffindowEx (
[0141]DWORD dwExStyle,//窗 口的擴展風格
[0142]LPCTSTR lpClassName,//指向注冊類名的指針
[0143]LPCTSTR IpWindowName,//指向窗 口名稱的指針
[0144]DWORD dwStyle,//窗 口風格
[0145]int X,//窗口的水平位置
[0146]int y,//窗口的垂直位置
[0147]int nWidth,//窗口 的寬度
[0148]int nHeight,//窗口 的高度
[0149]HWND hffndParent, // 父窗 口 的句柄
[0150]HMENU hMenu, //菜單的句柄或是子窗口的標識符
[0151]HINSTANCE hlnstance,//應用程序實例的句柄
[0152]LPVOID IpParam//指向窗口的創建數據
[0153]);
[0154]其中,
[0155]dwExStyle:指定窗口的擴展風格。擴展風格有很多種,本發明實施例中為了保證分層窗口具有透明效果,選擇WS_EX_TRANSPARENT風格,改風格的定義為:指定以這個風格創建的窗口在窗口下的同屬窗口已重畫時,該窗口才可以重畫。即可實現本發明分層窗口的透明與鼠標穿透的效果。
[0156]IpClassName:指向注冊類名的指針。
[0157]IpffindowName:指向窗口名稱的指針,本發明實施例中可設為Null。
[0158]dwStyle:指定創建窗口的風格。該參數可以是下列窗口風格的組合再加上說明部分的控制風格。
[0159]χ:指定窗口的初始水平位置。對一個層疊或彈出式窗口,X參數是屏幕坐標系的窗口的左上角的初始X坐標。對于子窗口,X是子窗口左上角相對父窗口客戶區左上角的初始X坐標。如果該參數被設為CW_USEDEFAULT則系統為窗口選擇缺省的左上角坐標并忽略Y參數。CW_USEDEFAULT只對層疊窗口有效,如果為彈出式窗口或子窗口設定,則X和y參數被設為零。
[0160]y:指定窗口的初始垂直位置。對一個層疊或彈出式窗日,y參數是屏幕坐標系的窗口的左上角的初始y坐標。對于子窗口,y是子窗口左上角相對父窗口客戶區左上角的初始y坐標。對于列表框,y是列表框客戶區左上角相對父窗口客戶區左上角的初始y坐標。如果層疊窗口是使用WS_VISIBLE風格位創建的并且X參數被設為CW_USEDEFAULT,則系統將忽略I參數。
[0161]nWidth:以設備單元指明窗口的寬度。
[0162]nHeigth:以設備單元指明窗口的高度。
[0163]hWndParent:指向被創建窗口的父窗口或所有者窗口的句柄。本發明實施例中可設置為NULL。
[0164]hMenu:菜單句柄,或依據窗口風格指明一個子窗口標識。本發明實施例中可設置為 NULL。
[0165]hlnstance:與窗口相關聯的模塊實例的句柄。
[0166]IpParam:指向一個值的指針,該值傳遞給窗口 WM_CREATE消息。
[0167]基于上述介紹,本發明實施例創建分層窗口的大致代碼如下:
[0168]CreateffindowEx(WS_EX_T00LWIND0ff|WS_EX_LAYERED|WS_EX_TRANSPARENT, wc.1pszClassNamej NULL,dwStyle,rect.left,rect.top,rect.right-rect.left,rect.bottom-rect.top, NULL, (HMENU)NULL,—hlnstance,(LPVOID) this);
[0169]參照圖3A,其是本發明實施例創建的分層窗口,顯示當前頁面縮放比例的示例,其中以半透明的100%圖樣顯示當前縮放比例數據。
[0170]步驟230,依據縮放操作事件,相應地更新顯示所述分層窗口中加載的所述縮放比例數據;
[0171]可選地,所述依據縮放操作事件,相應地更新顯示所述分層窗口中加載的所述縮放比例數據包括:
[0172]子步驟231,根據縮放操作事件,計算頁面的縮放比例數據;
[0173]比如當用戶按住Ctrl并滾動鼠標滾輪(或者點擊+鍵或者-鍵),那么就需要根據上述縮放操作事件計算縮放比例數據,比如按住Ctrl點擊一次+鍵,就是放大頁面,比如當前是100%,上述操作一次后,按計算則放大到105%.放大的數值可以設置,比如每點擊一次次+鍵為增加5%等數值。
[0174]子步驟232,將存儲的對應縮放比例數據的位圖,在所述分層窗口上進行更新。
[0175]在本發明中,由于分層窗口本身的屬性,在其上可以顯示位圖,那么本發明可以預先對應縮放比例數據存儲位圖,然后根據計算得到的比例數據選擇相應的位圖在所述分層窗口上進行更新。
[0176]可選地,所述將存儲的對應縮放比例數據的位圖,在所述分層窗口上進行更新包括:
[0177]子步驟2301,選擇對應所述縮放比例的半透明的位圖;
[0178]子步驟2302,通過分層窗口更新函數,控制將該位圖復制到設備描述表,再由設備描述表將所述位圖更新到所述分層窗口指定位置進行展示。
[0179]在本發明實施例中,為了使顯示縮放比例數據時,該縮放比例數據部分也不遮擋頁面內容,可以使用半透明的位圖,加載到分層窗口的指定位置。
[0180]在本發明實施例中,將存儲的對應縮放比例數據的位圖,在所述分層窗口上進行更新采用分層窗口更新函數UpdateLayeredWindow函數執行。UpdateLayeredWindow函數更新一個分層的窗口的位置,大小,形狀,內容和半透明度;其函數形式大致為:
[0181]UpdateLayeredffindow(
[0182]HWND hwnd,
[0183]HDC hdcDst,
[0184]P0INT*pptDst,
[0185]SIZE*psize,
[0186]HDC hdcSrc,
[0187]P0INT*pptSrc,
[0188]C0L0RREF crKey,
[0189]BLENDFUNCTION^pb I end,
[0190]DWORD dwFlags
[0191]);
[0192]其中,
[0193]Hwnd:一個分層的窗口句柄:一個分層的窗口當用CreateWindowEx,
[0194]函數創建窗口時指定WS_EX_LAYERED;
[0195]hdcDst:屏幕的設備上下文(DC)句柄;如果指定為空,那么將會在函數調用時自己獲得。它用于當窗口內容更新時,與調色板顏色去匹配;如果hdcDst指定為Null,將使用默認調色板;如果hdcSrc為NULL, hdcDst必須NULL;
[0196]pptDst: 一個POINT結構的Mt(指定新的分層窗口的屏幕位置);如果位置沒有改變,pptDst可以為NULL; \
[0197]psize:—個尺寸結構的指針(指定分層窗口新的大小);如果不改變窗口大小,psize 可以為 NULL;如果 hdcSrc 為 NULL, psize 必須為 NULL;
[0198]hdcSrc:定義了的分層窗口繪圖表面的DC句柄;這個句柄可以通過CreateCompatibleDC函數獲得;如果窗口的可視范圍和形狀不發生變化,hdcSrc可以為NULL。
[0199]pptSrc:一個POINT結構的指針(指定了分層窗口在設備上下文的位置):如果hdcSrc 為 NULL,pptSrc 應該是 NULL;
[0200]crKey:指向一個C0L0RREF值(當合成分層窗口時使用指定顏色鍵值)。要生成C0L0RREF,使用 RGB 宏;
[0201]pblend:指向一個BLENDFUNCT10N結構(當合成分層窗口時使用指定透明度值)。
[0202] dwFlags:這個參數可以是以下值之一:[0203]ULff_ALPHA使用pblend為混合功能,如果顯示模式為256色或更少,這個值和ULW_0PAQUE效果相同;
[0204]ULW_C0L0RKEY使用crKey值為顏色的透明度
[0205]ULff_0PAQUE繪制一個不透明分層窗口
[0206]如果hdcSrc為NULL,dwFlags應為零;在本發明實施例中,使用的為ULW_ALPHA,以達到位圖為半透明的效果。
[0207]通過UpdateLayeredWindow函數,可以控制將該位圖復制到設備描述表,再由設備描述表將所述位圖更新到所述分層窗口指定位置進行展示。
[0208]在本發明中,子步驟2301和子步驟2302大致可以通過如下代碼執行:
[0209]UpdateLayeredffindow (m_hffnd, NULL, NULL, &back_buf fer_.m_size, temp_dc, &ptSrc, 0, &bf, ULff_ALPHA);
[0210]另外,在本發明實施例中,可選地,所述預先存儲的位圖是一個包含0-9數字的一個png半透明圖片,針對不同的縮放比例數據選擇圖片的不同區域與分層窗口進行ALPHA混合,達到分層窗口中顯示的數字動態變化的記分牌效果。
[0211]參照圖3B,其是本發明實施例創建的分層窗口,經過縮減比例操作后得到的頁面顯示示例,其中比例從100%縮減到90%,本發明則以半透明的90%圖樣顯示當前縮放比例數據。
[0212]步驟240,依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0213]本發明實施例與實施例一類似步驟原理類似,在此不再詳述。
[0214]本發明實施例針對用戶的縮放操作,在當前頁面上方創建一個分層窗口,然后以位圖的形式動態顯示縮放比例數據。解決了在縮放過程中用戶無法直觀的了解縮放到了何種程度問題,取得了使用戶可以在頁面縮放的過程中直觀的看見具體的縮放比例,可以減少用戶由于無法及時知道縮放比例而進行的多余操作,避免系統資源的浪費的有益效果。
[0215]實施例三
[0216]參照圖4,其示出了本發明優選的一種瀏覽器中進行頁面縮放的方法的流程示意圖,具體可以包括:
[0217]步驟310,監測到瀏覽器側的縮放操作事件;
[0218]步驟320,在當前標簽頁面上方創建遮罩層,在其中加載顯示所述當前標簽頁面的縮放比例數據;所述遮罩層添加在頁面文檔元素模型樹中最后一個元素位置之后,所述遮罩層置于頂層,所述遮罩層覆蓋的區域包括頁面顯示的區域。
[0219]本發明實施例可在頁面對應的文檔元素模型樹中,最后一個元素的位置之后,添加遮罩層結構。
[0220]其可在文檔元素模型樹的主干尾端添加對應遮罩層的div,然后在級聯樣式表對應的樣式結構體中設置遮罩層的覆蓋區域為所述頁面顯示的區域。
[0221]然后具體的縮放比例數據或者對應縮放比例數據的圖片可放入遮罩層,以進行顯
/Jn ο
[0222]步驟330,依據縮放操作事件,相應地更新顯示所述遮罩層中加載的所述縮放比例數據;[0223]可選地,所述依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據包括:
[0224]子步驟331,根據縮放操作事件,計算頁面的縮放比例數據;
[0225]子步驟332,將對應所述縮放比例的指示內容寫入所述遮罩層中指定區域進行展
/Jn ο
[0226]在本發明實施例中,可直接將縮放比例數據寫入遮罩層結構中,也可將對應縮放數據的圖片插入遮罩層結構中。當然天可以預先在遮罩層結構中指定一個顯示位置,即規定一個CSS結構,用來放置數據或者圖片。
[0227]步驟340,依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0228]本發明實施例與實施例二與實施例一類似步驟原理類似,在此不再詳述。
[0229]本發明實施例針對用戶的縮放操作,在當前頁面上方創建一個遮罩層,然后以位圖的形式動態顯示縮放比例數據。解決了在縮放過程中用戶無法直觀的了解縮放到了何種程度問題,取得了使用戶可以在頁面縮放的過程中直觀的看見具體的縮放比例,可以減少用戶由于無法及時知道縮放比例而進行的多余操作,避免系統資源的浪費的有益效果。
[0230]實施例四
[0231]參照圖5,其示出了本發明實施例一種瀏覽器內核切換匹配庫數據更新的裝置的結構示意圖,具體可以包括:
[0232]縮放操作監控模塊410,適于監測到瀏覽器側的縮放操作事件;
[0233]展示創建模塊420,適于在當前標簽頁面中創建一展示界面,在其中加載顯示所述當前標簽頁面的縮放比例數據;
[0234]展示更新模塊430,適于依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據;
[0235]頁面縮放模塊440,適于依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0236]可選地,所述展示創建模塊420包括:
[0237]分層窗口創建模塊,適于在當前標簽頁面上方創建透明的分層窗口。
[0238]可選地,所述展示更新模塊430包括:
[0239]第一縮放比例計算模塊,適于根據縮放操作事件,計算頁面的縮放比例數據;
[0240]第一展示更新模塊,適于將存儲的對應縮放比例數據的位圖,在所述分層窗口上進行更新。
[0241]可選地,所述第一展示更新模塊包括:
[0242]位圖選擇模塊,適于選擇對應所述縮放比例的半透明的位圖;
[0243]第二展示更新模塊,適于通過分層窗口更新函數,控制將該位圖復制到設備描述表,再由設備描述表將所述位圖更新到所述分層窗口指定位置進行展示。
[0244]可選地,所述展示創建模塊420包括:
[0245]遮罩層創建模塊,適于在當前標簽頁面上方創建遮罩層;所述遮罩層添加在頁面文檔元素模型樹中最后一個元素位置之后,所述遮罩層置于頂層,所述遮罩層覆蓋的區域包括頁面顯示的區域。[0246]可選地,所述展示更新模塊430包括:
[0247]第二縮放比例計算模塊,適于根據縮放操作事件,計算頁面的縮放比例數據;
[0248]第三展示更新模塊,適于將對應所述縮放比例的指示內容寫入所述遮罩層中指定區域進行展示。
[0249]可選地,所述頁面縮放模塊440包括:
[0250]分類頁面縮放模塊,適于根據渲染所述頁面的瀏覽器內核類型,調用相應的頁面縮放接口執行所述縮放操作。
[0251]可選地,所述縮放操作事件至少包括:
[0252]鼠標滾輪操作、和/或鍵盤組合快捷鍵操作。
[0253]可選地,在所述展示界面中展示的是對應所述縮放比例數據的一個數字或者圖片。
[0254]可選地,所述頁面縮放模塊之前,還包括:
[0255]第一記錄模塊,適于將所述縮放比例數據對應記錄到當前存在的Tab頁面以及新創建的Tab頁面的顯示數據中,以對各Tab頁面進行縮放操作;
[0256]或者,第二記錄 模塊,適于將所述縮放比例數據對應記錄到所有在進行顯示Tab頁面的顯示數據中,以對各Tab頁面進行縮放操作;
[0257]或者,第三記錄模塊,適于將所述縮放比例數據進行記錄,以對將要進行加載顯示的Tab頁面進行縮放操作。
[0258]可選地,還包括:
[0259]范圍配置模塊,適于根據用戶的配置確定進行縮放操作的Tab頁面范圍。
[0260]可選地,頁面縮放模塊440包括:
[0261]比例數據傳輸模塊,適于當進行瀏覽器內核切換時,將當前頁面的縮放比例數據通過IPC通信傳遞給將要進行渲染的第二內核,第二內核調用對應的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0262]可選地,頁面縮放模塊440包括:
[0263]第一頁面縮放模塊,適于針對IE內核的Tab標簽頁,由Tab標簽頁對應的網頁線程調用頁面縮放接口 IWebBrowser2::ExecWB進行縮放操作;
[0264]第二頁面縮放模塊,適于針對Chrome內核的Tab標簽頁,依據各個標簽頁ID進行輪詢,由對應標簽頁ID的頁面線程中調用頁面縮放接口 WebKit::WebView::setZoomLevel進行縮放操作。
[0265]可選地,所述頁面縮放模塊440包括:
[0266]比例數據轉存模塊,適于根據瀏覽器主進程維護的標簽頁清單中的與標簽頁ID對應的網頁線程ID的webcontent對象,將縮放比例數據存入進行縮放操作的Tab頁面范圍內的標簽頁的webcongtent對象中;
[0267]第三縮放模塊,適于網頁線程根據webcontent對象中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對頁面進行縮放。
[0268]實施例五
[0269]參照圖6,其示出了本發明實施例優選的一種瀏覽器內核切換匹配庫數據更新的裝置的結構示意圖,具體可以包括:[0270]縮放操作監控模塊510,適于監測到瀏覽器側的縮放操作事件;
[0271]展示創建模塊520,適于在當前標簽頁面中創建一展示界面,在其中加載顯示所述當前標簽頁面的縮放比例數據;
[0272]所述展示創建模塊520包括:
[0273]分層窗口創建模塊521,適于在當前標簽頁面上方創建透明的分層窗口 ;
[0274]展示更新模塊530,適于依據縮放操作事件,相應地更新顯示所述分層窗口中加載的所述縮放比例數據;
[0275]所述展示更新模塊530包括:
[0276]第一縮放比例計算模塊531,適于根據縮放操作事件,計算頁面的縮放比例數據;
[0277]第一展示更新模塊532,適于將存儲的對應縮放比例數據的位圖,在所述分層窗口上進行更新。
[0278]可選地,所述第一展示更新模塊532包括:
[0279]位圖選擇模塊,適于選擇對應所述縮放比例的半透明的位圖;
[0280]第二展示更新模塊,適于通過分層窗口更新函數,控制將該位圖復制到設備描述表,再由設備描述表將所述位圖更新到所述分層窗口指定位置進行展示。
[0281]頁面縮放模塊540,適于依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0282]實施例六
[0283]參照圖7,其示出了本發明實施例一種瀏覽器內核切換匹配庫數據更新的裝置的結構示意圖,具體可以包括:
[0284]縮放操作監控模塊610,適于監測到瀏覽器側的縮放操作事件;
[0285]展示創建模塊620,適于在當前標簽頁面中創建一展示界面,在其中加載顯示所述當前標簽頁面的縮放比例數據;
[0286]所述展示創建模塊620包括:
[0287]遮罩層創建模塊621,適于在當前標簽頁面上方創建遮罩層;所述遮罩層添加在頁面文檔元素模型樹中最后一個元素位置之后,所述遮罩層置于頂層,所述遮罩層覆蓋的區域包括頁面顯示的區域。
[0288]展示更新模塊630,適于依據縮放操作事件,相應地更新顯示所述遮罩層中加載的所述縮放比例數據;
[0289]所述展示更新模塊630包括:
[0290]第二縮放比例計算模塊631,適于根據縮放操作事件,計算頁面的縮放比例數據;
[0291]第三展示更新模塊632,適于將對應所述縮放比例的指示內容寫入所述遮罩層中指定區域進行展示。
[0292]頁面縮放模塊640,適于依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0293]在此提供的算法和顯示不與任何特定計算機、虛擬系統或者其它設備固有相關。各種通用系統也可以與基于在此的示教一起使用。根據上面的描述,構造這類系統所要求的結構是顯而易見的。此外,本發明也不針對任何特定編程語言。應當明白,可以利用各種編程語言實現在此描述的本發明的內容,并且上面對特定語言所做的描述是為了披露本發明的最佳實施方式。
[0294]在此處所提供的說明書中,說明了大量具體細節。然而,能夠理解,本發明的實施例可以在沒有這些具體細節的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。
[0295]類似地,應當理解,為了精簡本公開并幫助理解各個發明方面中的一個或多個,在上面對本發明的示例性實施例的描述中,本發明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發明要求比在每個權利要求中所明確記載的特征更多的特征。更確切地說,如下面的權利要求書所反映的那樣,發明方面在于少于前面公開的單個實施例的所有特征。因此,遵循【具體實施方式】的權利要求書由此明確地并入該【具體實施方式】,其中每個權利要求本身都作為本發明的單獨實施例。
[0296]本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變并且把它們設置在與該實施例不同的一個或多個設備中。可以把實施例中的模塊或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
[0297]此外,本領域的技術人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發明的范圍之內并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
[0298]本發明的各個部件實施例可以以硬件實現,或者以在一個或者多個處理器上運行的軟件模塊實現,或者以它們的組合實現。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數字信號處理器(DSP)來實現根據本發明實施例的瀏覽器內核切換匹配庫數據更新設備中的一些或者全部部件的一些或者全部功能。本發明還可以實現為用于執行這里所描述的方法的一部分或者全部的設備或者裝置程序(例如,計算機程序和計算機程序產品)。這樣的實現本發明的程序可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
[0299]應該注意的是上述實施例對本發明進行說明而不是對本發明進行限制,并且本領域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中,不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞“包含”不排除存在未列在權利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。[0300]本發明公開了 Al、一種瀏覽器中進行頁面縮放的方法,包括:
[0301]監測到瀏覽器側的縮放操作事件;
[0302]在當前標簽頁面中創建一展示界面,在其中加載顯示所述當前標簽頁面的縮放比例數據;
[0303]依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據;
[0304]依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0305]A2、如Al所述的方法,所述在當前標簽頁面中創建一展示界面包括:
[0306]在當前標簽頁面上方創建透明的分層窗口。
[0307]A3、如A2所述的方法,所述依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據包括:
[0308]根據縮放操作事件,計算頁面的縮放比例數據;
[0309]將存儲的對應縮放比例數據的位圖,在所述分層窗口上進行更新。
[0310]A4、如A3所述的方法,所述將存儲的對應縮放比例數據的位圖,在所述分層窗口上進行更新包括:
[0311]選擇對應所述縮放比例的半透明的位圖;
[0312]通過分層窗口更新函數,控制將該位圖復制到設備描述表,再由設備描述表將所述位圖更新到所述分層窗口指定位置進行展示。
[0313]A5、如Al所述的方法,所述在當前標簽頁面中創建一展示界面包括:
[0314]在當前標簽頁面上方創建遮罩層;所述遮罩層添加在頁面文檔元素模型樹中最后一個元素位置之后,所述遮罩層置于頂層,所述遮罩層覆蓋的區域包括頁面顯示的區域。
[0315]A6、如A5所述的方法,所述依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據包括:
[0316]根據縮放操作事件,計算頁面的縮放比例數據;
[0317]將對應所述縮放比例的指示內容寫入所述遮罩層中指定區域進行展示。
[0318]A7、如A1-A6其中之一所述的方法,所述調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作包括:
[0319]根據渲染所述頁面的瀏覽器內核類型,調用相應的頁面縮放接口執行所述縮放操作。
[0320]A8、如Al所述的方法,所述縮放操作事件至少包括:
[0321]鼠標滾輪操作、和/或鍵盤組合快捷鍵操作。
[0322]A9、如Al所述的方法,在所述展示界面中展示的是對應所述縮放比例數據的一個數字或者圖片。
[0323]A10、如Al所述的方法,依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作之前,還包括:
[0324]將所述縮放比例數據對應記錄到當前存在的Tab頁面以及新創建的Tab頁面的顯示數據中,以對各Tab頁面進行縮放操作;
[0325]或者,將所述縮放比例數據對應記錄到所有在進行顯示Tab頁面的顯示數據中,以對各Tab頁面進行縮放操作;[0326]或者,將所述縮放比例數據進行記錄,以對將要進行加載顯示的Tab頁面進行縮放操作。
[0327]Al 1、如AlO所述的方法,還包括:
[0328]根據用戶的配置確定進行縮放操作的Tab頁面范圍。
[0329]A12、如AlO所述的方法,依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作包括:
[0330]當進行瀏覽器內核切換時,將當前頁面的縮放比例數據通過IPC通信傳遞給將要進行渲染的第二內核,第二內核調用對應的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0331]A13、如Al或AlO所述的方法,依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作包括:
[0332]針對IE內核的Tab標簽頁,由Tab標簽頁對應的網頁線程調用頁面縮放接口IffebBrowser2:: ExecffB 進行縮放操作;
[0333]針對Chrome內核的Tab標簽頁,依據各個標簽頁ID進行輪詢,由對應標簽頁ID的頁面線程中調用頁面縮放接口 WebKit::WebView::setZoomLevel進行縮放操作。
[0334]A14、如A10、A11、A12其中之一所述的方法,所述依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作包括: [0335]根據瀏覽器主進程維護的標簽頁清單中的與標簽頁ID對應的網頁線程ID的webcontent對象,將縮放比例數據存入進行縮放操作的Tab頁面范圍內的標簽頁的webcongtent 對象中;
[0336]網頁線程根據webcontent對象中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對頁面進行縮放。
[0337]本發明還公開了 B15、一種瀏覽器中進行頁面縮放的裝置,包括:
[0338]縮放操作監控模塊,適于監測到瀏覽器側的縮放操作事件;
[0339]展示創建模塊,適于在當前標簽頁面中創建一展示界面,在其中加載顯示所述當前標簽頁面的縮放比例數據;
[0340]展示更新模塊,適于依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據;
[0341]頁面縮放模塊,適于依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0342]B16、如B15所述的裝置,所述展示創建模塊包括:
[0343]分層窗口創建模塊,適于在當前標簽頁面上方創建透明的分層窗口。
[0344]B17、如B16所述的裝置,所述展示更新模塊包括:
[0345]第一縮放比例計算模塊,適于根據縮放操作事件,計算頁面的縮放比例數據;
[0346]第一展示更新模塊,適于將存儲的對應縮放比例數據的位圖,在所述分層窗口上進行更新。
[0347]B18、如B17所述的裝置,所述第一展示更新模塊包括:
[0348]位圖選擇模塊,適于選擇對應所述縮放比例的半透明的位圖;
[0349]第二展示更新模塊,適于通過分層窗口更新函數,控制將該位圖復制到設備描述表,再由設備描述表將所述位圖更新到所述分層窗口指定位置進行展示。
[0350]B19、如B15所述的裝置,所述展示創建模塊包括:
[0351]遮罩層創建模塊,適于在當前標簽頁面上方創建遮罩層;所述遮罩層添加在頁面文檔元素模型樹中最后一個元素位置之后,所述遮罩層置于頂層,所述遮罩層覆蓋的區域包括頁面顯示的區域。
[0352]B20、如B19所述的裝置,所述展示更新模塊包括:
[0353]第二縮放比例計算模塊,適于根據縮放操作事件,計算頁面的縮放比例數據;
[0354]第三展示更新模塊,適于將對應所述縮放比例的指示內容寫入所述遮罩層中指定區域進行展示。
[0355]B21、如B15-B20其中之一所述的裝置,所述頁面縮放模塊包括:
[0356]分類頁面縮放模塊,適于根據渲染所述頁面的瀏覽器內核類型,調用相應的頁面縮放接口執行所述縮放操作。
[0357]B22、如B15所述的裝置,所述縮放操作事件至少包括:
[0358]鼠標滾輪操作、和/或鍵盤組合快捷鍵操作。
[0359]B23、如B15所述的裝置,在所述展示界面中展示的是對應所述縮放比例數據的一個數字或者圖片。
[0360]B24、如B15所述的裝置,所述頁面縮放模塊之前,還包括:
[0361]第一記錄模塊,適于將所述縮放比例數據對應記錄到當前存在的Tab頁面以及新創建的Tab頁面的顯示數據中,以對各Tab頁面進行縮放操作;
[0362]或者,第二記錄模塊,適于將所述縮放比例數據對應記錄到所有在進行顯示Tab頁面的顯示數據中,以對各Tab頁面進行縮放操作;
[0363]或者,第三記錄模塊,適于將所述縮放比例數據進行記錄,以對將要進行加載顯示的Tab頁面進行縮放操作。
[0364]B25、如B24所述的裝置,還包括:
[0365]范圍配置模塊,適于根據用戶的配置確定進行縮放操作的Tab頁面范圍。
[0366]B26、如B24所述的裝置,頁面縮放模塊包括:
[0367]比例數據傳輸模塊,適于當進行瀏覽器內核切換時,將當前頁面的縮放比例數據通過IPC通信傳遞給將要進行渲染的第二內核,第二內核調用對應的頁面縮放接口對所述當前標簽頁面進行縮放操作。
[0368]B27、如B15或B24所述的裝置,頁面縮放模塊包括:
[0369]第一頁面縮放模塊,適于針對IE內核的Tab標簽頁,由Tab標簽頁對應的網頁線程調用頁面縮放接口 IWebBrowser2::ExecWB進行縮放操作;
[0370]第二頁面縮放模塊,適于針對Chrome內核的Tab標簽頁,依據各個標簽頁ID進行輪詢,由對應標簽頁ID的頁面線程中調用頁面縮放接口 WebKit::WebView::setZoomLevel進行縮放操作。
[0371]B28、如B24、B25、B26其中之一所述的裝置,所述頁面縮放模塊包括:
[0372]比例數據轉存模塊,適于根據瀏覽器主進程維護的標簽頁清單中的與標簽頁ID對應的網頁線程ID的webcontent對象,將縮放比例數據存入進行縮放操作的Tab頁面范圍內的標簽頁的webcongtent對象中;[0373] 第三縮放模塊,適于網頁線程根據webcontent對象中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對頁面進行縮放。
【權利要求】
1.一種瀏覽器中進行頁面縮放的方法,包括: 監測到瀏覽器側的縮放操作事件; 在當前標簽頁面中創建一展示界面,在其中加載顯示所述當前標簽頁面的縮放比例數據; 依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據; 依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作。
2.如權利要求1所述的方法,其特征在于,所述在當前標簽頁面中創建一展示界面包括: 在當前標簽頁面上方創建透明的分層窗口。
3.如權利要求2所述的方法,其特征在于,所述依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據包括: 根據縮放操作事件,計算頁面的縮放比例數據; 將存儲的對應縮放比 例數據的位圖,在所述分層窗口上進行更新。
4.如權利要求3所述的方法,其特征在于,所述將存儲的對應縮放比例數據的位圖,在所述分層窗口上進行更新包括: 選擇對應所述縮放比例的半透明的位圖; 通過分層窗口更新函數,控制將該位圖復制到設備描述表,再由設備描述表將所述位圖更新到所述分層窗口指定位置進行展示。
5.如權利要求1所述的方法,其特征在于,所述在當前標簽頁面中創建一展示界面包括: 在當前標簽頁面上方創建遮罩層;所述遮罩層添加在頁面文檔元素模型樹中最后一個元素位置之后,所述遮罩層置于頂層,所述遮罩層覆蓋的區域包括頁面顯示的區域。
6.如權利要求5所述的方法,其特征在于,所述依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據包括: 根據縮放操作事件,計算頁面的縮放比例數據; 將對應所述縮放比例的指示內容寫入所述遮罩層中指定區域進行展示。
7.如權利要求1-6其中之一所述的方法,其特征在于,所述調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行縮放操作包括: 根據渲染所述頁面的瀏覽器內核類型,調用相應的頁面縮放接口執行所述縮放操作。
8.如權利要求1所述的方法,其特征在于,所述縮放操作事件至少包括: 鼠標滾輪操作、和/或鍵盤組合快捷鍵操作。
9.如權利要求1所述的方法,其特征在于,在所述展示界面中展示的是對應所述縮放比例數據的一個數字或者圖片。
10.一種瀏覽器中進行頁面縮放的裝置,包括: 縮放操作監控模塊,適于監測到瀏覽器側的縮放操作事件; 展示創建模塊,適于在當前標簽頁面中創建一展示界面,在其中加載顯示所述當前標簽頁面的縮放比例數據; 展示更新模塊,適于依據縮放操作事件,相應地更新顯示所述展示界面中加載的所述縮放比例數據; 頁面縮放模塊,適于依據所述展示界面中的縮放比例數據,調用瀏覽器內核的頁面縮放接口對所述當前標簽頁面進行 縮放操作。
【文檔編號】G06F3/0484GK103955469SQ201410124020
【公開日】2014年7月30日 申請日期:2014年3月28日 優先權日:2014年3月28日
【發明者】黨壯 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司