freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

嵌入式瀏覽器開發(fā)畢業(yè)設(shè)計(jì)畢業(yè)論文(完整版)

2025-08-03 13:06上一頁面

下一頁面
  

【正文】 JavaScript Engine …………………………………………18 JavaScript與瀏覽器接合 ………………………………… 19 瀏覽器消息響應(yīng) …………………………………………… 21第四章 Linux程序開發(fā)技術(shù)及 GTK圖形程序開發(fā)…… 23 Linux下的程序開發(fā)環(huán)境 ……………………………………23 GTK圖形程序開發(fā) ……………………………………………29第五章 Netbit瀏覽器開發(fā)與分析 ……………………… 31 Netbit 瀏覽器簡(jiǎn)介 ………………………………………… 31 Netbit Browser瀏覽器各部份的功能 …………………… 31 界面模塊………………………………………………………32 控制模塊………………………………………………………34… ………………………………………………34………………………………………35 文本文件的顯示模塊…………………………………………36 HTML文件的顯示模塊 ……………………………………… 37 Netbit實(shí)際應(yīng)用效果及比較 ……………………………… 40 Netbit Browser的缺點(diǎn)分析及改進(jìn)辦法 …………………44 Netbit Browser未來的展望 ………………………………48第六章 其它瀏覽器分析…………………………………… 50 Dillo(Gzilla)瀏覽器分析 ……………………………… 50 Thunder瀏覽器分析…………………………………………55 Mozilla瀏覽器分析…………………………………………56 ZEN瀏覽器分析………………………………………………57 瀏覽器分析工作的總結(jié)………………………………………58致 謝…………………………………………………………… 60參考文獻(xiàn)表………………………………………………………61 引 言隨著計(jì)算機(jī)、網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,新型的高科技含量的電子產(chǎn)品層出不窮,遍及家電、生產(chǎn)、軍事等各個(gè)領(lǐng)域。 第一章 嵌入式瀏覽器設(shè)計(jì)概述:常見的桌面瀏覽器有微軟的Internet Explorer,網(wǎng)景的Netscape,開放源碼的Mozilla,以及opera,mosaic,Hotjava,字符模式的lynx等。需要指出的是,我們?cè)诰W(wǎng)上??吹降囊恍┧^的優(yōu)秀瀏覽器,如Netcaptor,魔裝網(wǎng)神,騰訊,颶風(fēng),F(xiàn)antasia,金山WPS office的瀏覽器等等,均為使用IE內(nèi)核的瀏覽器,使用了多頁面多線程的方式,降低了系統(tǒng)資源的耗費(fèi),方便了瀏覽,但軟件本身沒有多少技術(shù)可言,可以用Delphi,VB等工具輕易開發(fā)出來(如果不要求完善的功能,只需簡(jiǎn)單到拖一個(gè)IE控件過去就行了),這也體現(xiàn)了微軟的COM+及ActiveX技術(shù)的強(qiáng)大。比如它不支持使用font標(biāo)記來設(shè)置字體,也不支持樣式表,所有字體的大小是固定的,但一般情況不易發(fā)現(xiàn),不過由于Linux版本不是商業(yè)性版本,無法就此推斷其他版本的特性。是開放源碼項(xiàng)目。下面簡(jiǎn)介主要的組成部份,其設(shè)計(jì)原理后面將進(jìn)行專門論述。所有這些,是需要有專業(yè)的GUI庫(kù)開發(fā)經(jīng)驗(yàn)的專職人員來完成。以上主要按工作的性質(zhì)進(jìn)行分類,介紹了瀏覽器設(shè)計(jì)的主要幾個(gè)部份,但與實(shí)際開發(fā)工作的人員劃分不同,實(shí)際工作要考慮人員的實(shí)際能力和經(jīng)驗(yàn),結(jié)合要實(shí)現(xiàn)的目標(biāo),對(duì)各部份的投入也有輕重緩急之分,比如,如果沒有詞法分析的先行實(shí)現(xiàn),語法分析與布局都是紙上談兵。 GUI的選取GUI的選取是頗費(fèi)腦筋的問題,一方面要考慮嵌入式系統(tǒng)是否有對(duì)應(yīng)的版本,一方面要考慮該GUI的功能是否足夠?qū)嵱谩?3) 實(shí)現(xiàn)簡(jiǎn)單網(wǎng)頁的布局:實(shí)現(xiàn)對(duì)簡(jiǎn)單網(wǎng)頁的查看。 Bit Token的組成及其功能Bit Token作為Netbit Browser的詞法分析部份,負(fù)責(zé)對(duì)接收的HTML代碼進(jìn)行詞法分析,主要的目的是提取網(wǎng)頁中元素的名稱及其屬性,并以恰當(dāng)?shù)男问剑窗匆欢ǖ臄?shù)據(jù)結(jié)構(gòu))加以保存,也就是完成了將數(shù)據(jù)流離散化、結(jié)構(gòu)化的過程。char * global_strBuffer。詞法分析的目的就是生成這樣一個(gè)鏈表。char *pData。(4) 如果遇到 ,則跳過(不應(yīng)該出現(xiàn)此情況,為了容錯(cuò))。解決的辦法是,采用回溯,確認(rèn)要分析的部份至少包含1個(gè)完整元素。具有以下主要功能:智能提取網(wǎng)頁中的文字信息,智能排版,并可在進(jìn)行編輯后保存。使用常規(guī)的簡(jiǎn)單算法進(jìn)行HTML到TXT的轉(zhuǎn)換無法解決這些問題。 Bit Token在應(yīng)用中存在的問題及修改意見由于HTML的標(biāo)記多是成對(duì)出現(xiàn)的,并且存在SCRIPT這樣的特殊元素,其內(nèi)容為Javascript程序,函數(shù)的字符串參數(shù)等可能包含其它的元素標(biāo)記。而且被廣泛使用,實(shí)際已成為了進(jìn)行JavaScript應(yīng)用開發(fā)的標(biāo)準(zhǔn)平臺(tái)。瀏覽器主體程序的設(shè)計(jì)者可以通過JavaScript Engine,方便的實(shí)現(xiàn)各種應(yīng)用,畢竟JavaScript API太基礎(chǔ)了,直接使用不太方便。定義系統(tǒng)函數(shù):JS_DefineFunctions(cx, globalObj, g_functions)。初始化定時(shí)器:TDTimerListInit()。注冊(cè)過程在BuildModel中進(jìn)行。ElementClass,proto,JSPROP_ENUMERATE)。問題3:如何建立Javascript對(duì)象與結(jié)點(diǎn)樹上結(jié)點(diǎn)的對(duì)應(yīng)?解決: Javascript對(duì)象與結(jié)點(diǎn)樹是同時(shí)生成的,它們的共同性質(zhì)是結(jié)點(diǎn)具有相同屬性,Javascript對(duì)象根據(jù)ID屬性查找樹,找到要操作的對(duì)應(yīng)結(jié)點(diǎn)。jval)。
XPG:X/Open 可移植性指南。圖形文件操作函數(shù)庫(kù)包括: libungif、libtiff、libpng、Imlib, libjpeg 等,可分別用來操作 GIF、TIFF、PNG、JPEG 以及其他一些格式圖形文件。
在 Linux 中,我們經(jīng)常看到的是定義非常簡(jiǎn)單的函數(shù)接口和變量名稱。如下所示:
int function(int x, int y){
if (x == y) {
...
} else {
...
}
return 0。利用 gcc 命令可同時(shí)編譯并連接 C 和 C++ 源程序。
DMACRO 以字符串“1”定義 MACRO 宏。
m486 針對(duì) 486 進(jìn)行代碼優(yōu)化。通常用在建立共享庫(kù)時(shí)。
在可以使用 gdb 調(diào)試程序之前,必須使用 g 選項(xiàng)編譯源文件。這些工作包括:如果僅修改了某幾個(gè)源文件,則只重新編譯這幾個(gè)源文件;如果某個(gè)頭文件被修改了,則重新編譯所有包含該頭文件的源文件。* 要?jiǎng)?chuàng)建的項(xiàng)目依賴于哪些文件。如果你要以相同的編譯選項(xiàng)同時(shí)編譯十幾個(gè) C 源文件,而為每個(gè)目標(biāo)的編譯指定冗長(zhǎng)的編譯選項(xiàng)的話,將是非常乏味的。
I DIR 當(dāng)包含其他 makefile 文件時(shí),可利用該選項(xiàng)指定搜索目錄。
gtk_init (amp。 GTK的層次結(jié)構(gòu)GIMPGTK+GDKGLIBXLIB GTK的事件與信號(hào)處理GTK是一個(gè)事件驅(qū)動(dòng)的工具集,一個(gè)GTK應(yīng)用通常在gtk_main上休眠直到一個(gè)事件發(fā)生,這時(shí)控制被傳遞給合適的函數(shù)。項(xiàng)目的目的是要建立一個(gè)小型的、快捷的web瀏覽器,并便于移植到嵌入式系統(tǒng)中。 /* 指向保存詞法分析結(jié)果的數(shù)據(jù)結(jié)構(gòu) */ BitTokenContext *global_cx。查看HTML源碼void a_Commands_reload_callback (GtkWidget *widget, gpointer client_data)。(1) ,主要的函數(shù)說明:BitTokenContext * Bit_NewContext()。處理元素int Token_Consum_PlainText(BitTokenContext *global_cx)。gint expose_event (GtkWidget *widget, GdkEventExpose *event)。void a_Plain_write(GtkLayout *display,char *Buf1, gint BufSize)主要函數(shù)下面介紹一下文本顯示的算法。 line_size+=gdk_char_width(font,str[j])。 x=X_START。主要流程: while(pTtokenList!=NULL) {………… switch(pTtokenListtokentype) { case HTML_TITLE: ………… break。由于font標(biāo)記允許嵌套,所以使用了棧來對(duì)font元素進(jìn)行管理,例如以下的HTML代碼:font size=4 color=0000FFThis program is not bfree software/b。typedef struct _font_list{int html_element。 Netbit實(shí)際應(yīng)用效果及比較下圖為Netbit browser運(yùn)行時(shí)的界面,所打開的頁面源代碼如下:htmlbodyh1font color=FF00FFbNetbit Browser Version Demo/b/font/h1hrh4License/h4pfont size=4 color=0000FFThis program is not bfree software/b??梢钥吹剑趯?duì)簡(jiǎn)單英文網(wǎng)頁的支持效果上看,Netbit Browser,已接近于成熟瀏覽器的水平,甚至優(yōu)于一些小型的嵌入式瀏覽器如GZILLA,Netfront,但在復(fù)雜頁面的顯示上還有較大的差距。大多數(shù)的GUI平臺(tái)都提供了方便用戶進(jìn)行控件組合的機(jī)制,例如有的控件能包含其它的控件,通常稱之為container(容器),以GTK為例說明其原理。 要支撐這樣的繼承, 第一欄的資料結(jié)構(gòu)必須是其父類別的資料結(jié)構(gòu)。當(dāng)一個(gè)按鈕被看成是個(gè)container(容器)時(shí)(例如, 當(dāng)它被縮放時(shí)), 其類別結(jié)構(gòu)可被傳到GtkContainerClass, 而其相關(guān)的欄位被用來處理信號(hào)。來將expose_event這個(gè)重畫消息,捆綁給了drawing_area控件。將drawing_area裝到盒子里。下面指定消息:if(partpparent amp。如此這般費(fèi)神,終于可以讓線條、文字、表格、圖片得見天日,完美的展現(xiàn)在眾人面前(當(dāng)然,所有的畫與重畫的函數(shù)都要自己寫好了才行)。接下來我們就可以使用gtk_layout_put函數(shù)將其它的允許被包含的控件放進(jìn)去,就是這么簡(jiǎn)單,那難度在哪呢?其實(shí),對(duì)于網(wǎng)頁顯示而言,能放進(jìn)去多少個(gè)按鈕、編輯框、單選框并不是最主要的,這很容易實(shí)現(xiàn),只要采用了類似layout這樣的基礎(chǔ)控件,我們?cè)瓌t上可以組合出來很多種效果。 void (* pressed) (GtkButton *button)。 不過, 依然是以C來寫的。對(duì)比Netscape,IE的漫長(zhǎng)的開發(fā)歷史和巨大的資金投入,Netbit Browser的未來依然生死未卜。 either version 2 of the License, or (at your option) any later version./fonthrh3Design based on GTK, by sogo and ce!/h3/body/html以下為主菜單以下為工具條輸入網(wǎng)頁的URL,即可進(jìn)行訪問。char size_str[15]。 either version 2 of the License, or (at your option) any later version./font顯示的效果應(yīng)為GNU General Public License的字號(hào)為5,顏色為FF0000,即紅色;free software應(yīng)為粗體,受首尾兩個(gè)呼應(yīng)的font標(biāo)記約束,其它字字號(hào)均為4,顏色為0000FF,由于free software只被b/b這一對(duì)加粗符號(hào)約束,所以其顏色應(yīng)受首尾的font標(biāo)記的約束,即應(yīng)為0000FF。 ………… ………… default: ……… break。 y+=16。 i++。通過預(yù)布局來計(jì)算頁面的長(zhǎng)度:while(iBufSize) { j=0。來重畫。顯示分析結(jié)果void Bit_SaveTokenResult(BitTokenContext *global_cx,char * filename)。 局部詞法分析void Bit_BeginToken(BitTokenContext *global_cx)。顯示主頁void a_Commands_helphome_callback (GtkWidget *widget, gpointer client_data)。}。項(xiàng)目目前已完成 demo版,實(shí)現(xiàn)了基本界面,、支持本地文本文件查看,英文網(wǎng)頁瀏覽(使用菜單open file),支持簡(jiǎn)單連接,支持URL訪問,如輸入,支持字體顏色、字號(hào)等基本的元素。
void gtk_signal_disconnect( GtkObject, gint)。argv)。
p 顯示 make 變量數(shù)據(jù)庫(kù)和隱含規(guī)則。GNU make 通常稱之為變量,而
點(diǎn)擊復(fù)制文檔內(nèi)容
語文相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1