2013-06-20 36 views
3

Qt接口在视网膜显示器上当前看起来很可怕,因为它们可以扩展。它可以使用Info.Plist编译应用程序,但是没有人有动态Python解决方案,例如创建的接口PySide?在视网膜显示器上优化Python QT应用程序

+2

也许你应该解释你如何扩展你的GUI,结果怎么样看起来'可怕'。 – Luke

回答

3

你没有说你正在使用的是哪个Qt版本。 Qt v5.1的最新版本支持Retina。但5.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

+0

错过了补丁信息。谢谢djf。 – Marcus1219

1

我基本找到了解决方法:确保你已经安装了QT >= 5,因为它已经在该版本中引入,其次我现在正在运行python3.3

享受你的视网膜

+1

你忘记输入什么解决方案:) –