Физический размер экрана

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Re: Физический размер экрана

Сообщение qivi » 29.05.2014 10:46:41

Если проблема именно под Linux, то может воспользоваться системными средствами? xdpyinfo

Да уже и с этой стороны заходил, эта команда возвращает неверное значение.
http://linuxforum.ru/viewtopic.php?id=34999
Аватара пользователя
qivi
энтузиаст
 
Сообщения: 703
Зарегистрирован: 19.01.2009 13:45:54
Откуда: Россия

Re: Физический размер экрана

Сообщение Devel0 » 30.05.2014 12:43:33

Ясно. В таком случае стоит проверить, что говорит EDID. Если там корректная информация, то возможно, что в X-сервере есть баг с определением DPI / размеров экрана. Можно ещё попробовать явно задать DPI и размеры через xorg.conf и посмотреть что получится.
Devel0
новенький
 
Сообщения: 66
Зарегистрирован: 24.07.2011 10:43:13

Re: Физический размер экрана

Сообщение kazalex » 31.05.2014 13:47:10

Похоже, тебе нужна функция gdk_get_screen_resolution.

В виджетсете Gtk2, для получения значений PixelsPerInch используется вызов функции GetDeviceCaps из модуля LCLIntf. Код отвечающий за расчет:
Код: Выделить всё
  LOGPIXELSX : { Logical pixels per inch in X }
    Result := RoundToInt(gdk_screen_width / (GetScreenWidthMM / 25.4));

  LOGPIXELSY : { Logical pixels per inch in Y }
    Result := RoundToInt(gdk_screen_height / (GetScreenHeightMM / 25.4));

Как видно тут scale factor не учитывается.
kazalex
постоялец
 
Сообщения: 296
Зарегистрирован: 01.06.2012 14:54:10

Re: Физический размер экрана

Сообщение Alex2013 » 23.06.2014 16:42:48

Определение модели монитора вообще-то возможно даже при подключении к VGA порту кроме того в большинстве систем есть ручной выбор модели и многие пользователи устанавливают нужную самостоятельно ...
К некоторым мониторам идут драйвера которые тоже устанавливают в метрики винды то что нужно В общем предлагаю копать метрики ОСи составлять свою базу наиболее распространенных моделей ...
В крайнем случае можно попросить юзера линейкой измерить тестовые отрезки или наоборот потребовать нарисовать на экране отрезок длинной например десять см .. (Мышкой разумеется :wink: ) .
Alex2013
долгожитель
 
Сообщения: 3145
Зарегистрирован: 03.04.2013 11:59:44

Пред.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 244

Рейтинг@Mail.ru