Windows: Как проверить пользовательский интерфейс с высоким разрешением? - PullRequest
13 голосов
/ 14 июля 2009

Я хочу проверить, как мое приложение реагирует на настройки high -dpi.я не просто имею в виду 120 точек на дюйм.я хочу проверить более высокие настройки dpi, такие как:

  • 150 точек на дюйм
  • 300 точек на дюйм
  • 600 точек на дюйм
  • 1000 точек на дюйм
  • 1200 точек на дюйм

Видеокарта моей машины разработки не может выполнять разрешения, требуемые для разрешения 300 точек на дюйм (или даже 150 точек на дюйм).

Предполагается, что интерфейс рассчитан на ' fit 'на дисплее с 768 строками (например, 1024x768) разрешение, требуемое для настроек с более высоким разрешением, должно быть:

             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

Требуемое разрешение становится довольно высоким, даже при разрешении 150 точек на дюйм.

я думал о чем-то вроде запуска программного обеспечения на VirtualPC , с виртуальной машиной, работающей 6400x4800 - и затем с помощью VNC для подключения квиртуальная машина.Затем он может масштабировать содержимое в соответствии с моим монитором.Хотя я теряю точность отображения с высоким разрешением, я могу хотя бы посмотреть на него, взаимодействовать с ним (то есть test it).Но видеокарта s3 Trio 32/64, которую VirtualPC эмулирует, достигает максимума 1600x1200 (т. Е. 150 точек на дюйм).

Мне также было интересно, может быть, есть какая-нибудь виртуальная видеокарта есть драйвер, который может работать как видеокарта - способная с высоким разрешением, но отображает себя в масштабе на моем родном рабочем столе.

Есть идеи?


Ссылки

Ответы [ 5 ]

4 голосов
/ 01 июня 2011

Я только что попробовал это с VirtualBox может сообщить следующее:

  • с использованием хоста Windows XP Я не могу выйти за рамки 2000 x 2000, указав, что они просто переключатся обратно на 800x600
  • с помощью хоста Ubuntu 11.04 я могу перейти на как минимум 4000x4000.

Поскольку в Windows Vista появилась новая модель драйвера, я не удивлюсь, если Vista / Windows 7 также поддержит эти высокие разрешения. К сожалению, у меня нет хоста Vista или Windows 7, чтобы проверить это самостоятельно.

Необходимы следующие шаги:

  • Переключение в режим масштабированного отображения (с использованием Host - C , где Host по умолчанию направо Ctrl ). это приведет к уменьшенной версии дисплея хоста, поэтому нет необходимости использовать трюк RDP. Это также гарантирует, что ограниченный размер окна не заставит ВМ уменьшить разрешение экрана
  • Используйте инструмент командной строки VBoxManage до , укажите подсказку разрешения :

    VBoxManage controlvm "VM Name" setvideomodehint 4000 4000 32
    
4 голосов
/ 14 июля 2009

Если макет вашего приложения ведет себя одинаково при 96, 120, 144, 150 dpi, то я думаю, что нет необходимости проверять его на еще более высокое значение DPI, так как вы уже проверили, что оно хорошо работает при неравномерных приращениях dpi.

На самом деле на рынке уже есть много настроек с высоким разрешением точек на дюйм, например, 1680x1050 15,4 "или 1920x1080 при 16" дисплеях в ноутбуках, которые при 120dpi уже имеют проблемы с пиксельной зависимостью и с ними довольно неудобно работать при 96dpi, так что работа с дисплеем с более высокой плотностью поддерживается. Молодец!

Редактировать: я думал. Это может быть не в реальном времени, но, возможно, если вы попытались обработать сообщения WM_PRINT или WM_PRINTCLIENT в своих окнах и распечатать их в файл или, по крайней мере, попытались показать предварительный просмотр их с помощью настроек принтера? Внезапно мы находимся по крайней мере в 300 точек на дюйм. Просто идея.

3 голосов
/ 14 июля 2009

Вам нужна видеокарта и монитор, поддерживающий 1920 x 1200. Они есть у многих пользователей, и их приятно использовать, если вы разработчик. Если у вас есть 1600 x 1200 и вы не хотите тратить деньги на новый монитор, это нормально. Кроме того, если вы не работаете в Pixar, я не вижу необходимости.

1 голос
/ 14 июля 2009

Как вы уже знаете, видеокарты NVidia и ATI позволяют вам создавать собственные разрешения, но никогда за миллион лет до 12800 x 8000. Просто, чтобы дать вам представление о том, сколько памяти потребуется. Это потребовало бы в 45 раз больше памяти, чем видеокарта 1080 (1920x1200). Тем не менее, вы могли бы собрать большую звуковую установку и соединить множество карт вместе ... даже все же ... 12800 x 8000 было бы более подходящим для клиентского оборудования и драйверов под LINUX.

0 голосов
/ 14 июля 2009

Windows не проверяет, действительно ли ваш монитор измеряет значение DPI, для которого вы его настраиваете, поэтому просто подключите самый большой монитор и переключите настройку.

Мне любопытно узнать, почему вы хотите тестировать такие высокие разрешения, то есть что-либо, превышающее 192. Если вам действительно нужна такая высокая разрешающая способность, наверняка у вас есть доступ к оборудованию, на котором она будет работать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...