在 Qt 地图应用程序 ( QGIS ) 中,地图画布是 QGraphicsItem。我们不使用任何 OpenGL,每个元素都使用 QPainter 渲染。
除了地图画布外,我们的应用程序在 HiDPI 上正确显示。
请参阅地图中的像素线:
我看过的:
对于画家,我们使用QPainter::Antialiasing
.
在这里发布代码并不容易,但这里有一个链接到渲染线的源代码。
我一直在尝试做一个最小的复制示例,但我在这里仍然失败。
一个提示是,每当鼠标在地图画布上时,光标的大小就会加倍(它太大)。我会说大约 2 倍大,这是我的设备像素比。
我不确定这是仅 Mac 的问题(它似乎也发生在 Linux 上,但不在 Windows 上)。Qt 关于可扩展性的文档指出 Mac 以不同方式处理它。
我真的不知道要寻找什么,我希望得到一些提示。