Qt 界面目前在视网膜显示器上看起来很糟糕,因为它们按比例放大。可以将 Info.Plist 用于已编译的应用程序,但有没有人有动态 python 的解决方案,例如在 PySide 中创建的界面?
最佳答案
您没有说明您使用的是什么 Qt 版本。 Retina 支持在最新版本 Qt v5.1 中最好。不过v5.0的也不错。如果您仍在使用 Qt v4.8,则必须手动应用 patches启用高 DPI。
高 DPI 模式由 Info.Plist 文件中的以下键控制:
<key>NSPrincipalClass</key>
<string>NSApplication</string>
<key>NSHighResolutionCapable</key>
<string>True</string>
Qt 5 使用光栅绘图引擎,通过缩放绘图变换实现高 dpi 矢量图形。如果未设置 NSHighResolutionCapable
,应用程序将以“正常”分辨率呈现,该分辨率将简单地按比例放大。这在高分辨率显示器上看起来很糟糕。另一方面,高分辨率模式完全向后兼容,在低分辨率显示器上也能很好地呈现。我会一直启用它。
启用高 DPI 后,您仍然必须确保所有光栅内容(图像资源)具有足够高的分辨率才能很好地显示。请参阅 QT 博客文章 Retina display support for Mac OS, iOS and X11了解全部详情。
关于python - 在 Retina 显示器上优化 Python QT 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17211006/