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).