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

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

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

Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

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

Сообщение qivi »

Как средствами FPC/Lazarus получить данные о физическом размере экрана ПК? Возможно можно получить размер сторон экрана, или хотя бы диоганаль и соотношение сторон?
Аватара пользователя
*Rik*
постоялец
Сообщения: 453
Зарегистрирован: 19.04.2011 12:18:51
Откуда: Урал
Контактная информация:

Сообщение *Rik* »

qivi писал(а):Как средствами FPC/Lazarus получить данные о физическом размере экрана ПК? Возможно можно получить размер сторон экрана, или хотя бы диоганаль и соотношение сторон?

Screen.width, Screen.Height подойдет?
Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

Сообщение qivi »

Нет, это в пикселях, мне нужены данные о фактическом размере экрана (сантиметры, дюймы).
Аватара пользователя
Little_Roo
энтузиаст
Сообщения: 639
Зарегистрирован: 27.02.2009 18:56:36
Откуда: Санкт-Петербург

Сообщение Little_Roo »

Видимо, как-то нужно выцапать ФАКТИЧЕСКИЙ размер пикселя... А это, думается, только из техдокументации на конкретный монитор.
Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

Сообщение qivi »

Ну к примеру системная утилита управления мониторами показывает же диоганаль... не совсем то но уже что то...
Аватара пользователя
Little_Roo
энтузиаст
Сообщения: 639
Зарегистрирован: 27.02.2009 18:56:36
Откуда: Санкт-Петербург

Сообщение Little_Roo »

Чисто технически - не совсем корректно. Ведь заявленый 15" монитор может быть (в зависимости от матрицы) - и 14.8 и 15.3 и т.п.
Все же правильнее Screen.width, Screen.Height с поправкой на размер пикселя.
И какая точность экранной геометрии требуется?
Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

Сообщение qivi »

И какая точность экранной геометрии требуется?

Приблизительная... +\- трамвайная остановка не критична. Так что для вычисления приблизительного DPI хватит и диоганали + разрешения.
Аватара пользователя
hinst
энтузиаст
Сообщения: 781
Зарегистрирован: 12.04.2008 18:32:38

Сообщение hinst »

В модуле Graphics переменная ScreenInfo
Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

Сообщение qivi »

В модуле Graphics переменная ScreenInfo


Как и в случае viewtopic.php?t=9850&view=unread#unread возвращает не верное значение... всё время возвращает 96. У меня вручную выставленное 180 а расчётное около 270. Мне при 96 очень большая луппа требуется.
Аватара пользователя
hinst
энтузиаст
Сообщения: 781
Зарегистрирован: 12.04.2008 18:32:38

Сообщение hinst »

А это прочитал:
http://wiki.freepascal.org/High_DPI
Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

Сообщение qivi »

Но чем мне это должно помочь? Проблема в том что LCL в линукс не получает правильного DPI (или вообще не реализовано)...
SSerge
энтузиаст
Сообщения: 971
Зарегистрирован: 12.01.2012 05:34:14
Откуда: Барнаул

Сообщение SSerge »

Вот чем под windows это изначально получается: http://msdn.microsoft.com/en-us/library ... 85%29.aspx
Imho, вообще нет уверенности, что значения ширины - высоты в миллиметрах доступны для всех мониторов, ибо характеристика в целом крайне редко требующаяся - ОС пофиг, сколько миллиметров в длину и ширину ее физические устройства; более актуальны привязки к базовому размеру системных шрифтов и коэффициенту искажения высоты к ширине.
скалогрыз
долгожитель
Сообщения: 1804
Зарегистрирован: 03.09.2008 02:36:48

Сообщение скалогрыз »

qivi писал(а):Но чем мне это должно помочь? Проблема в том что LCL в линукс не получает правильного DPI (или вообще не реализовано)...

Ну если не реализовано в LCL для Линукса, то почему бы не реализовать и прислать патчик?
На вкус: Gtk2 Gtk3 Qt 5
ну а для винды итак ссылок дали :)
Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

Сообщение qivi »

Для винды оно и без ссылок возвращает верное значение... да тока и даром не надь.

Ладно спасибо за советы буду думать.
Devel0
новенький
Сообщения: 66
Зарегистрирован: 24.07.2011 10:43:13

Сообщение Devel0 »

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