【发布时间】:2016-11-29 14:25:39
【问题描述】:
我需要创建简单的跨平台 C++ 项目来渲染(显示)html 页面(让它成为显示帮助材料的应用程序)。此页面可以包含一些图像和样式(在 html 中插入 css)。因此,我寻找在我的项目中拥有下一个功能的最佳方法:
- 可以显示和缩放格式化的 html 文本;
- 可以显示和缩放图像以及文本;
- CSS 支持;
- 易于部署 - 应用中使用的小部件应该是轻量级的,并且不应该有很多额外的依赖项。
我尝试使用QTextEdit。但不幸的是,正如 Qt 文档所说,QTextEdit 缩放方法不会改变任何图像的大小。
还尝试在那里使用QWebView (Qt5.4)。但是在切换到 Qt5.6 之后,我注意到 Qt WebKit 已被弃用并且不再受支持。另一方面,用 Qt WebEngine 中的功能替换 Qt WebKit 功能是痛苦的。此外,Qt WebEngine 模块非常庞大,并且与我实际上未使用的部分有很多依赖关系(例如,它很大程度上依赖于 chromium Web 引擎)。所以我的应用程序中不需要完整的网络浏览器。
那么实现上述功能的最佳方法是什么(可能是一些可以免费使用的轻量级小部件)?
提前致谢。
【问题讨论】:
-
您可以使用
QTextEdit方法,但使用QGraphicsProxyWidget将其置于QGraphicsView/QGraphicsScene上下文中,然后使用QGraphicsView::scale执行缩放。