视网膜支持QML

Rob*_*tex 3 macos qt qml retina-display

如何在QML中使用视网膜支持?如何选择正确的尺寸和正确的图像分辨率?应用程序需要在视网膜和非视网膜设备上工作.

mhc*_*rvo 7

这里可以找到MortenJohanSørvig关于该主题的非常好的综合性文章.

Qt Quick 2和Qt Quick Controls在hdpi支持方面运行良好.需要考虑的重要事项是栅格内容,如文章中所述:

作为应用程序开发人员,您有两种选择:(忽略"无所事事"选项)

Replace existing raster content with a high-resolution version
Provide separate high-resolution content
Run Code Online (Sandbox Code Playgroud)

第一个选项很方便,因为每个资源只有一个版本.但是,您可能会发现(或您的设计师会告诉您)在为特定分辨率创建时,图标等资源看起来最佳.为了促进这一点,Qt采用了图像文件名的"@ 2x"约定:

foo.png foo@2x.png

高分辨率内容可以与原件并排提供.当QML Image元素和QIcon需要时,将自动加载"@ 2x"版本:

Image {source ="foo.png"} QIcon图标("foo.png")

(记得为QIcon设置AA_UseHighDpiPixmaps)


在话题另一个线程在这里.