Trident (排版引擎)
Trident(又稱為MSHTML、IE核心),是微軟的視窗作業系統(Windows)搭載的網頁瀏覽器—Internet Explorer的排版引擎的名稱,它的第一個版本隨着1997年10月Internet Explorer第四版釋出,之後不斷的加入新的技術並隨着新版本的Internet Explorer釋出。在Internet Explorer第七版中,微軟對Trident排版引擎做了重大的變動,除了加入新的技術之外,並增加對網頁標準的支援[2]。儘管這些變動還是不足以彌補已經有相當大程度上落後了其它排版引擎的差距,如Gecko、KHTML、Webkit、Blink及Presto。
開發者 | 微軟 |
---|---|
首次釋出 | 1997年8月 |
目前版本 |
|
程式語言 | C++[1] |
類型 | 應用程式框架、軟件元件 |
許可協定 | 專有 |
網站 | msdn |
除此之外,微軟還有另一個網頁瀏覽器排版引擎,稱為Tasman,它是使用在「Internet Explorer for Mac」的排版引擎。相較於Trident,Tasman引擎對網頁標準有較佳的支援。與普遍的看法相反的是,微軟已經停止了Mac版本的Internet Explorer的開發,但Tasman的開發仍舊持續,新版本的Tasman引擎仍被應用在一些微軟產品上,例如Office for Mac。
在Microsoft Edge瀏覽器中,Trident被其分支EdgeHTML所取代[3]。
軟件開發
Trident引擎被設計成一個軟件元件(模組),使得其他軟件開發人員很容易的將網頁瀏覽的功能加到他們自行開發的應用程式裏。微軟提出了一個稱為「元件物件模型」(COM)的軟件介面架構。供其它支援的元件物件模型開發環境的應用程式(如:C++及.NET)存取及編輯網頁。例如,由C++所撰寫的程式可以加入瀏覽器控制項裏,並透過Trident引擎存取當前顯示在瀏覽器上的網頁內容及網頁的各種元素的值,從瀏覽器控制項觸發的事件亦可被程式擷取並進行處理。Trident引擎所提供的所有函式庫可以透過與mshtml.dll這個檔案的連結而達成撰寫程式時所需要的功能。
版本
Trident版本 | MSHTML.dll版本 | Internet Explorer版本 | 更新 |
---|---|---|---|
不明 [4] | 4.0.x | 4 | 首發 |
5.0.x | 5 | 增加對CSS 1的支援及改變對CSS 2的渲染 | |
5.5.x | 5.5 | 修正部份CSS的排版控制 | |
6.0.x | 6 | 修正box model[a]的錯誤及新增quirks mode[b]的切換功能,以增加對DTD的支援 | |
7.0.x | 7 | 修正部分CSS排版處理上的錯誤以及增加對PNGalpha通道(半透明)的支援 | |
4.0 [5] | 8.0.x | 8 | 第一個通過Acid2測試的版本[6] |
5.0 [7] | 9.0.x | 9 | 首次支援HTML5、SVG、CSS3及採用新的JScript引擎。另外,首次加入利用DirectX中的硬件加速改善網絡應用程式的效能 |
6.0 [8] | 10.0.x | 10 | 支援CSS3多欄式排版、格子對齊、浮動式區塊排版、漸變以及ECMA5嚴格模式 |
7.0 | 11.0.x | 11 | 支援WebGL和SPDY。增強對HTML5標準的支援[9]和效能提升[10] |
用例
除了Internet Explorer第四版以後的版本使用Trident排版引擎之外,還有其它的應用程式也使用了Trident排版引擎所提供的技術(參見Internet Explorer殼層)。它也用於從Windows 98到Windows XP及Windows Server 2003所有版本的Windows Explorer[11]。Windows 2000在新增/移除程式中使用Trident來渲染安裝程式清單[12],以及在Windows XP中也被用於用戶帳戶控制面板,這是一個HTML應用程式[13]。
其他使用Trident的一些應用程式還包括:
- AOL Explorer
- Avant Browser
- Maxthon
- GreenBrowser
- Netscape Browser,在IE模式下使用Trident來渲染網頁
- Sleipnir
- GOSURF
- MyIE
- 騰訊TT
- 世界之窗
- Google Talk,使用Trident引擎來渲染對話介面
- IE Tab,Mozilla Firefox和Google Chrome網頁瀏覽器的一個擴充套件,使用Trident排版引擎來瀏覽網頁
- RealPlayer,播放程式內附的網頁瀏覽器
- RealNetworks,旗下的網絡遊戲公司RealArcade所提供的服務
- 微軟公司的Microsoft Office Outlook以及Outlook Express電子郵件軟件使用Trident技術協助HTML格式的信件資料排版以及「Outlook Today」畫面的顯示
- 微軟公司的Encarta百科全書及其相關產品
- 微軟公司的Windows Media Player使用Trident技術產生「Media Information」頁面
- 微軟公司的Microsoft Office InfoPath 2003(以XML為基礎的表格開發器)產品
- 微軟公司的MSN Messenger即時通訊軟件利用該技術處理使用Flash技術的遊戲或比賽以及廣告的展示資訊
- 跨平台的檔案閱讀軟件TomeRaider
- 維爾福軟件公司的Steam內容傳送系統使用Trident技術在該軟件的「儲存」及「更新訊息」的功能。
註釋
參考資料
- ^ Hachamovitch, Dean, Internet Explorer 8 and Acid2: A Milestone, Microsoft, 2007-12-14 [2010-01-13], (原始內容存檔於2011-08-25)
- ^ Details on our CSS changes for IE7. [2010-02-23]. (原始內容存檔於2008-07-30).
- ^ What's powering Spartan? Internet Explorer, of course. Neowin.net. [2016-05-10]. (原始內容存檔於2015-12-16).
- ^ Lawrence, Eric, re: Introducing IE9’s User Agent String, Microsoft, 2010-03-24 [2016-04-30], (原始內容存檔於2010-03-27)
- ^ Lawrence, Eric, The Internet Explorer 8 User-Agent String (Updated Edition), Microsoft, 2009-01-09 [2010-01-13], (原始內容存檔於2010-01-25)
- ^ Hachamovitch, Dean, Internet Explorer 8 and Acid2: A Milestone, Microsoft, 2007-12-19 [2010-01-13], (原始內容存檔於2011-08-25)
- ^ Silbey, Marc, Introducing IE9’s User Agent String, Microsoft, 2010-03-23 [2016-04-30], (原始內容存檔於2010-03-27)
- ^ Ross, Tony, The IE10 User-Agent String, Microsoft, 2011-04-15 [2016-04-30], (原始內容存檔於2015-12-04)
- ^ Windows 8.1 and Internet Explorer 11 will support WebGL, SPDY, but no WebRTC, ExtremeTech, 2013-06-26 [2016-04-30], (原始內容存檔於2016-03-23)
- ^ Internet Explorer 11 for Windows 7 launched: Brings improved rendering, speed, NDTV Gadgets360, 2013-11-08 [2016-04-30], (原始內容存檔於2016-03-03)
- ^ How to Add or Remove Windows Desktop Update. [2011-12-03]. (原始內容存檔於2011-12-04).
- ^ Add/Remove Programs tool displays installed programs incorrectly. [2011-12-03]. (原始內容存檔於2011-12-11).
- ^ Internet Explorer Script Error error message when you click User Accounts in Control Panel many times in quick succession on a Windows XP-based computer. [2011-12-03]. (原始內容存檔於2011-12-09).