Qt high DPI

http://doc.qt.io/qt-5/highdpi.html

Qt Support

  • Ability to provide pixmaps or artwork for high resolution: see Drawing High Resolution Versions of Pixmaps and Images.
  • Qt 5.4 introduces experimental support for scaling by by device pixel ratio similar to OS X to the platform plugins for Windows and Unix (XCB). This is controlled by the environment variable QT_DEVICE_PIXEL_RATIO. It can be set to a numerical value to be used as scale factor or "auto" which causes the scale factor to be determined by checking the monitor size.

    It is recommended to use the Fusion style.

Migration of Existing Applications

In order to get an application designed for low DPI values running on a high resolution monitors quickly, consider one of the scaling options (let the application run as DPI Unaware on Windows or set the environment variable QT_DEVICE_PIXEL_RATIO to "auto". These options may incur some scaling or painting artifacts, though.

In the longer term, the application should be adapted to run unmodified:

  • Always use the qreal versions of the QPainter drawing API.
  • Size windows and dialogs in relation to the screen size.
  • Replace hard-coded sizes in layouts and drawing code by values calculated from font metrics or screen size.
时间: 2024-10-13 02:55:10

Qt high DPI的相关文章

Qt之高DPI显示器(一) - 解决方案整理

目录 DPI发展 1.PPI 2.DPI 一.Win自适应系统 二.Qt机制 1.Windows系统DWM缩放 2. Qt适配高DPI 3.适配DPI结论 三.Qt适配 四.自己适配 1.窗口大小 2.字体大小 3.间距 4.图标 五.参考文章 最近一直在处理高DPI问题,也花费了不少功夫,前前后后使用了多种解决方案,各种方案也都有利弊,笔者最终采用了自适配方案,虽然复杂一些,但是结果可控.这里把处理的过程记录下来,留给有同样需求的同学 DPI发展 随着显示器质量的增高,高分屏逐渐增多,很多用户

是什么让 Ubuntu 选用 Qt 而不是 GTK?

是什么让 Ubuntu 选用 Qt 而不是 GTK? 一个正在发生的事实,Ubuntu正在不断Qt化!我曾一直在抱怨的Software Center,今日一看源码,竟然有softwarecenter/ui/qml的分支,虽然跑起来还挺难看的样子,但是可以想像未来是肯定要取代GTK版本了 ------------------------------------------------------------------------------------- 这是Mark Shuttleworth下

Qt Lighthouse学习(二),就是QPA(Qt Platform Abstraction) 项目的名字

上一次关注Qt Lighthouse是在6月初,可是现在都8月底了.时间真快... Lighthouse 是 QPA(Qt Platform Abstraction) 项目的名字,它使得将Qt移植到新的平台变得比较简单.尽管现在它已经完全融入到了Qt主干代码中,lighthouse作为独立项目已经不复存在了,但本文中,我们继续使用这个名字(虽然已不太恰当). QPA 抽象了什么? 不妨看看QPA前后,有何不同: 之前 考虑一下,传统的Qt是如何实现图形界面的夸平台: 针对不同的窗口系统(WS)定

DPI , dot per inch

DPI , dot per inch ,即每英寸包含的点数.还有一个概念是 PPI ,即每英寸包含的像素数.一般我们用 DPI 就够了,对于专业人士处理超高 DPI 的场景,使用 PPI 可能更精确一些.在 Qt 中,只有 DPI ,所以我们单说它吧. 这个值越大,像素密度越大,小尺寸的屏幕就可以有大分辨率.比如有的 Android 手机, 3.7 吋屏幕就能提供 960x540 的分辨率,而有的手机, 5 吋屏幕却提供 800x480 的分辨率.这两种不同屏幕的尺寸和分辨率的手机,5 吋屏看起

Qt 5.6.0 动态编译(VS2013 x86 target xp openssl icu webkit)

经历了多次延期后,在3月16号,Qt发布了5.6.0版本(全面支持高DPI无疑是一个亮点),从5.6.0版本开始,Qt直接移除了webkit模块,让webengine作为其替代选择,不过webengine无法为WinXP编译(参考:https://bugreports.qt.io/browse/QTBUG-49900).如果你还有用户仍在WinXP上使用webkit,Qt官方给的解决方案是你可以自己编译webkit.当然编译一向都不是一个很容易的东西,笔者在编译过程中也出现了很多问题,不过最后还

(转)VS2015的跨平台特性会对Qt带来冲击吗

VS2015的跨平台特性会对Qt带来冲击吗 原文来自:http://qiusuoge.com/13352.htmlvs2015支持c++开发跨平台的库,这样对于Qt而言会有多大的冲击呢?将来用VS开发c++跨平台和QT开发跨平台应用发展趋势各是怎样的?如果现在新项目要开发跨平台的高性能应用,如果用c++是选择QT还是VS2015的跨平台特性呢?另外VS2015跨平台对于界面的支持如何? 注意:不是在讨论IDE,也不是在讨论.net的跨平台!而是VS支持c++跨平台的特性.既然要跨平台,对于与系统

Qt Quick实现的疯狂算数游戏

使用 Qt Quick 写了个小游戏:疯狂算数.支持 Windows 和 Android 两个平台. 就差您这一票了亲:博客之星评选,点击投我一票,谢谢.投过了也可以点哦,每天都可以投投一票. 游戏简单,但牵涉到下面你的 Qt Quick 主题: 自己实现一个按钮 自适应分辨率 国际化 QML与C++混合编程 APK图标设置 APK名称汉化 动画 其实所有这些内容,在我的书<Qt Quick核心编程>里都讲到了,感兴趣的朋友可以看我的书. 大概来看一下吧,先看效果. Android 手机运行效

Qt on Android:创建可伸缩界面

使用 Qt 来开发 Android 应用,也需要适配不同移动设备,适配多种多样的屏幕和分辨率.这次我们大概来讲一下如何使用 Qt 提供的机制来创建可伸缩的界面. 博客之星评选,点击投我一票,谢谢.投过了也可以点哦,每天都可以投投一票. DPI 必须要解释一下 DPI . DPI , dot per inch ,即每英寸包含的点数.还有一个概念是 PPI ,即每英寸包含的像素数. 这个值越大,像素密度越大,小尺寸的屏幕就可以有大分辨率.比如有的 Android 手机, 3.7 吋屏幕就能提供 96

Qt ,mac osx ios x11 高清屏,视网膜的支持

Qt 5.0中添加了对于retina显示的基本支持.即将到来的Qt 5.1中提供了新的API和缺陷修复,对于这一问题进行了改进.Qt 4.8也获得了良好的支持,我们反向移植了一些Qt 5的补丁. 尽管这些实现的努力和Mac以及iOS程序员最为相关,但是来看一看其它平台是如何处理高DPI显示这一问题,也是很有趣的.这里主要有两种方式: 基于DPI缩放--Win32 GDI和KDE.在这种方式中,应用程序在全物理设备分辨率下工作,使用系统提供的一个DPI设定或者缩放因子,用于缩放布局.字体通常会被操