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]