我想测试我的应用程序如何响应高 -dpi设置。我不仅仅意味着120dpi。我想测试更高的dpi设置,例如:
我的开发机器的视频卡无法达到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
即使在150dpi时,所需的分辨率也相当高。
我正在考虑在 VirtualPC 上运行软件的一线,虚拟机运行 6400x4800 - 然后使用 VNC 连接到虚拟机。然后它可以缩放内容以适合我的显示器。虽然我失去了高dpi显示器的保真度,但我至少可以看一下它,与它进行交互(即测试它)。但VirtualPC模拟的s3 Trio 32/64显卡在 1600x1200 (即150dpi)时最高。
我也想知道是否有一些虚拟视频卡驱动程序,它可以像一个视频卡 - 具有高分辨率,但显示自己在我的原生桌面上缩放。
有什么想法吗?
答案 0 :(得分:4)
如果您的应用程序的布局在96,120,144,150 dpi时表现相同,那么我认为没有必要对更高的DPI进行测试,因为您已经测试过它适用于不均匀的dpi增量。
实际上市场上已经有很多高dpi友好设置,例如1680x1050 15,4“或1920x1080 16英寸显示器在笔记本电脑中,120dpi已经显示像素依赖问题,并且非常不舒服96dpi已经如此致力于更高密度的显示器支持是有效的。对你有好处!
编辑:我一直在想。这可能不是非常实时,但也许如果您尝试在窗口中处理WM_PRINT
或WM_PRINTCLIENT
消息并将其打印到文件或至少尝试使用打印机设置显示它们的打印预览?突然间,我们至少达到300dpi。只是一个想法。
答案 1 :(得分:4)
我刚试过VirtualBox可以报告以下内容:
由于Windows Vista引入了新的驱动程序模型,如果Vista / Windows 7也支持这些高分辨率,我也不会感到惊讶。不幸的是,我没有Vista或Windows 7主机来自己测试。
必要的步骤如下:
使用命令行工具VBoxManage
与specify the resolution hint:
VBoxManage controlvm "VM Name" setvideomodehint 4000 4000 32
答案 2 :(得分:3)
您需要一个支持1920 x 1200的视频卡和显示器。许多用户拥有这些,如果您是开发人员,他们会很高兴使用它们。如果您有1600 x 1200并且不想在新的显示器上花钱那么好。除此之外,除非你为皮克斯工作,否则我认为没有必要。
答案 3 :(得分:1)
正如您已经知道的那样,NVidia和ATI显示卡都允许您创建自定义分辨率,但绝不会在一百万年内达到12800 x 8000.只是为了让您了解需要多少内存。它需要的内存是1080(1920x1200)视频卡的45倍。然而,你可以做的是获得一个大的鸣喇叭并将多张卡连在一起......甚至仍然...... 12800 x 8000将更适合LINUX下的客户硬件和驱动程序。
答案 4 :(得分:0)
Windows不检查您的显示器是否实际测量到您配置的DPI,因此只需连接最大的显示器并开始切换设置。
我很想知道为什么你要测试这么高的分辨率,即超过192的任何东西。如果你真的需要这么高的分辨率,你肯定可以访问将运行它的硬件吗?