網(wǎng)頁圖片的加載方法和裝置的制造方法
【技術領域】
[0001]本公開涉及網(wǎng)頁技術領域,尤其涉及一種網(wǎng)頁圖片的加載方法和裝置。
【背景技術】
[0002]隨著互聯(lián)網(wǎng)技術與移動終端的發(fā)展,越來越多的用戶使用智能手機、平板電腦等移動終端來訪問互聯(lián)網(wǎng)。在用戶使用移動終端瀏覽網(wǎng)頁時,如果網(wǎng)頁中包含有圖片,瀏覽器往往要對圖片進行重新繪制。如何在繪制過程中提升渲染性能,節(jié)省CPU的計算資源已成為亟待解決的問題。
【發(fā)明內(nèi)容】
[0003]為克服相關技術中存在的問題,本公開提供一種網(wǎng)頁圖片的加載方法和裝置。
[0004]根據(jù)本公開實施例的第一方面,提供一種網(wǎng)頁圖片的加載方法,包括:
[0005]分別為網(wǎng)頁文件中的每張動態(tài)圖片生成與所述動態(tài)圖片對應的RenderLayer ;
[0006]為所述RenderLayer 生成對應的 GraphicsLayer ;
[0007]根據(jù)所述GraphicsLayer繪制所述動態(tài)圖片。
[0008]可選的,所述分別為網(wǎng)頁文件中的每張動態(tài)圖片生成與所述動態(tài)圖片對應的RenderLayer,包括:
[0009]根據(jù)所述網(wǎng)頁文件生成Render樹;
[0010]在所述Render樹中識別所述網(wǎng)頁文件中的動態(tài)圖片;
[0011]分別為所述動態(tài)圖片生成對應的RenderLayer。
[0012]可選的,所述在所述Render樹中識別所述網(wǎng)頁文件中的動態(tài)圖片,包括:
[0013]判斷所述Render樹中RenderImage節(jié)點包含的圖片數(shù)量是否大于I ;
[0014]判斷所述Render樹中RenderImage節(jié)點的幀頻是否大于O ;
[0015]如果所述Render樹中RenderImage節(jié)點包含的圖片數(shù)量大于1,且所述RenderImage節(jié)點的幀頻大于0,則確認所述RenderImage節(jié)點為動態(tài)圖片的RenderImage節(jié)點。
[0016]可選的,所述在所述Render樹中識別所述網(wǎng)頁文件中的動態(tài)圖片,包括:
[0017]判斷所述Render樹中RenderImage節(jié)點的路徑中是否包括字符gif ;
[0018]如果所述Render樹中RenderImage節(jié)點的路徑中包括字符gif,則判斷所述RenderImage節(jié)點包含的圖片數(shù)量是否大于1,判斷所述Render樹中RenderImage節(jié)點的幀頻是否大于O ;
[0019]如果所述Render樹中RenderImage節(jié)點包含的圖片數(shù)量大于1,且所述RenderImage節(jié)點的幀頻大于0,則確認所述RenderImage節(jié)點為動態(tài)圖片的RenderImage節(jié)點。
[0020]可選的,所述根據(jù)所述GraphicsLayer繪制所述動態(tài)圖片,包括:
[0021 ] 根據(jù)所述GraphicsLayer,在與所述動態(tài)圖片大小相同的區(qū)域內(nèi)繪制所述動態(tài)圖片。
[0022]根據(jù)本公開實施例的第二方面,提供一種網(wǎng)頁圖片的加載裝置,包括:
[0023]第一生成單元,用于分別為網(wǎng)頁文件中的每張動態(tài)圖片生成與所述動態(tài)圖片對應的 RenderLayer ;
[0024]第二生成單元,用于為所述RenderLayer生成對應的GraphicsLayer ;
[0025]圖片繪制單元,用于根據(jù)所述GraphicsLayer繪制所述動態(tài)圖片。
[0026]可選的,所述第一生成單元包括:
[0027]第一生成子單元,用于根據(jù)所述網(wǎng)頁文件生成Render樹;
[0028]動態(tài)識別子單元,用于在所述Render樹中識別所述網(wǎng)頁文件中的動態(tài)圖片;
[0029]第二生成子單元,用于為所述動態(tài)圖片生成對應的RenderLayer。
[0030]可選的,所述動態(tài)識別子單元包括:
[0031]第一判斷模塊,用于判斷所述Render樹中RenderImage節(jié)點包含的圖片數(shù)量是否大于I ;
[0032]第二判斷模塊,用于判斷所述Render樹中RenderImage節(jié)點的幀頻是否大于O ;
[0033]第一確認模塊,用于在所述Render樹中RenderImage節(jié)點包含的圖片數(shù)量大于1,且所述RenderImage節(jié)點的幀頻大于O時,確認所述RenderImage節(jié)點為動態(tài)圖片的RenderImage 節(jié)點。
[0034]可選的,所述動態(tài)識別子單元包括:
[0035]第三判斷模塊,用于判斷所述Render樹中RenderImage節(jié)點的路徑中是否包括字符 gif ;
[0036]第四判斷模塊,用于在所述Render樹中RenderImage節(jié)點的路徑中包括字符gif時,判斷所述RenderImage節(jié)點包含的圖片數(shù)量是否大于1,判斷所述Render樹中RenderImage節(jié)點的幀頻是否大于O ;
[0037]第二確認模塊,用于在所述Render樹中RenderImage節(jié)點包含的圖片數(shù)量大于1,且所述RenderImage節(jié)點的幀頻大于O時,確認所述RenderImage節(jié)點為動態(tài)圖片的RenderImage 節(jié)點。
[0038]可選的,所述圖片繪制單元包括:
[0039]繪制子單元,用于根據(jù)所述GraphicsLayer,在與所述動態(tài)圖片大小相同的區(qū)域內(nèi)繪制所述動態(tài)圖片。
[0040]根據(jù)本公開實施例的第三方面,提供一種網(wǎng)頁圖片的加載裝置,包括:
[0041]處理器;
[0042]用于存儲處理器可執(zhí)行指令的存儲器;
[0043]其中,所述處理器被配置為:
[0044]分別為網(wǎng)頁文件中的每張動態(tài)圖片生成與所述動態(tài)圖片對應的RenderLayer ;
[0045]為所述RenderLayer 生成對應的 GraphicsLayer ;
[0046]根據(jù)所述GraphicsLayer繪制所述動態(tài)圖片。
[0047]本公開的實施例提供的技術方案可以包括以下有益效果:
[0048]本公開終端可以通過為網(wǎng)頁文件中的每張動態(tài)圖片生成對應的RenderLayer,進而可以為所述RenderLayer生成對應的GraphicsLayer,即為每張動態(tài)圖片生成一個對應GraphicsLayer,以便可以根據(jù)所述GraphicsLayer對動態(tài)圖片進行繪制。本公開在網(wǎng)頁文件中存在有多張動態(tài)圖片時,分別對每張動態(tài)圖片進行繪制,可以有效減小繪制的區(qū)域大小,提升渲染性能,同時節(jié)省CPU的計算資源。
[0049]本公開終端可以在判斷所述Render樹中RenderImage節(jié)點包含的圖片數(shù)量大于1,且所述RenderImage節(jié)點的幀頻大于O時,確認所述RenderImage節(jié)點為動態(tài)圖片的Render Image節(jié)點,進而提高網(wǎng)頁文件中動態(tài)圖片識別的準確度。
[0050]應當理解的是,以上的一般描述和后文的細節(jié)描述僅是示例性和解釋性的,并不能限制本公開。
【附圖說明】
[0051]此處的附圖被并入說明書中并構成本說明書的一部分,示出了符合本公開的實施例,并與說明書一起用于解釋本公開的原理。
[0052]圖1是根據(jù)一示例性實施例示出的一種網(wǎng)頁圖片的加載方法的流程圖。
[0053]圖2是根據(jù)一示例性實施例示出的另一種網(wǎng)頁圖片的加載方法的流程圖。
[0054]圖3是根據(jù)一示例性實施例示出的一種在Render樹中識別網(wǎng)頁文件中的動態(tài)圖片的流程圖。
[0055]圖4是根據(jù)一示例性實施例示出的另一種在Render樹中識別網(wǎng)頁文件中的動態(tài)圖片的流程圖。
[0056]圖5是根據(jù)一示例性實施例示出的一種網(wǎng)頁圖片的加載裝置的框圖。
[0057]圖6是根據(jù)一示例性實施例示出的另一種網(wǎng)頁圖片的加載裝置的框圖。
[0058]圖7是根據(jù)一示例性實施例示出的另一種網(wǎng)頁圖片的加載裝置的框圖。
[0059]圖8是根據(jù)一示例性實施例示出的另一種網(wǎng)頁圖片的加載裝置的框圖。
[0060]圖9是根據(jù)一示例性實施例示出的另一種網(wǎng)頁圖片的加載裝置的框圖。
[0061]圖10是根據(jù)一示例性實施例示出的一種用于網(wǎng)頁圖片的加載裝置的一結構示意圖。
【具體實施方式】
[0062]這里將詳細地對示例性實施例進行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實施例中所描述的實施方式并不代表與本公開相一致的所有實施方式。相反,它們僅是與如所附權利要求書中所詳述的、本公開的一些方面相一致的裝置和方法的例子。
[0063]圖1是根據(jù)一示例性實施例示出的一種網(wǎng)頁圖片的加載方法的流程圖。
[0064]如圖1所示,所述網(wǎng)頁圖片的加載方法可以用于終端中,包括以下步驟:
[0065]在步驟SlOl中,分別為網(wǎng)頁文件中的每張動態(tài)圖片生成與所述動態(tài)圖片對應的RenderLayer0
[0066]在本實施例中,終端可以根據(jù)所述網(wǎng)頁文件生成Render樹,然后在所述Render樹中識別所述網(wǎng)頁文件中的動態(tài)圖片,并分別為識別出的所有動態(tài)圖片生成對應的RenderLayer0
[0067]在步驟S102中,為所述RenderLayer生成對應的GraphicsLayer。
[0068]在本實施例中,終端可以為由動態(tài)圖片生成的所述RenderLayer生成對應的GraphicsLayer,即為每張動態(tài)圖片生成對應GraphicsLayer。
[0069]在步驟S103中,根據(jù)所述GraphicsLayer繪制所述動態(tài)圖片。
[0070]