新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > Konqueror/embedded向ARM-Linux平臺的移植和漢化

        Konqueror/embedded向ARM-Linux平臺的移植和漢化

        作者: 時間:2010-12-12 來源:網絡 收藏

        引言

        目前,嵌入式瀏覽器已經逐漸成為高端手機和PDA的標準配置。 Konqueror/embeded作為嵌入式Linux操作系統的首選瀏覽器得到了廣泛使用。但是由于該瀏覽器是自由軟件,因此向具體嵌入式時存在一定的難度。本文主要介紹了上的整個過程,以便工程師參考和使用。
          
        的結構
          
        是由底層網絡連接,圖形化用戶界面和處理HTML繪制的引擎KHTML構成的。底層的通信協議實現是基于KIO/slave機制來實現的;GUI界面采用Kparts組建技術和Qt的基本構件;而作為Konqueror/embedded的核心,KHTML則運用了文檔對象模型(DOM)所提供的API接口,并在DOM樹上掛接javascript引擎,CSS解析器以及渲染引擎。Konqueror/embedded的層次結構如圖1所示。

          

        本文引用地址:http://www.104case.com/article/151225.htm


        圖1 Konqueror/embedded層次結構

        Kparts及Qt構件實現GUI
          
        為了方便地實現將現有應用作為一個控件插入到另外一個應用中去,采用了part對象負責管理整個應用和窗口。對于每個窗口又采取了類似 微軟 MFC 中的 Doc-View 結構。因此在將應用嵌入到另外一個應用中的時候,只需要獲得part中的接口和數據即可。對窗口的一切操作的響應由被嵌入應用的 part 對象來完成,而類 Doc-View 結構只負責顯示和保存數據即可。
          
        由于Konqueror/embedded是基于圖形庫Qt/E,因此也遵循了signal、slot消息機制,Konqueror/embedded作為Qt/E的一個標準應用程序進行輸入/輸出及界面消息響應。
          
        執行DOM 模塊
          
        DOM 模塊對經過解析的標記進行語法檢查,并把屬性看作節點,按照標記的語義包含關系以及先后順序組織成DOM樹。它給HTML 文檔定義了一個與無關的程序接口,使用該接口可以控制文檔的內容、接口和樣式。
          
        在執行DOM模塊的過程中,瀏覽器將所有從語法語義解析模塊中獲得的標記和屬性,按照一定的層次結構組織成DOM 樹。完成DOM 樹的構筑后,DOM 模塊會同時把標記和屬性以對象的形式傳給綁定模塊和腳本引擎模塊。
         
        執行I/O模塊
          
        瀏覽器加載有關的I/O文件,對HTTP等協議進行解析。語法語義解析模塊的解析功能分為兩部分:對接收到的字節流進行分詞,解析為關鍵字;調用解析器檢驗關鍵字是否合法,若是合法的關鍵字,則按照規則插入到DOM 樹中。
          
        HTML 的標記和屬性統稱為HTML的關鍵字。基本上所有HTML 4. 0 規范的標記都在此功能模塊中獲得支持。從I / O 模塊中接收字節流并進行分詞,輸出標記;再對標記進行判斷,如果是HTML 規范中合法的標記,則把標記看作一個節點,并組織成語法樹。對屬性標記的解析首先在標記處理類中執行,如果解析不成功,則交由基類的屬性解析器進行解析。

          
        圖2編譯配置

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 海林市| 左云县| 昌平区| 左权县| 班戈县| 巫山县| 东乌珠穆沁旗| 衡东县| 襄汾县| 九龙县| 昔阳县| 三明市| 湛江市| 南华县| 武清区| 左权县| 旅游| 于田县| 礼泉县| 百色市| 东兴市| 永泰县| 博野县| 广南县| 浦北县| 南汇区| 常熟市| 东乡| 赫章县| 沂源县| 宕昌县| 盐源县| 砀山县| 板桥市| 荆州市| 丽江市| 双柏县| 潼关县| 河北区| 隆化县| 石家庄市|