Windows:如何在高dpi下测试UI?

Ian*_*oyd 14 windows testing user-interface highdpi

我想测试我的应用程序如何对 -dpi设置做出反应.我不仅仅意味着120dpi.我想测试更高的dpi设置,例如:

  • 建议使用150dpi分辨率
  • 300DPI
  • 600dpi的
  • 1000DPI
  • 1200dpi的

我的开发机器的视频卡无法达到300dpi所需的分辨率(或者甚至150dpi).

假设界面设计为" 适合 "显示器上有768行(例如1024x768),则更高dpi设置所需的分辨率为:

             Normal      Wide-Screen         Frame Buffer
  dpi     Resolution    Resolution    Zoom    Size (MiB)
=======  ============  ============  ======  ============ 
   96     1024 x  768   1280 x  768    100%      3.75     
  113     1200 x  900   1440 x  900    117%      4.96     
  120     1280 x  960   1536 x  960    125%      5.63
  131     1400 x 1050   1680 x 1050    137%      6.73
  150     1600 x 1200   1920 x 1200    156%      8.70
  300     3200 x 2400   3840 x 2400    313%     35.26
  600     6400 x 4800   7680 x 4800    625%    140.63
1,000    10667 x 8000  12800 x 8000  1,042%    390.63
Run Code Online (Sandbox Code Playgroud)

所需的分辨率相当高,即使在150dpi.

我正在考虑在VirtualPC上运行软件,虚拟机运行6400x4800 - 然后使用VNC连接到虚拟机.然后它可以缩放内容以适合我的显示器.虽然我失去了高dpi显示器的保真度,但我至少可以看它,与它进行交互(即测试它).但VirtualPC仿真的s3 Trio 32/64显卡最高可达1600x1200(即150dpi).

我也想知道是否有一些虚拟视频卡驱动程序,它可以像一个视频卡 - 能够高分辨率,但显示自己在我的原生桌面上缩放.

有任何想法吗?


参考

mac*_*die 4

如果您的应用程序的布局在 96、120、144、150 dpi 下的行为相同,那么我认为无需测试更高的 DPI,因为您已经测试过它对于不均匀的 dpi 增量也能很好地工作。

实际上,市场上已经有许多高 dpi 友好的设置,例如笔记本电脑中 16" 显示屏的 1680x1050 15,4" 或 1920x1080,在 120dpi 下已经出现像素依赖性问题,并且在 96dpi 下使用已经很不舒服了,所以致力于更高密度的显示支持是有效的。对你有好处!

编辑:我一直在想。这可能不是很实时,但也许您尝试在窗口中处理消息WM_PRINT并将WM_PRINTCLIENT其打印到文件中,或者至少尝试使用打印机设置显示它们的打印预览?突然我们的分辨率至少达到了 300dpi。只是一个想法。

  • 这样做的“真正”动机是让同事们一目了然:a)“为什么”你应该支持高 dpi,以及 b)“在哪里”你搞砸了。我的电脑运行速度不是 96 dpi,但我是唯一的一个。我需要让它**盲目地**明显地失败。 (2认同)