国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種在低端設(shè)備上瀏覽cml文件的方法

      文檔序號:6374381閱讀:235來源:國知局
      專利名稱:一種在低端設(shè)備上瀏覽cml文件的方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及CMMB (中國移動多媒體廣播)多媒體廣播領(lǐng)域,尤其涉及一種在低端設(shè)備上瀏覽CML文件的方法。
      背景技術(shù)
      現(xiàn)有技術(shù)中通常使用互聯(lián)網(wǎng)瀏覽器作為瀏覽器基礎(chǔ),如IE,WebKit瀏覽器等,這種瀏覽器支持功能強(qiáng)大,可以支持JavaScript,但缺點(diǎn)在于極其笨重,程序包最少都有IOM以上,更不用說對RAM和CPU的占用,同時由于復(fù)雜度極高,這種瀏覽器也基本上不可能被移植到低端設(shè)備上。事實(shí)上,由于CMMB信道的特點(diǎn),CMMB實(shí)際業(yè)務(wù)中也不會發(fā)送像互聯(lián)網(wǎng)那樣動輒數(shù)十M的網(wǎng)頁資源,另外,CMMB是單向網(wǎng)絡(luò),因此互聯(lián)網(wǎng)瀏覽器的很多強(qiáng)大功能根本無從發(fā)揮。所以CMMB業(yè)務(wù)非常需要一種符合自身信道和業(yè)務(wù)特點(diǎn)的輕量瀏覽器。CML :英文名稱為CMMB Markup Language,是CMMB可擴(kuò)展描述語言。CML是一種基于XML的可擴(kuò)展描述語言,它以互聯(lián)網(wǎng)技術(shù)標(biāo)準(zhǔn)HTML/CSS/JavaScript為基礎(chǔ),作為富媒體的傳輸和顯示技術(shù)標(biāo)準(zhǔn)。CML包括三個核心部分XHTML-CP、C-CSS、ECMAScript-CMMB,實(shí)際上這個規(guī)范與移動互聯(lián)網(wǎng)的技術(shù)標(biāo)準(zhǔn)HTML、CSS、JavaScript分別只有非常小的差異,可以將其理解為HTML技術(shù)在CMMB的一個分支。在多媒體廣播領(lǐng)域中,CML語言規(guī)范描述和約定了中國移動多媒體廣播(China Mobile Multimedia Broadcast)數(shù)據(jù)業(yè)務(wù)的描述方法,該方法既可以用來構(gòu)建基于網(wǎng)頁技術(shù)的各種數(shù)據(jù)業(yè)務(wù)服務(wù),包括各種普通的信息查詢類業(yè)務(wù),也可以用于構(gòu)建業(yè)務(wù)導(dǎo)航框架;同時,規(guī)范對如何在終端設(shè)備上將數(shù)據(jù)業(yè)務(wù)與其他CMMB應(yīng)用進(jìn)行集成的方法做了描述和約定。圖I是現(xiàn)有技術(shù)中CML解決方案的示意圖;如圖所示,CMMB服務(wù)器通過CML協(xié)議傳輸數(shù)據(jù)業(yè)務(wù)到CMMB終端,CMMB終端瀏覽器根據(jù)CML協(xié)議對數(shù)據(jù)業(yè)務(wù)進(jìn)行CML解析,并基于WebKi t進(jìn)行顯示。CMMB采用HTML技術(shù)做為終端富媒體技術(shù)的原因主要是可以適配不同種類的終端和屏幕類型,但這在實(shí)際應(yīng)用中有幾個主要問題多種中低端設(shè)備無法運(yùn)行CML所需的WebKit環(huán)境,即使能運(yùn)行,運(yùn)行效率又差異 很大,難以保證用戶體驗(yàn)。CML的動態(tài)排版能力被過高的估計(jì)了,在實(shí)際應(yīng)用中,多種屏幕下還是需要后臺數(shù)據(jù)制作為不同屏幕設(shè)計(jì)不同的網(wǎng)頁分別適配,而并不是像原先設(shè)想的可以一種頁面自動適配所有終端類型。由于CMMB是單向通道,CML的互動能力在沒有上行通道的情況下意義不大,實(shí)際上大多終端需要的只是靜態(tài)圖文瀏覽,CML的強(qiáng)大AJAX能力無從發(fā)揮,白白浪費(fèi)了終端資源。

      發(fā)明內(nèi)容
      鑒于現(xiàn)有技術(shù)存在的問題,本發(fā)明提供一種瀏覽CML文件的方法,其特征在于包括如下步驟步驟一、在服務(wù)器端預(yù)先通過WebKit渲染引擎將CML網(wǎng)頁標(biāo)簽內(nèi)容針對不同類型終端設(shè)備的分辨率生成不同的靜態(tài)排版位置,并再次寫入頁面中生成針對不同類型終端設(shè)備的分辯率的網(wǎng)頁;步驟二、通過CMMB通道下發(fā)步驟一所生成的針對不同類型終端設(shè)備的分辯率的網(wǎng)頁到相應(yīng)類型的終端設(shè)備;步驟三、終端設(shè)備根據(jù)網(wǎng)頁中的靜態(tài)排版位置對網(wǎng)頁中圖文進(jìn)行渲染顯示。進(jìn)一步,本發(fā)明所述的瀏覽CML文件的方法,其特征在于所述步驟一中通過javasrcipt在CML網(wǎng)頁中搜索包含文本和圖片的div DOM節(jié)點(diǎn)來獲得文本塊和圖片塊的位置,并將位置信息以約定的形式寫入針對不同類型終端設(shè)備的分辯率的頁面內(nèi)的DIV標(biāo) 簽。進(jìn)一步,本發(fā)明所述的瀏覽CML文件的方法,其特征在于所述步驟一還包括根據(jù)終端設(shè)備類型的不同將引用的圖片轉(zhuǎn)換成單一圖片格式,并采用圖像處理技術(shù)抖動(Dither)進(jìn)行處理,保持色彩效果。進(jìn)一步,本發(fā)明所述的瀏覽CML文件的方法,其特征在于所述步驟一和步驟二之間還包括在通過CMMB發(fā)布前利用人工對所產(chǎn)生的針對不同類型終端設(shè)備分辯率的網(wǎng)頁顯示效果進(jìn)行校對,查看是否與原始的CML顯示效果基本一致。本發(fā)明在后臺將CML通過預(yù)先渲染的方法,從中提取CML內(nèi)容中關(guān)鍵的圖文混排的位置信息,將其轉(zhuǎn)換為針對特定設(shè)備(屏幕)靜態(tài)圖文混排描述文件,將其通過服務(wù)端發(fā)布,圖文信息已經(jīng)得到固化,因此終端的解析和渲染都非常簡單,大大簡化了終端瀏覽富文本內(nèi)容的技術(shù)結(jié)構(gòu),使得資源開銷大幅降低,更可以為不同的終端類型進(jìn)行定制。


      圖I是現(xiàn)有技術(shù)中CML解決方案的示意圖;圖2是本發(fā)明所述在低端設(shè)備上瀏覽CML文件的方案的示意圖。
      具體實(shí)施例方式為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式
      對本發(fā)明作進(jìn)一步詳細(xì)的說明。由于傳統(tǒng)CML瀏覽器需要在終端側(cè)進(jìn)行CML解析,而該解析過程占用了終端比較多的資源,因此,本發(fā)明采用了設(shè)計(jì)了一種自定義的輕量的終端富媒體技術(shù)規(guī)范MiniCML,其在后臺(服務(wù)器端)預(yù)先通過工具將CML針對不同類型的終端分別處理成不同的MiniCML包,進(jìn)行下發(fā)。而終端只需要一個非常小的解析渲染引擎就可以完成MiniCML的瀏覽。使用這套方案,后臺可以根據(jù)終端類型的硬件能力將MiniCML中的圖片資源進(jìn)行處理,以得到最大化的優(yōu)化。MiniCML的設(shè)計(jì)目標(biāo)是設(shè)計(jì)一套以XML為基礎(chǔ)的移動設(shè)備圖文混排描述語言,只要能滿足圖文的靜態(tài)排版功能即可。本發(fā)明之所以能夠支持低端設(shè)備關(guān)鍵在于在后臺將CML轉(zhuǎn)成一種自定義格式(即MiniCML),并以這種格式進(jìn)行發(fā)布應(yīng)用的過程,并且這個過程針對于每種設(shè)備類型都是獨(dú)立進(jìn)行的。MiniCML是應(yīng)用和設(shè)備相關(guān)的,這與CML獨(dú)立于應(yīng)用和設(shè)備完全不同。這種專一性使得相對于CML的通用性在性能和資源開銷上有很大的優(yōu)勢。這種專一性使得MiniCML不用考慮同一個頁面去適配不同分辨率的終端屏幕(這需要使用復(fù)雜的動態(tài)排版技術(shù)),而MiniCML只需要靜態(tài)的排版(因?yàn)樵谏蒑iniCML時已經(jīng)將靜態(tài)排版位置生成并寫入頁面中)。MiniCML并無意設(shè)計(jì)為一種標(biāo)準(zhǔn)化的類似CML的標(biāo)簽語言,只是根據(jù)應(yīng)用的需要借用CML的一些基礎(chǔ)標(biāo)簽和語法規(guī)則,根據(jù)應(yīng)用不同會有一些變化。以下列出MiniCML的一些核心標(biāo)簽,另會根據(jù)應(yīng)用不同可能增加一些其他CML標(biāo)簽。MiniCML核心功能標(biāo)簽靜態(tài)排版信息被寫入到了 DIV的style屬性中(如下)分區(qū)DIV標(biāo)簽(與HTML DIV類同,構(gòu)造整個版面的大矩形塊)
      范例〈DIVstyle =’ x = 100 ;y = 50 ;width = 300 ;height = 300 ;,〉textcontent (/DIV)通過style進(jìn)行定位段落P標(biāo)簽(與HTML P相同)范例〈P〉text content〈/P〉文字塊SPAN標(biāo)簽(與HTML SPAN相同)范例〈SPAN〉textcontent (/SPAN) 換行BR標(biāo)簽(與HTML BR相同)范例(BR/)圖片MG標(biāo)簽(與HTML IMG相同)范例〈IMGsrc = " tt. png " style =,x = 100 ;y = 50 ;,width="20" height =" 20" /〉在指定位置插入圖片通過style 中的 x, y, width, height 進(jìn)行定位鏈接A標(biāo)簽((與HTML A相同))范例〈Ahref = " value")圖2是本發(fā)明所述在低端設(shè)備上瀏覽CML文件的方案的示意圖。如圖所示,本發(fā)明所述在低端設(shè)備上瀏覽CML文件的系統(tǒng)包括如下模塊MiniCML轉(zhuǎn)換模塊,用于在服務(wù)器端預(yù)先通過WebKit渲染引擎將CML網(wǎng)頁標(biāo)簽內(nèi)容針對不同類型終端設(shè)備的分辨率生成不同的靜態(tài)排版位置,并再次寫入頁面中生成針對不同類型終端設(shè)備的分辯率的網(wǎng)頁;在服務(wù)器端將CML內(nèi)容轉(zhuǎn)換為MiniCML (MiniCML為一種靜態(tài)圖文混排描述方式,具體標(biāo)簽上面有描述)。的圖文混排方式的具體的步驟以下面的CML/HTML為例進(jìn)行說明(html) (body) (div) (div) Test Page (/div) (imgsrc = ‘test, png,/〉〈/div) (/body) (/html)首先MiniCML轉(zhuǎn)換模塊根據(jù)最終目標(biāo)設(shè)備的分辨率將CML通過WebKit (WebKit為已知技術(shù),在此不詳細(xì)闡述)渲染引擎(目前的ChiOme,iPhone,Android瀏覽器都是基于WebKit開源內(nèi)核)進(jìn)行渲染Layout。;經(jīng)過渲染后,CML(HTML)中的基本圖文要素(主要指葉子級別的DIV,P,IMG等要素)的排版位置即確定,即可提取葉子級別的圖文要素,轉(zhuǎn)換為MiniCML的對應(yīng)標(biāo)簽(基本上葉子級別的圖文要素在MiniCML中有對應(yīng),沒有對應(yīng)無法轉(zhuǎn)換的可拋棄)。即生成MiniCML 文件。實(shí)際轉(zhuǎn)換時,可以將CML/HTML傳給一個PC上運(yùn)行的WebKit瀏覽器,這個瀏覽器的頁面輸出尺寸被設(shè)定為MiniCML將要適配的終端分辨率。WebKit在加載完HTML后,文本和圖片的最終排版位置就可以通過Javascript腳本的方式從WebKit中獲取(此為通用技術(shù)不闡述),通過javas cipt搜索包含文本和圖片的div DOM節(jié)點(diǎn),來獲得文本塊和圖片塊的位置,并將位置以MiniCML約定的style形式寫入DIV標(biāo)簽中,例如以上例子獲得〈div〉Test Page (/div)的輸出位置為x = 100, y = 200,width = 20, height = 20.則輸出的 MiniCML 為(div style =,x = 100 ;y = 200 ;width=20 ;height = 20 ; ’ /〉最終輸出的范例(html) (body)〈div,x = 100 ;y = 200 ;width = 20 ;height = 20 ;,〉TestPage(/div)〈div’x = 100 ;y = 300 ;width = 20 ;height = 20 ; ’〉(img src = ‘test, png’/〉(/div) (/body)〈/html〉輸出最終只包含文本和圖片節(jié)點(diǎn)的DIV節(jié)點(diǎn)。其他的DIV節(jié)點(diǎn)都被略去。此外,本發(fā)明還對引用的圖片資源進(jìn)行處理。具體來說,根據(jù)目標(biāo)設(shè)備要求,將資源轉(zhuǎn)換成在終端使用占用資源小的圖片格式(如256色png),另外,由于在轉(zhuǎn)換為MiniCML時就把CML中的各種圖片格式都轉(zhuǎn)換為單一格式如256色PNG,這樣可以使得終端引擎可以不必加載多個圖像支持模塊,大大減少資源占用。真彩圖片在轉(zhuǎn)換為256色時,出現(xiàn)色彩失真,因此采用圖像處理里通用的技術(shù)抖動(Dither)進(jìn)行處理,保持色彩效果。此外,由于是后臺處理,因此可以在通過CMMB發(fā)布前利用人工對MiniCML的顯示效果進(jìn)行校對。查看是否與原始的CML顯示效果基本一致。轉(zhuǎn)換處理完畢之后,通過CMMB通道將所生成的針對不同類型終端設(shè)備的分辯率的網(wǎng)頁下發(fā)到相應(yīng)類型的終端設(shè)備;終端設(shè)備接收到相應(yīng)網(wǎng)頁內(nèi)容之后,根據(jù)網(wǎng)頁中的靜態(tài)排版位置對網(wǎng)頁中圖文進(jìn)行渲染顯示。具體來說,終端設(shè)備通過MiniCML瀏覽模塊進(jìn)行渲染顯示,改瀏覽模塊包含了MiniCML解析子模塊、MiniCML渲染子模塊和MiniCML頁面控制子模塊。MiniCML解析子模塊用于在XML解析的基礎(chǔ)上,將XML解析生成的XML DOM節(jié)點(diǎn)轉(zhuǎn)化為下一步渲染可識別的渲染對象,例如,標(biāo)簽為DIV的DOM節(jié)點(diǎn)轉(zhuǎn)化為類名為XXDIV的對象。對應(yīng)于XML解析生成的DOM節(jié)點(diǎn)樹,渲染對象組成了一棵同樣結(jié)構(gòu)的渲染對象樹。解析步驟的作用在于將XML轉(zhuǎn)換為下一步可識別的中間結(jié)果數(shù)據(jù)結(jié)構(gòu)。 例如對于上面提到的那個CML例子
      權(quán)利要求
      1.一種瀏覽CML文件的方法,其特征在于包括如下步驟 步驟一、在服務(wù)器端預(yù)先通過WebKit渲染引擎將CML網(wǎng)頁標(biāo)簽內(nèi)容針對不同類型終端設(shè)備的分辨率生成不同的靜態(tài)排版位置,并再次寫入頁面中生成針對不同類型終端設(shè)備的分辯率的網(wǎng)頁; 步驟二、通過CMMB通道下發(fā)步驟一所生成的針對不同類型終端設(shè)備的分辯率的網(wǎng)頁到相應(yīng)類型的終端設(shè)備; 步驟三、終端設(shè)備根據(jù)網(wǎng)頁中的靜態(tài)排版位置對網(wǎng)頁中圖文進(jìn)行渲染顯示。
      2.根據(jù)權(quán)利要求I所述的瀏覽CML文件的方法,其特征在于所述步驟一中通過javasrcipt在CML網(wǎng)頁中搜索包含文本和圖片的div DOM節(jié)點(diǎn)來獲得文本塊和圖片塊的位置,并將位置信息以約定的形式寫入針對不同類型終端設(shè)備的分辯率的頁面內(nèi)的DIV標(biāo)簽。
      3.根據(jù)權(quán)利要求I所述的瀏覽CML文件的方法,其特征在于所述步驟一還包括根據(jù)終端設(shè)備類型的不同將引用的圖片轉(zhuǎn)換成單一圖片格式,并采用圖像處理技術(shù)抖動(Dither)進(jìn)行處理,保持色彩效果。
      4.根據(jù)權(quán)利要求I所述的瀏覽CML文件的方法,其特征在于所述步驟一和步驟二之間還包括在通過CMMB發(fā)布前利用人工對所產(chǎn)生的針對不同類型終端設(shè)備分辯率的網(wǎng)頁顯示效果進(jìn)行校對,查看是否與原始的CML顯示效果基本一致。
      全文摘要
      一種在低端設(shè)備上瀏覽CML文件的方法,其特征在于包括如下步驟步驟一、在服務(wù)器端預(yù)先通過WebKit渲染引擎將CML網(wǎng)頁標(biāo)簽內(nèi)容針對不同類型終端設(shè)備的分辨率生成不同的靜態(tài)排版位置,并再次寫入頁面中生成針對不同類型終端設(shè)備的分辯率的網(wǎng)頁;步驟二、通過CMMB通道下發(fā)步驟一所生成的針對不同類型終端設(shè)備的分辯率的網(wǎng)頁到相應(yīng)類型的終端設(shè)備;步驟三、終端設(shè)備根據(jù)網(wǎng)頁中的靜態(tài)排版位置對網(wǎng)頁中圖文進(jìn)行渲染顯示。本發(fā)明終端設(shè)備解析和渲染都非常簡單,大大簡化了終端瀏覽富文本內(nèi)容的技術(shù)結(jié)構(gòu),使得資源開銷大幅降低。
      文檔編號G06F17/30GK102831190SQ201210273729
      公開日2012年12月19日 申請日期2012年8月3日 優(yōu)先權(quán)日2012年8月3日
      發(fā)明者許林 申請人:北京中廣睛彩導(dǎo)航科技有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1