python html5 bootstrap 视频教程
德云社区 门户 IT 编程 编程语言 C/C++ 查看内容

Qt5.5 为向要把 Web 渲染引擎核心 WebKit 改为 Google Chromium Blink

2016-10-28 02:46| 发布者: digitser| 查看: 4928| 评论: 0|原作者: liuliuab1

摘要: Qt5.5 为向要把Web渲染引擎由WebKit改为Google Chromium Blink核心 2015 年 07 月 01 日 Qt 5.5 正式发布。从 QT 5.3 开始,QT 就有可很好地运行在 Windows 8 上的新 WinRT API,由此,只要及时更新 Qt 5.5.x 就能 ...
自动立式分页纸箱赋码系统 ── 全自动 专业 立式分页 瓦楞纸 水性油墨 贴标 喷码 检测系统
Qt5.5 为向要把 Web 渲染引擎核心 WebKit 改为 Google Chromium Blink

2015 年 07 月 01 日 Qt 5.5 正式发布。从 QT 5.3 开始,QT 就有可很好地运行在 Windows 8 上的新 WinRT API,由此,只要及时更新 Qt 5.5.x 就能完美支持 Windows 10。


Qt WebKit、Qt Quick1 和 Qt Script 从 Qt 5.5 起弃用,虽还可使用,建议以 Qt WebEngine、Qt Quick 和 Qt QML 替代,这些能完全兼容 JavaScript 引擎。


把 Web 渲染引擎从 WebKit 改为 Chromium。Chromium 更侧重于跨平台,在桌面平台和 Android 都可用,而 WebKit 在这方面表现要差一些,必须在某些系统上额外开发才能支持。Chromium 对 HTML5 特性支持更加完美,且 Chromium 是发展最快的浏览器。


WebKit 早先由 Apple 由 KHTML 项目 fork 出来,用于 Safari 浏览器的 Web 引擎。由于宽松的协议、轻量级的设计和便捷的应用程序内嵌 API,WebKit 逐渐变得流行起来,除了 Google Chrome/Chromium 和 Safari,它在移动终端 (Symbian S60,Android,iOS) 到 Toolkit 集成 (GTK+, Qt4) 都有不错的收获。


从 Qt 2007年第一次引入 WebKit 以来,Web 技术已经发生了很大变化。从只占很小的市场份额开始到现在,webit已经成为最广泛使用的 web 引擎。QtWebKit 是除了苹果之外做的比较好的,很多项目和公司也逐渐加入到这个项目开发中来。


Google Chromium 项目在其中发挥了很重要的作用,逐渐成了 WebKit 最大的贡献者(仅次于苹果和 QT,排第三)。


智能编辑重构 批处理式 "数字 Python IDE" 集成开发环境 (集成高效 Cython PyInstaller 批处理小程序)

http://dt.digitser.cn/zh-CN/ide/idepy/index.html


Google Blink Web 引擎

到 2010 年随着 OS X Lion 一起面世的 WebKit2。由于 WebKit2 在 WebCore 层面上实现的进程隔离在一定程度上与 Google Chrome/Chromium 自己的沙箱设计存在冲突,故 Google Chrome/Chromium 一直停留在 WebKit,使用 Backport 的方式实现和主线 WebKit2 的兼容。显而易见这增加了 WebKit 和 Chromium 的复杂性,且在一定程度上影响了 Chromium 的架构移植工作。


基于以上原因,Google 决定从 WebKit fork 出自己的 Blink Web 引擎。Google Blink 的横空出世,也使它和其他的 WebKit 浏览器开发商包括:苹果、诺基亚、黑莓,更彻底地分道扬镳。


Google Chrome 28 开发版本的版本说明中还在使用 WebKit,而 Chrome 28.0.1469.0 就已替换为 Blink。


自从 Blink 被真正集成到 Google chromium 中,WebKit 的发展就有了两个不同分支,且这两个版本的代码迅速分开了。基于这个原因,Qt 的 WebKit 团队需要对 chromium 和 webkit 这个两个分支进行详细的调查,决定在未来使用哪一个分支,以便给 Qt 的用户提供更好的 web 引擎。


经过一段时间对 2 个分支的调查研究,QT 最终决定使用 chromium 的 webkit。原因如下:


Chromium 跨平台

chromium 浏览器已在许多主要桌面平台和安卓系统上运行。而这一点 webkit 是不行的,必须花很大精力开发才能支持所有的操作系统。


由于 chromium 跨平台,可把更多精力放在提供更容易使用的 API,和 Qt 无缝集成。


Chromium 有好多现成可用功能

这些功能在 webkit 上,要花很大精力开发。譬如:跨平台、多媒体、HTML5 支持。


更稳定、质量更好

chromium 有严格的质量控制,可节省很多测试精力,能够提供一个更稳定、质量更好的 web 引擎。


兼容性更好

相比 webkit,chromium 可以和 widget、Qtquick 更好的无缝集成。


chromium 是目前最具活力和发展最快的移动浏览器,从战略发展的角度,Qt 决定使用 chromium 做 web 引擎。


基于稳定性和安全性的考虑,chromium 中对 web 页面的渲染是在不同的进程中。所以,Qt 暂时无法提供某些 API,比如 QWebElementAPI。由于 QObject 和 web 页面的通信是异步的,所以必须修改 QObject。


QtWebKit 和 Qt webEngine

那么,这些改变对 webkit 的用户意味着什么呢?


首先不用担心,大多数情况下,应用程序中的 QtWebKit 将运行良好,且在未来一段时间都会如此。Qt5.2 版发布后,digia 的精力会主要放在新 Qt webEngine 上。所以,如果想使用 HTML5 新特性,建议把应用程序或设备迁移到 digia 稍后发布的新的 QtwebEngine 上。


digia 会尽最大的努力实现 Qt webkit 到 Qt webEngine 的无缝移植。对于 webview,我们会提供接近 100% 的兼容性。对于基础的 web view API,在新的 QtwebEngine 中代码是完全兼容的。如果使用了 QObjectbridge 或是 QWebElement,建议稍等一段时间再移植。在 Qt webEngine 的第一个版本中,可能不会提供这样的 API。


Qt webkit 将不再开发,现有的版本可以继续使用。对于商业版本用户,digia 一定会提供维护帮助。


digia 现在正在进行的工作是能够尽快提供一个新的 QtwebEngine 技术预览。目标是和 Qt5.2 一起发布。完全支持的版本要到 Qt5.3。第一个发布版本支持 windows、macOS x、linux 和嵌入式 linux。


扫一扫关注 德云社区 微信公众号

参考:
Qt5.5 ── Android iOS Linux Mac OS X Windows C++应用 LGPL或GPL开源许可

版权声明:
本文为独家原创稿件,版权归 德云社区,未经许可不得转载。

路过

雷人

握手

鲜花

鸡蛋
AI人工智能 语音助理 人工翻译 教程

相关阅读

最新评论

相关分类

CSS3 官方中文文档编制 手册教程 人工翻译 更新日志
CSS3 官方中文文档编制 手册教程 人工翻译 更新日志 CSS3 中文文档编制采用机器辅助 + 全人工翻译,完全采用 数字翻译 的文档翻译流程进行汉化 (未采用任何第 3 方工具),[743/2022-07-31]
CSS3 官方中文文档编制 手册教程 帮助文件 人工翻译
CSS3 官方中文文档编制 手册教程 帮助文件 人工翻译 CSS3 中文文档编制采用机器辅助 + 全人工翻译,完全采用 数字翻译 的文档翻译流程进行汉化 (未采用任何第 3 方工具),[896/2022-07-31]
SolidWorks 2020 非对称Conic Rho圆角 抽壳出现模型穿刺
SolidWorks 2020 非对称Conic Rho圆角 抽壳出现模型穿刺 标准对称圆角最常用,但有时偶尔也会用到非对称圆角。 特别是模具、五金、电子、手饰、汽车、家具、玩具、等对圆[822/2022-05-25]
NumPy 1.22 官方中文文档编制 手册帮助 更新日志
NumPy 1.22 官方中文文档编制 手册帮助 更新日志 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 NumPy 1.22。 NumPy 1.22 中文文档编制采用[518/2022-05-22]
NumPy 1.22 官方中文文档编制 手册帮助 全人工翻译
NumPy 1.22 官方中文文档编制 手册帮助 全人工翻译 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 NumPy 1.22。 NumPy 1.22 中文文档编制采[588/2022-05-22]
Pillow 9.1.1 官方中文文档编制 手册帮助 更新日志
Pillow 9.1.1 官方中文文档编制 手册帮助 更新日志 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 Pillow 9.1.1。 Pillow 9.1.1 中文文档编[554/2022-05-22]
Pillow 9.1.1 官方中文文档编制 手册帮助 全人工翻译
Pillow 9.1.1 官方中文文档编制 手册帮助 全人工翻译 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 Pillow 9.1.1。 Pillow 9.1.1 中文文档[515/2022-05-22]
PyMuPDF 1.19.6 官方中文文档编制 手册帮助 更新日志
PyMuPDF 1.19.6 官方中文文档编制 手册帮助 更新日志 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 PyMuPDF 1.19.6。 PyMuPDF 1.19.6 中文[1073/2022-05-22]
PyMuPDF 1.19.6 官方中文文档编制 手册帮助 全人工翻译
PyMuPDF 1.19.6 官方中文文档编制 手册帮助 全人工翻译 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 PyMuPDF 1.19.6。 PyMuPDF 1.19.6 中[903/2022-05-22]
Qt 6.3.0 官方中文文档编制 手册教程 帮助文件 人工翻译
Qt 6.3.0 官方中文文档编制 手册教程 帮助文件 人工翻译 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 Qt 6.3.0。 Qt 6.3.0 中文文档编制[2369/2022-05-02]
Qt 6.3.0 官方中文文档编制 手册教程 人工翻译更新日志
Qt 6.3.0 官方中文文档编制 手册教程 人工翻译更新日志 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 Qt 6.3.0。 Qt 6.3.0 中文文档编制采[1964/2022-05-02]
MAGIX Music Maker Premium - 易学易用 功能强大的可视化编曲软件
MAGIX Music Maker Premium - 易学易用 功能强大的可视化编曲软件 MAGIX Music Maker 是德国 Magix 出品的可视化编曲软件,功能强大、使用简单、容易上手。 MAGIX Music Ma[1675/2022-04-11]
MQTT - 消息队列遥测技术 M2M机器到机器 IoT物联网 通信协议
MQTT - 消息队列遥测技术 M2M机器到机器 IoT物联网 通信协议 MQTT 是 Message Queuing Telemetry Transport 的缩写,中文译为消息队列遥测传输。 MQTT 是 ISO 标准 (ISO/I[557/2022-02-24]
数字 Python IDE 2022 注册机 注册码生成器 附详细破解方法
数字 Python IDE 2022 注册机 注册码生成器 附详细破解方法 数字 Python IDE 目前还在不断研发 进步中,虽不太成熟,但其新理念很有特色 特别适于多版本 多文档 多工程并行[619/2022-02-01]
数字翻译 2022 注册机 注册码生成器 内存破解器 附详细用法
数字翻译 2022 注册机 注册码生成器 内存破解器 附详细用法 数字翻译目前还在不断研发 进步中,虽不太成熟,但其新理念很有特色 特别适于 HTML 文档本地化 (面向高精度 超[566/2022-02-01]

Archiver|Sitemap|小黑屋|德云社区   

GMT+8, 2024-2-23 05:54 , Processed in 0.039188 second(s), 27 queries .

工业和信息化部: 粤ICP备14079481号-2

技术支持 乐数软件     版权所有 © 2014-2021 德云社区    

返回顶部