Trident
圖形接口的排版引擎
Trident (又稱爲MSHTML),是微軟的窗口操作系統(Windows)搭載的網頁瀏覽器—Internet Explorer的排版引擎的 名稱,它的第一個版本隨着1997年10月Internet Explorer第四版釋出,之後不斷的加入新的技術並隨着新版本的Internet Explorer釋出。在已經發布的Internet Explorer第七版和八版、九版中,微軟將對Trident排版引擎做了的重大的變動,除了加入新的技術之外,並增加對網頁標準的支持。儘管這些變動已經在相當大的程度上落後了其它的排版引擎,如Gecko、WebCore、KHTML及Presto。
Trident引擎被設計成一個軟件組件(模塊),使得其它軟件開發人員很容易的將網頁瀏覽的功能加到他們自行開發的應用程序裏。微軟提出了一個稱爲組件對象模型(COM)的軟件接口架構。供其它支持的組件對象模型開發環境的應用程序(如:C++及.NET)存取及編輯網頁。例如,由C++所撰寫的程序可以加入瀏覽器控件裏,並透過Trident引擎存取當前顯示在瀏覽器上的網頁內容及網頁的各種元素的值,從瀏覽器控件觸發的事件亦可被程序擷取並進行處理。Trident引擎所提供的所有函式庫可以透過與 mshtml.dll這個檔案的連結而達成撰寫程序時所需要的功能。[1]
版本
InternetExplorer 8是第一個在user agentstring包含Trident排版引擎的版本。在此之前,Trident排版引擎都沒有作獨立發佈。
基於該技術的應用程序
除了Internet Explorer第四版以後的版本使用Trident排版引擎之外,還有其它的應用程序也使用了Trident排版引擎所提供的技術:
系統應用程序
從Windows 98到Windows XP及Windows Server2003所有版本的Windows Explorer。(Windows Vista則使用不同的技術)
Windows98及其後續所有版本的視窗操作系統內的Windows幫助程序。
瀏覽器
Avant Browser(前身爲IeOpera)
Maxthon(前身爲MyIE3.2、MyIE2)
GreenBrowser(前身亦爲MyIE3.2)
世界之窗(TheWorld Browser)
MyIE(新版4.x爲GreenBrowser作者發佈,3.2及之前版本爲Maxthon、GreenBrowser、iTreeSurf等瀏覽器的前身)
iTreeSurf(LovelyTree,前身亦爲MyIE3.2)
(注:中國大陸的大部分瀏覽器都使用Trident 排版引擎)
其它應用程序
RealPlayer播放程序內附的網頁瀏覽器。
RealNetworks旗下的網絡遊戲公司RealArcade所提供的服務。
MSN Explorer瀏覽器。
Microsoft Office Outlook以及Outlook Express電子郵件軟件使用Trident技術協助HTML格式的信件資料排版以及“Outlook Today”畫面的顯示。
微軟公司的Windows MediaPlayer使用Trident技術產生“Media Information”頁面。
FeedReader- RSS閱讀工具
微軟公司的Microsoft Office InfoPath 2003(以XML爲基礎的表格開發器)產品。
微軟公司的MSN Messenger即時通訊軟件利用該技術處理使用Flash技術的遊戲或比賽以及廣告的展示資 訊。
ThunderSite網頁編輯器。
跨平臺的文件閱讀軟件TomeRaider。
維爾福軟件公司的Steam內容傳送系統使用Trident技術在該軟件的“儲存”及“更新消息”的功能。
gecko
百科名片
Gecko是套開放原始碼的、以C++編寫的網頁排版引擎。目前爲Mozilla家族網頁瀏覽器以及Netscape 6以後版本瀏覽器所使用。這軟件原本是由網景通訊公司開發的,現在則由Mozilla基金會維護。 這套排版引擎提供了一個豐富的程序界面以供因特網相關的應用程序使用,例如網頁瀏覽器、HTML編輯器、客戶端/服務器等等。雖然最初的主要對象是Mozilla的衍生產品,如Netscape和Mozilla Firefox,現在已有很多其他軟件現在利用這個排版引擎。Gecko是跨平臺的,能在MicrosoftWindows、Linux和Mac OS X等主要操作系統上運行。
簡介
Gecko在互聯網中是最流行的排版引擎之一,其流行程度僅次於Trident(用於Windows版的Internet Explorer4.0版本開始),其後尚有WebKit(用於Safari以及Google Chrome)以及Presto(用於Opera)。
歷史沿革
1997年,網景收購了DigitalStyle。當時,網景瀏覽器在各方面的表現已經比不上她的主要競爭對手
EmbeddingGecko
Internet Explorer。這包括程序的執行速度、對W3C標準的支持度等等。網景開始研發下一代的排版引擎,並期望把新的排版引擎應用於下一版本的網景瀏覽器上。
1998年初,Mozilla計劃開始執行。這個新的排版引擎名爲Raptor,以開發源碼的方式發放於因特網上。後來,因爲商標問題,Raptor改外爲NGLayout(即nextgeneration layout之意)。而最後NGLayout就被網景重新命名爲Gecko。但由於Gecko爲網景的商標,所以有一段時期Mozilla組織(屬於網景的非正式組織,亦爲Mozilla基金會的前身)以NGLayout來稱呼這個新的排版引擎,而在該時,Gecko這字亦指XPFE(cross-platform front-end),一個以XML爲基礎的使用者接口。不過,現時Gecko這字只用於排版引擎。
1998年10月,網景公佈下一版的瀏覽器將會使用這個排版引擎,而該瀏覽器亦需要被大幅度重寫。對於致力推動網上標準的人,這是一個令人振奮的消息。然而,對於網景開發者而言,這是一個長達六個月的大工程,而他們在網景5.0上(包括Mariner排版引擎)所花的心血亦被白白浪費。結果,網景6.0在2000年11月才被正式發佈。
隨著Gecko的開發,越來越多應用程序開始利用她。AOL作爲網景的母公司,終於在CompuServe 7.0和AOL for Mac OS X上使用Gecko。可惜,Windows版的AOL瀏覽器始終沒有利用過Gecko。
2003年7月15日時代華納解散了網景公司,大部分開發者被解僱。而Mozilla基金會亦在當天成立,繼續推動著Gecko的發展。時至今天,Gecko仍繼續由Mozilla的僱員和義工所維護和發展。
未來發展
Gecko將會繼續支持更多的網絡標準,例如XForms和SVG。Mozilla基金會作爲WHATWG的一份子,Gecko和其他排版引擎將會率先支援WHATWG所定下的規格,例如可供繪畫的canvas。
Gecko的繪畫元件在1.9版將會有重大的改變。它將會使用跨平臺的Cairo元件來代替作業平臺的繪畫接口。這個改變將會令Gecko擁有更佳的繪圖能力。而加上Glitz的話,更可利用3D硬件加速。而所有多媒體內容(如HTML/CSS、canvas、SVG等)將可使用同一管道作出渲染,SVG的特效亦可以應用於HTML上。因爲使用Cairo的關係,圖像亦可以被輸出作PNG和PDF,“另存本頁爲PDF”等作業將變得有可能。
標準支持
XML1.0
XHTML1.1
DOMLevel 1和2(支持部份DOM 3)
RDFJavaScript1.8(ECMAScript3,支持部分ECMAScript5)由SpiderMonkey實現
SVG(支持部份SVG 1.1)
XForms(藉由官方的擴展
應用程序
網頁瀏覽器
[1]Mozilla Application Suite
AOL forMac OS X
Aphrodite
BeonexCommunicator
Camino
CompuServe7.0
DocZilla
Epiphany
Galeon
IBM WebBrowser
K-Meleon
Kazehakase
ManyOne
Maxthon(本身並不支持,需要使用插件)
Minimo
Netscape 6.0和以上
Salamander
SeaMonkey
Skipstone
Flock
其他應用程序
ActiveStateKomodo
Liferea
MozillaActiveX Control
MozillaCalendar
MozillaThunderbird
GRE forGecko-Sharp
Presto
圖形接口的排版引擎:Presto – Opera 7.0及以上
Presto是一個由Opera Software開發的瀏覽器排版引擎,供Opera 7.0及以上使用。
Presto取代了舊版Opera 4至6版本使用的Elektra排版引擎,包括加入動態功能,例如網頁或其部分可隨着DOM及Script語法的事件而重新排版。
Presto在推出後不斷有更新版本推出,使不少錯誤得以修正,以及閱讀Javascript效能得以最佳化。
*目前引擎最新的版本爲2.9.168,應用在Opera11.50 snapshot 1049中
以 Presto 作爲基礎的應用程序
網絡瀏覽器:
Opera 7 與之後版本
OperaMobile
OperaMini
Nintendo DS Browser (基於 Opera)
Nintendo DSi瀏覽器(基於 Opera)
Nokia 770瀏覽器(基於 Opera)
Sony Mylo COM-1's瀏覽器(基於 Opera)
Wii Internet Channel瀏覽器(基於 Opera)
HTML編輯器:
Macromedia Dreamweaver MX 與之後版本,直至CS3
AdobeCreative Suite 2
AdobeCreative Suite 3
VirtualMechanics SiteSpinner Pro
===========================================
北京時間2013年2月14日消息,據國外媒體報道,知名瀏覽器廠商Opera當地時間週三宣佈,其瀏覽器的每月用 戶數已達到3億。而且,Opera還透露公司已經決定未來將採用WebKit(WebKit 是一個開源瀏覽器引擎,優勢在於高效穩定、兼容性好,且源碼結構清晰,易於維護)替代當前的瀏覽器核心引擎。[1]
北京時間2013年4月,據國外媒體報道,在二月份宣佈支持WebKit的Opera瀏覽器也確認了它將跟隨Google Chrome的決定,放棄WebKit,支持Blink瀏覽器引擎。[2]
webkit
百科名片
WebKit 是一個開源的瀏覽器引擎,與之相對應的引擎有Gecko(Mozilla Firefox 等使用)和Trident(也稱MSHTML,IE 使用)。同時WebKit 也是蘋果Mac OS X 系統引擎框架版本的名稱,主要用於Safari,Dashboard,Mail 和其他一些Mac OS X 程序。WebKit 前身是 KDE 小組的 KHTML,WebKit 所包含的 WebCore 排版引擎和 JSCore 引擎來自於 KDE 的 KHTML 和 KJS,當年蘋果比較了Gecko 和 KHTML 後,仍然選擇了後者,就因爲它擁有清晰的源碼結構、極快的渲染速度。Apple將 KHTML 發揚光大,推出了裝備KHTML 改進型 WebKit 引擎的瀏覽器 Safari。
簡介
WebKit 所包含的 WebCore排版引擎和 JSCore 引擎,均是從KDE的KHTML及KJS引擎衍生而來,它們都是自由軟件,在GPL條約下授權,同時支持BSD系統的開發。所以Webkit也是自由軟件,同時開放源代碼。
WebKit的優勢在於高效穩定,兼容性好,且源碼結構清晰,易於維護。
儘管Webkit內核是個非常好的網頁解析機制,但是由於以往微軟把IE捆綁在Windows裏(同樣的Webkit內核的Safari捆綁在Apple產品裏,GoogleChrome[1]捆綁在Google產品裏),導致許多網站都是按照IE來架設的,很多網站不兼容Webkit內核,比如登錄界面、網銀等網頁均不可使用Webkit內核。目前幾乎所有網站和網銀已經逐漸支持WebKit,未來可能將取代IE內核的瀏覽器。
WebKit 內核在手機上的應用也十分廣泛,例如 Google 的手機Android、 Apple 的 iPhone, Nokia’s Series 60 browser 等所使用的 Browser 內核引擎,都是基於 WebKit。
WebKit是開源的Web瀏覽器引擎,蘋果的Safari、谷歌的Chrome瀏覽器都是基於這個框架來開發的。WebKit 還支持移動設備和手機,包括iPhone和Android手機都是使用WebKit做爲瀏覽器的核心。
WebKit 是一個開源項目,其起源可追溯到 K Desktop Environment (KDE)。WebKit 項目催生了面向移動設備的現代 Web 應用程序。雖然設備本身的能力和形態因素都相當重要,但移動用戶最熱衷的仍然是內容。如果移動用戶可用的內容只是 Internet 用戶可用內容的一個很小的子集,那麼用戶體驗充其量也只能劃分爲二等。
WebKit 還應用在了桌面的 Safari 瀏覽器內,該瀏覽器是Mac OS X 平臺默認的瀏覽器。不管我們討論的是桌面版本還是 iPhone 或 Android 上的瀏覽器引擎,WebKit 均優先支持 HTML 和 CSS 特性。實際上,WebKit 還支持尚未被其他瀏覽器採納的一些 CSS 樣式 — 這些特性正在得到 HTML5 規範的考慮。
HTML5 規範是一個技術草案集,涵蓋了各種基於瀏覽器的技術,它包括客戶端 SQL 存儲、轉變、轉型、轉換等。HTML5 的出現已經有些時間了,雖然尚未完成,但一旦其特性集因主要瀏覽器平臺支持的加入而逐漸穩定後,Web 應用程序的簡陋開端也將成爲永久的記憶。Web 應用程序開發將成爲主導 — 並且不只是在傳統的桌面瀏覽器空間,還將在移動領域。移動將一躍成爲首要考慮,而不再是後備之選。[2]
應用平臺
在應用於Mac Os上的Safari之後,Webkit很快被廣泛地移植到其他系統平臺:
iOS:
2007年6月29日,iPhone上市,WebKit進入iPhone OS平臺,而且立即成爲iPhone OS平臺獨一無二的排版引擎。
Android:
Google 開發的手機操作系統Android中內置的瀏覽器也是採用的WebKit引擎。
Nokia S60:
諾基亞公司將WebKit移植到SymbianS60操作系統中,並開發了基於Webkit的手機瀏覽器“Web browser forS60”,廣泛用於諾基亞、三星、LG等基於Symbian S60操作系統的手機中。
Web OS:
Palm 推出第一款基於WebKit的操作系統,Palm Pre是第一款基於該系統的手機產品。
Linux:
儘管WebKit的原型K內核是由Qt寫成,但Linux下目前最受矚目的WebKit項目卻是Gnome領導的WebKit/Gtk+。隨着奇趣科技於2008年6月被Nokia收購,Qt方面也加快了WebKit的“迴歸”進程。
Midori,Google Chrome,GNOME的Epiphany、KDE的Konqueror,Arora是現在Linux系統下主要的Webkit內核瀏覽器。
Windows:
Webkit內核在Windows上發展最晚,Safari(forWindows),Midori,Googlechrome,具有雙核模式的傲遊3和傲遊雲瀏覽器是最爲常見的Webkit瀏覽器。2009年推出的safari和Chrome以及2010年推出的搜狗瀏覽器V2.0Beta和傲遊3.0beta都使用的webkit引擎完全通過了acid3測試滿分!
引擎分類
現在瀏覽器的內核引擎,基本上是四分天下:
Trident: IE 以Trident 作爲內核引擎;
Gecko: Firefox 是基於 Gecko 開發;
WebKit: Safari, Google Chrome,傲遊3 基於 Webkit 開發。
Presto: Opera的內核,但由於市場選擇問題,主要應用在手機平臺--Opera mini
注:2013年2月Opera宣佈轉向WebKit引擎
注:2013年4月Opera宣佈放棄WEBKIT,跟隨GOOGLE的新引擎blink
內核介紹
webkit內核的瀏覽器
2008年9月2日,谷歌公司發佈的第一個版本GoogleChrome(中文名爲谷歌瀏覽器)就採用了Webkit引擎。
2009年,廣受關注的Android的自帶的瀏覽器也是Webkit內核,加載網頁速度比IE手機瀏覽器快了近一倍。
2010年1月24日,搜狗公司發佈搜狗瀏覽器V2.0Beta,採用Chromium引擎,並支持與IE引擎互相切換。
2010年1月24日,傲遊瀏覽器3.0beta發佈。2012年5月31日已發佈3.3.9.1000。傲遊3修正了衆多假死問題。擁有雙引擎切換功能。
2010年9月16日 360極速瀏覽器發佈,這是一款使用Chromium開源代碼(基於webkit內核)的瀏覽器,網頁瀏覽比ie快一倍。
2010年6月11日阿里雲瀏覽器內測第一版(0.1.9.0)發佈,這是一款集成Chromium內核、IE內核的瀏覽器。
2010年5月25日,騰訊推出的[3]QQ瀏覽器採用webkit內核以及IE內核。
2011年7月18日,百度推出的百度PC瀏覽器支持IE和Webkit雙內核智能切換。
2013年2月,Opera宣佈將用WebKit替代當前的核心瀏覽器引擎。[4]
2013年4月4日 谷歌星期三(4月3日)宣佈,他們將利用 WebKit 渲染引擎開發自主的網頁渲染引擎“Blink”。[5]