在视网膜显示屏上优化 Python QT 应用程序

2024-03-25

目前,Qt 界面在放大时在视网膜显示屏上看起来很糟糕。可以使用 Info.Plist 来编译应用程序,但是有人有动态 python 的解决方案,例如在 PySide 中创建的界面吗?


你没有说你正在使用什么 Qt 版本。最新版本 Qt v5.1 中对 Retina 的支持最好。不过v5.0的也不错。如果您仍在使用 Qt v4.8,则必须手动应用patches https://codereview.qt-project.org/#change,54636启用高 DPI。

高 DPI 模式由 Info.Plist 文件中的以下键控制:

<key>NSPrincipalClass</key>
<string>NSApplication</string>
<key>NSHighResolutionCapable</key>
<string>True</string>

Qt 5 使用光栅绘画引擎并通过缩放画家变换来实现高 dpi 矢量图形。如果NSHighResolutionCapable未设置,应用程序将以“正常”分辨率呈现,该分辨率将简单地放大。这在高分辨率显示器上看起来很糟糕。另一方面,高分辨率模式完全向后兼容,并且在较低分辨率的显示器上呈现良好。我会让它一直处于启用状态。

启用高 DPI 后,您仍然必须确保所有光栅内容(图像资源)具有足够高的分辨率才能良好显示。请参阅 QT 博客文章支持 Mac OS、iOS 和 X11 的 Retina 显示屏 http://blog.qt.io/blog/2013/04/25/retina-display-support-for-mac-os-ios-and-x11/了解完整详情。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在视网膜显示屏上优化 Python QT 应用程序 的相关文章

随机推荐