3

如本文档中所述,我正在使用带有 QGraphicsView 的 QGraphicsScene 。我打算最终将 Qt 小部件覆盖在我的 OpenGL 渲染场景之上。

当我启动一个仿照上面教程建模的虚拟应用程序时,渲染的视图是严重像素化的——HiDPI 根本不起作用。根据本文档,我手动添加了:

<key>NSHighResolutionCapable</key>
<string>True</string> 

到应用程序的 Info.plist 文件,仍然没有效果。(似乎这应该默认为true反正,所以也许这并不奇怪)。

除了上述之外,我还没有找到让 HiDPI 工作所需的东西。我没有使用 QtCreator,我的 Qt 安装是 macports' qt4-mac。我错过了什么?

4

2 回答 2

1

Qt5 为 OpenGL 上下文启用 HiDPI,但不为小部件和 QGraphicsItems 启用。

根据这个错误,在 HiDPI 中的 QGLWidget 上渲染小部件和 QGraphicsItems 的支持尚不支持;它们将以标准分辨率渲染并调整大小。

如果 QGraphicsView 有一个普通的 QWidget 来支持它,它将在 HiDPI 中呈现。如果可以在不使用 OpenGL 的情况下使用 QGraphicsItems 实现所需的效果,那么在改进 HiDPI 支持之前,这可能是更可取的。

于 2014-06-05T22:46:50.950 回答
0

我刚刚找到了解决方案:使用--graphicssystem native. 或者,如果您可以更改您可以使用的来源QApplication::setGraphicsSystem("native");

于 2015-03-28T21:48:46.513 回答