Qt WebEngine
Qt WebEngine 是一个基于 Chromium 的网页渲染引擎,集成了 Qt 框架,用于在 Qt 应用程序中嵌入 Web 内容。
它提供了丰富的 API 支持,通过 QML 和 C++ 接口,开发者可以构建具有现代 Web 功能的桌面和嵌入式应用程序。
一、Qt WebEngine架构
Qt WebEngine 主要组件包括:
-
内核层(Qt WebEngine Core) :
用来与Chromium交互,提供了现代 Web 浏览器所需的核心功能,如 HTML5、CSS、JavaScript 的支持,以及高效的页面渲染和资源加载。
-
封装层(Qt WebEngine Widgets) :
Qt WebEngine Widgets用来创建C++ Widgets部件的Web程序,Qt WebEngine用来创建基本Qt Quick的Web程序,将 Chromium 的功能通过 Qt API 暴露给开发者,提供与 Qt 生态系统的无缝集成。
-
进程层(Qt WebEngine Process):
基于 Chromium 的多进程设计,使用独立的渲染进程和主进程以增强稳定性和安全性。
其中,封装层的Qt WebEngine Widgets的架构如下,以下省略前缀**QWebEngine
**:
核心类:
-
View
:展示 Web 内容的控件,是Page的可视化容器。 -
Page
:代表Web页面的类,包含了页面的内容、状态和功能。 -
Profile
:表示浏览器配置文件的类,包含了缓存、Cookie和安全策略等设置。 -
Settings
:表示浏览器设置的类,包含了字体、颜色、JavaScript和插件等选项
Profile用于区分不同的Page,属于同一个Web引擎配置的所有网页都会共享设置Settings、脚本Script和Cookies。
其它:
History
:管理浏览历史Action
:管理菜单动作Script
:管理网页脚本Cookie
:…- …