jsus
0,0
рейтинг
10 июля 2014 в 12:36

Дизайн → О размере экрана, пикселя и элемента из песочницы



Привет, username. Свой первый пост я хочу посвятить актуальной проблеме, связанной с появлением большого количества новых форматов дисплеев и непрекращающейся гонкой за плотностью пикселей. В свете появления таких устройств, как очки дополненной реальности, смартчасов, 4к-мониторов и еще более широкого спектра планшетов и ноутбуков, возникает вопрос: какой размер графического элемента/текста следует считать оптимальным и в чем его измерять. Android-разработчики, несомненно, тут же воскликнут: «Да, конечно, в dp!». Но практика показывает, что дела обстоят несколько сложнее.

Проблема


Одна из ключевых задач дизайнера интерфейса заключается в том, чтобы создать оптимальный баланс элементов, который позволяет реализовать бизнес-цели продукта комфортно для пользователя. Методов дифференциации элементов помимо положения не так уж и много:

  1. Размер
  2. Цвет и тон
  3. Границы (особый метод, связанный со свойством зрительного центра оформлять отдельные объекты по касанию светотеневой плоскости и фона)
  4. Фактурная и графическая насыщенность

Очевидно, что, разрабатывая единый интерфейс для разных устройств, дизайнер предполагает не только схожее соотношение деталей этого интерфейса, но и наибольшую читабельность текста и графических элементов. При этом еще Дэвид Огилви замечает, что рекламный плакат не может быть читабельным на любом расстоянии, но должен быть таковым (и иметь соответствующий баланс элементов) на расстоянии наиболее вероятного сценария просмотра. В случае с интерфейсами интерактивных устройств сценарии просмотра являются самыми разными, а вот функциональные сценарии обычно сохраняются. Для человека, знакомого с версткой на разных платформах, явственно встает проблема: как обозначить размер элементов, чтобы они занимали необходимое место в угловом пространстве, видимом глазом, вне зависимости от сценария?

Синопсис


Подобие стандарта на ppi (pixels per inch) появилось в середине 1980-х, когда Apple выпустила свои первые компьютеры серии Macintosh. У этих компьютеров была 9-дюймовая диагональ экрана с 72 пикселями на каждый квадратный дюйм. Уже тогда Apple заняла позицию создания собственной экосистемы, поэтому в диапазоне технологических возможностей того времени было выбрано ppi ровно в два раза меньше dpi (dots per inch) эппловского принтера ImageWriter, что давало гарантию, что размер элементов на экране будет точно соответствовать размеру на бумаге. Однако это касалось только компьютеров фирмы Apple, так как другие производители использовали самые разные ppi, следуя своим возможностям и законам рынка. Этот рудимент видения компьютера как приставки к принтеру привел к появлению в Photoshop галочки Resample Image, при снятии которой разрешение изображения не влияет на его размер, но влияет на качество печати.



Тем временем разрешение и диагональ мониторов начали расти как на дрожжах. Если Mac 128k имел разрешение 512x342 пикселя, то к 1996 году эта же компания выпустила Apple Multiple Scan 15 Display с диагональю 13.3 дюйма и потрясающим для тех времен разрешением 1024х768px. Это значение, вне зависимости от диагонали, оставалось самым популярным разрешением экранов еще 12 лет.

Несмотря на попытки выработать какой-то стандарт, к середине 2000-х в потребительском секторе было несколько сотен вариаций разрешения и диагонали экранов. Что касается профессионального рынка, где, казалось бы, должна была соблюдаться какая-то стандартизация, то там ситуация была еще хуже. Производители создавали для специалистов мониторы весьма экзотических параметров, которые стоили как паровоз и имели свойство устаревать в течение года.

В 2008 году я купил ноутбук Lenovo Y710-200, имевший диагональ 17 дюймов и разрешение 1920х1200px. К сожалению, на тот момент ни у меня, ни, видимо, у Lenovo не было представления о том, какое это было сильное преимущество для ноутбука: 132ppi! Даже у профессиональных мониторов ppi было ниже, а выше можно было наблюдать уже в совсем специфической технике, вроде медицинских мониторов или мониторов космических устройств, хотя именно в этом году Kopin Corporation представила продукт пика технологических исследований — устройство с 2272ppi. Для меня лично дело кончилось тем, что я приучился смотреть видео только HD качества (1920х1080), поскольку на этом экране видео 720p или 480p было очень маленьким. Эта же ситуация подтолкнула меня, как начинающего дизайнера, к самостоятельному осознанию независимости размера элемента от устройства. Кстати, удивительно, но Windows Vista справлялась с масштабированием вполне неплохо.

В 2010 году Стив Джобс представил дисплей повышенной четкости, названный Retina (“сетчатка”, англ.). При этом в своей презентации он заявил, что ppi ретины превышает таковой у человеческого глаза и, следовательно, считается идеальным.
Как опытный презентатор, Джобс произвел впечателение на общественность, однако по мнению специалистов cultofmac.com слукавил приблизительно в 2-3 раза, так как ряд исследователей считает, что разрешающая способность хорошего зрения несколько выше.



Эта картинка (открывать на устройстве с Retina) позволит понять, насколько утверждение Джобса соответствует истине. Человек с нормальным зрением без труда найдет на этом изображении как белые и черные полосы шириной в один пиксель, так и цикл (черная и белая полоса рядом) шириной в 2 пикселя по центру.
Следует также понимать, что, ввиду ограниченного углового разрешения глаза, ppi для экранов разного размера и находящихся от пользователя на разном расстоянии будет отличаться. Например, для iPhone это значение должно быть около 952ppi, а для iPad — 769ppi.

Ситуация


На нынешний день мы имеем целый ряд проблем, связанных с историей пикселя. Совершенно очевидно, что размеры, задаваемые в пикселях, потеряли всякий смысл — только на википедии количество различных значений ppi для мониторов превышает две сотни, а это значит, что размер элемента всегда будет разный. Компания Google описывает в своем девелоперском центре несколько единиц измерений, что по идее должно являться решением:
  • px — Pixels (пиксели), соответствующие реальным физическим пикселям экрана
  • in и mm — Inches и millimiters (дюймы и миллиметры), физические единицы измерения
  • pt — Points (пойнты), 1/72 физического дюйма экрана
  • dp — Density-independent Pixels (пиксели, независимые от плотности), абстрактная единица, основанная на плотности физических пикселей и соответствующая 160 dpi экрану (на котором 1dp приблизительно равен 1px)
  • sp — Scale-independent Pixels (пиксели, независимые от масштаба), аналог em в web-верстке

Кстати, Microsoft по умолчанию считает, что dp = 1/96 логического дюйма, dpi которого можно настроить в панели управления. Хочется заметить, что, используя физические значения, лучшей практикой было бы использование миллиметров, как производную от основной единицы СИ.

Наиболее близкой к титулу «универсальной» была бы единица sp/em, если бы мы каким-то образом знали базовое оптимальное значение размера кегля. Собственно интуитивное представление дизайнера об оптимуме породило следующий хак в веб-верстке:
  • Тэгу html присваивается font-size: Nxx, N = значение, а xx = пиксели/миллиметры/дюймы (для планшетов я обычно использую 3mm).
  • Во всех дальнейших размерах элементов используется так называемый rem (root em), всегда равный значению, указанному в font-size тэга html (но не его детей).
  • В тэге body указывается font-size непосредственно текста.


html {
    font-size: 22px;
}

body {
    font-size: 14px;
    line-height: 1rem;
}

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

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

Бионика


Зрительный аппарат появился в результате эволюции простейших фоторецепторов, возбуждающихся от яркого света. При этом природа создала аж четыре варианта: глаза моллюсков, формирующиеся из эпителия, обладающие способностью видеть широкий спектр световых волн, глаза млекопитающих, формирующиеся из нервной ткани и изначально предназначенные для нахождения форм и движения объектов, камерные глаза кубомедуз и фасеточные глаза насекомых. Как признак, зрение оказалось весьма полезным инструментом выживания, и поэтому его эволюция у человека (вместе с самим человеком) длилась всего около полумиллиона лет.

Не вдаваясь в подробности, можно сказать, что глаз представляет из себя биологическую линзу, дно которой выстлано слоем рецепторной матрицы из палочек и колбочек — особых клеток, реагирующих на свет и создающих нервные импульсы, идущие дальше в мозг. Однако следует помнить, что, в сетчатке есть например слой амакриновых клеток которые непосредственно учавствуют в первичной переработке информации, отвечая за латеральное торможение: уменьшение количества импульсов в местах яркого диффузного освещения и увеличение в местах резкого перепада освещенности. Система, таким образом, служит для выделения краев тени, падающей на сетчатку или перемещающейся по ней — именно поэтому черный текст на белом фоне читается лучше. Это одна из причин, по которой нейрофизиологи рассматривают сетчатку и зрительный тракт как участников процесса обработки визуальной информации и, следовательно, как часть мозга.

В среднем по вертикали поле зрения человека составляет около 135 градусов, а по горизонтали — 155. При этом бинокулярные и хроматические возможности глаза неоднородны по его площади.


Источник

Для того, чтобы определить остроту зрения (аналог разрешения камеры), используются таблицы Снеллена — ряды букв разного кегля, где размер и ширина знака подбраны так, чтобы стянуть угол в 1 минуту дуги на определенном расстоянии. При этом нормой считается зрение, при котором человек различает буквы в шестой строке с расстояния 6 метров, что равняется 5 минутам дуги. В научных исследованиях принято применять кольца Ландольта, так как это позволяет более объективно оценивать данные, без погрешности на узнаваемость типографических знаков и шрифт. В России кольца Ландольта адаптированы С. Головиным, а таблица Снеллена учеником Головина Д. Сивцевым.



Психооптик Гарольд Блэквел выразил понятие о разрешении глаза как углового параметра функции светлости и контраста. Его исследования показали, что этот угол равен приблизительно 0.7 минут дуги для определения пятна неточечного объекта (чтобы сказать, что пятно не является точкой, наблюдателю необходимо минимум 2 пикселя), что результирует минимальную разрешающую способность в 0.35 минут дуги.

Современные исследования ясности зрения оперируют понятием цикл на градус (под циклом понимается черно-белая пара линий) и предлагают значение 77 циклов на градус, что приблизительно равно 78 циклам на градус дуги. Опять же, ввиду минимальной ширины цикла в 2 пикселя, мы видим схожие 0.39 минут дуги.

Учитывая угловое пространство глаза, путем простого вычисления 100 * 100 * 60 * 60 / (0.3 * 0.3) = 400 мегапикселей мы получаем значение, весьма близкое к общему количеству фоторецепторов в сетчатке.

Следует понимать, что в то время, как область ясного видения дает довольно четкое представление о минимально допустимом размере объектов и их разрешении, механика восприятия в периферической области несколько отличается, так как оно в большей степени отвечает за бессознательное сканирование и приоритезацию. Особенность человеческого глаза иметь максимальное разрешение и когнитивный фокус в области фовеа (так называемое желтое пятно), например, позволяет таким сервисам как Spritz увеличить скорость восприятия текста (помимо сокращения «лага» за счет отсутствия движений глаз), умещая слово в область ясного видения.

Помимо этого, приведенная схема дает нам четкое представление о рекомендуемых размерах элементов. Ясно, что для комфортного ориентирования по интерфейсу интерактивный элемент, на котором в текущем сценарии сфокусировано внимание, не должен превышать область макулы (7°х5.5°), а блок/группа/список, в котором он находится, — область ясного видения (16-20°x12-15°). Именно этот факт косвенно поддерживает предлагаемую в Google гипотезу, что маленький экран не значит меньше информации, так как область когнитивного анализа в принципе довольно мала.


Более детальное представление области ясного зрения. Показано, что отношение между зонами разной рецепторной активности в действительности соответствует золотому сечению.

Оптимум


Дальнейшие исследования выявили наиболее объективные рекоммендации:
  • Ключевые элементы должны занимать не меньше 20 минут дуги
  • Рекомендуемый размер 20-22 минуты дуги
  • Следует избегать символьных элементов размером меньше 16 минут дуги,
  • Разрешение хорошего человеческого зрения = 0.4 минут дуги
  • Среднее разрешение (с учетом всех возрастов) = ~1 минута дуги


Формула для расчета размера элемента в зависимости от расстояния:

h = 2 *d * Tan(x/2)

где
h = искомая высота элемента
d = расстояние в миллиметрах
x = размер элемента выраженный в радианах (минуты дуги в радианы)

Примеры округленных расчетов рекомендуемого размера шрифта (21 минута дуги) в миллиметрах
Расстояние Кегль
400 2.4
500 3.1
600 3.7
700 4.3
Следует отдельно заметить, что устройства вроде Oculus Rift, находящиеся в непосредственной близости от глаза, следуя этой формуле, в идеале должны обладать огромным ppi со значением больше 2000.

Выводы


Исходя из приведенных выше рассуждений, можно прийти к следующим выводам касательно решения проблемы верстки на разных устройствах:

  • Производителям мониторов необходимо всегда через драйвера сообщать ОС свой физический размер для приблизительного определения расстояния от экрана.
  • ОС должна не просто масштабировать элементы в процентах, но и уметь рассчитывать размер dp исходя из данных от монитора, чтобы элементы занимали необходимое место в угловом пространстве, видимом глазом
  • Для дополнительной калибровки можно использовать данные с камеры, чтобы оценить среднее расстояние от глаз до монитора.
  • Очевидно, что наиболее универсальной единицей явились бы сами am — arc minutes (градусы дуги). Помимо всего прочего 1am неплохо описывает толщину оптимальной для глаза линии в соответствующей классическому 1px линии на среднестатистическом мониторе.

На данный момент времени единственный способ решить эту проблему существующими методами — это узнавать параметры устройства через user-agent и подгонять под него переменную rem модульной сетки. Однако такое решение, вероятно, подходит только для больших компаний, которые могут позволить себе анализ и тестирование верстки на десятках видов устройств.

PS В некоторых абзацах, описывающих точные данные, источники были переведены без изменений.
@nicuini
карма
33,0
рейтинг 0,0
jsus
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Дизайн

Комментарии (28)

  • –14
    Пятиминутка ненависти.
    Для того, чтобы определить остроту зрения (аналог разрешения камеры), используются таблицы Снеллена — ряды букв разного кегля, где размер и ширина знака подбраны так, чтобы стянуть угол в 1 минуту дуги на определенном расстоянии.


    — Какое у тебя зрение?
    — Минус два
    — Ты понимаешь, что минус два — это диоптрии для очков, которые ты носишь?
    — Что? О чем ты? Какие ещё диоптрии?
    — Вот приходишь ты к окулисту и видишь таблицу. Сколько там строк видишь? Вот это и есть твое зрение.
    — Да ладно тебе, я к окулисту пришел, он мне сказал: «зрение минус два».
    • +3
      Сколько там строк видишь?

      Ни одной (без очков).
      Мне доктор показывает пальцы, подходя ко мне, пока я не смогу разглядеть, сколько он показывает. Но на глаз оценить расстояние, на котором он при этом находится, я без очков не могу. Поэтому на вопрос
      — Какое у тебя зрение?
      Я просто и смело отвечаю
      — Минус восемь.
  • +3
    Кстати, Microsoft считает, что dp = 1/96 дюйма, то есть для них dp — это просто некая физическая величина. Хочется заметить, что, если уж использовать абсолютные физические значения, лучшей практикой было бы использование миллиметров, как производную от основной единицы СИ.


    Это с какой такой радости? Не знаю как там было в Windows 3.11, но в Windows 7 Microsoft считает, что px = dp / DPI, а DPI по умолчанию 96. dp при этом не физическая, а абстрактная величина, коэффициент масштабирования (DPI) можно изменить в панели управления.
    • 0
      Спасибо, поправил
  • +8
    В вебе, к сожалению, тоже пришли к какому-то печальному решению:
    1) px — теперь не физический пиксель, а window.devicePixelRatio пикселей.
    2) Все абсолютные величины — cm, mm, ..., тоже не имеют с реальными единицами измерения ничего общего, а лишь «примерно соответствуют им», исходя из window.devicePixelRatio и некому стандартному количеству пикселю в дюйме (72 или 96 не помню).
    3) Реальный физический размер экрана не доступен из веба
    • 0
      Ну, как написано в статье, на некоторых мобильных устройствах можно более или менее точно определить размер dp, так как user-agent может отдать например модель устройства. Однако для этого нужно иметь какие-то таблицы диагоналей и разрешений.
  • 0
    misclick post
  • +4
    Разрешение экрана все растёт и растёт, а вот информации на экран помещается все меньше. Мне нравятся старые «пиксельные» интерфейсы, где все было подогнано пиксель к пикселю, и на экран помещалось максимум информации, сейчас сделать такой интерфейс уже не реально. Да и не было «мыла», которое приносит нам вектор.
    Кроме того ощущение что ты можешь различить каждый отдельный пиксель своего устройства, грело душу, сейчас курсор навести на нужный пиксель проблематично.
    Правда все это в малой степени относится к приложениям win32, т.к. обычно там все контроллы с абсолютным позиционированием, да и сама windows не умеет нормально работать с высоким dpi, поэтому наверное не скоро ноутбуки с windows на ретину перейдут.
    • +3
      Невидимость пикселей значительно усложняет работу с графикой, например, так как становится сложнее точно подгонять элементы без костылей типа сеток и снаппинга… Интерфейсы как раз сильно абстрагированнее от пиксельной сетки не стали, причина примитивизации — в ёмкостных тачскринах: с ними by design невозможно точное позиционирование (опять-таки, без костылей типа «лапок» для выделения текста). Разрешение повышают исключительно для повышения чёткости — уменьшать размеры экранных объектов, не увеличивая резко нагрузку на зрение, уже давным-давно некуда, разве только в очках виртуальной реальности с призматическими линзами. Так-то и в старых мобильниках с DPI, близким к классическому десктопу (100-120) можно извратиться и сделать мелкие шрифты (например, в MiniCommander), чтобы больше на экран влезало, но постоянно таким пользоваться…
      • 0
        Говоря о мыле я имел в виду wpf, даже в visual studio 2010, заметно замыливание интерфейса.
        • +2
          Мыло из-за кривого рендеринга конкретно в винде.
    • +1
      Тёплые, ламповые пиксели :)
      image
  • +6
    Вы как хотите, обсуждайте поддержку HDPI в Windows, и прочите технические особенности, а я буду наслаждаться тем, что прочел крайне интересную статью!
    Узнал очень много нового! Спасибо!
    Спойлер
    Я очень сильно люблю технические детали, но эта статья мне очень сильно понравилась тем, что технические детали были размешаны личными размышлениями и биологическо-анатомическими аспектами.
    • +10
      Спасибо, мне это очень ценно. Планирую написать про принципы восприятия цвета, визуальный шум, количество «регистров» в мозгу и много еще чего интересного.
      • +1
        Обязательно пишите! С удовольствие прочту! Да и уверен в том, что не только я с удовольствием прочту подобные статьи! :)
  • +5
    Спасибо за статью, очень интересно. Разрешите я дополню ссылкой на свою статью Сколько мегабит/с можно пропустить через зрительный нерв и какое разрешение у сетчатки? Немного теории
    • 0
      Да, конечно, ваша статья весьма полезна. У нас, правда, немного данные по разрешению сетчатки расходятся, но я думаю это связанно с разной методой расчета активной области
      • 0
        Эта область вообще мутная. До сих пор спорят. Критикуйте, я буду только рад. На самом деле для меня полная загадка запихивания потока с огромным разрешением в узкий пропускной канал зрительного нерва. Я там приводил расчёты.
      • 0
        Кстати, у нас эту таблицу называют таблицей Сивцева.
        • +1
          Собственно статьи в картинках и помечены Сивцевым. Однако я использовал оригинальную терминологию, т. к. Сивцев это просто адаптация.
          • 0
            подписали б, что «адаптированные к русскому языку Сивцевым»
            • 0
              Да, действительно. Дописал. Кстати в картинках неточность, т.к. к кольцам Ландольта тоже приписан Сивцев, в то время как эту таблицу разрабатывал его учитель Головин
  • –1
    Не обязательно проверять UA, сейчас производители устройств и браузеров нормально работают с такой штукой как DeviceAspectRatio, который может принять довольно ограниченный диапазон значений, так что вариантов устройств может быть не несколько десятков, а 3 — 4. Но даже и этот параметр не обязательно проверять, движок сам обрабатывает значения максимально комфортно.

    Например, мы укажем размер текста 16px. Устройство с экраном 5 дюймов и 1080x1920 будет иметь AspectRatio равный 3, значит по высоте у него будет 640 виртуальных пикселей. Высота текста физически будет равна примерно 4,36" * 16 / 640 = 0,11 дюйма.
    Возьмем другой аппарат: 4,5", 720x1280. AspectRatio будет уже 2. Те же 640px высоты. Высота текста около 3.92" * 16 / 640 = 0,1 дюйма.

    Т.о. на девайсе, который мы держим чуть дальше от глаз, текст как раз чуть более крупный. В целях улучшения UX можно отловить ширину и AspectRatio и задать индивидуальный размер, это всего 3-5 вариантов. Хотя можно отталкиваться и только от ширины устройства, мне кажется этого достаточно в 95% случаев. Делаем разметку чуток резиновой местами и она будет как влитая.

    И да, я за размеры в px. Потому что любые относительные величины все равно пересчитаются движком в пиксели. Любые хаки, хуки и прочие хеки разве что ускорют написание условий типа media queries. Вот в примере задан размер html в пикселях. И у body тоже. Всё дочернее, как бы вы ни описывали, все равно пересчитается в пиксели. И, как видно, эти пиксели индивидуальны для устройств и браузеров. Так что разницы на продакшене нет. Совсем. Только удобство разработки. Хотя и это тоже относительно. Лучше я буду знать, что у меня строка высотой 28px, чем пересчитывать цепочку наследований. И пиксели всё-таки могут быть более понятными. Если я знаю что девайс 540 — 640 пикселей в высоту, я примерно представляю, сколько пикселей выделить тексту. А вот сколько rem? Или dp? Каждый раз для каждого девайса пересчитывать? Нет уж, пиксели гораздо роднее и теплее.
  • +3
    Производителям мониторов необходимо всегда через драйвера сообщать ОС свой физический размер для приблизительного определения расстояния от экрана.

    Через какие еще драйвера? Это стандартная фича, отдается через EDID

    Вот к примеру вывод EDID от моего монитора
    [     6.070] (II) intel(0): EDID for output HDMI2
    [     6.070] (II) intel(0): Manufacturer: BNQ  Model: 7b26  Serial#: 21573
    [     6.070] (II) intel(0): Year: 2010  Week: 29
    [     6.070] (II) intel(0): EDID Version: 1.3
    [     6.070] (II) intel(0): Digital Display Input
    [     6.070] (II) intel(0): Max Image Size [cm]: horiz.: 53  vert.: 30
    [     6.070] (II) intel(0): Gamma: 2.20
    [     6.070] (II) intel(0): DPMS capabilities: Off
    [     6.070] (II) intel(0): Supported color encodings: RGB 4:4:4 YCrCb 4:4:4
    [     6.070] (II) intel(0): Default color space is primary color space
    [     6.070] (II) intel(0): First detailed timing is preferred mode
    [     6.070] (II) intel(0): redX: 0.640 redY: 0.330   greenX: 0.300 greenY: 0.600
    [     6.070] (II) intel(0): blueX: 0.150 blueY: 0.060   whiteX: 0.313 whiteY: 0.329
    [     6.070] (II) intel(0): Supported established timings:
    [     6.070] (II) intel(0): 640x480@60Hz
    [     6.070] (II) intel(0): 800x600@60Hz
    [     6.070] (II) intel(0): 1024x768@60Hz
    [     6.070] (II) intel(0): Manufacturer's mask: 0
    [     6.070] (II) intel(0): Supported standard timings:
    [     6.070] (II) intel(0): #0: hsize: 1024  vsize 576  refresh: 60  vid: 49249
    [     6.070] (II) intel(0): #1: hsize: 1280  vsize 800  refresh: 60  vid: 129
    [     6.070] (II) intel(0): #2: hsize: 1280  vsize 720  refresh: 60  vid: 49281
    [     6.070] (II) intel(0): #3: hsize: 1280  vsize 960  refresh: 60  vid: 16513
    [     6.070] (II) intel(0): #4: hsize: 1280  vsize 1024  refresh: 60  vid: 32897
    [     6.070] (II) intel(0): #5: hsize: 1600  vsize 900  refresh: 60  vid: 49321
    [     6.070] (II) intel(0): #6: hsize: 1680  vsize 1050  refresh: 60  vid: 179
    [     6.070] (II) intel(0): #7: hsize: 1920  vsize 1080  refresh: 60  vid: 49361
    [     6.070] (II) intel(0): Supported detailed timing:
    [     6.070] (II) intel(0): clock: 148.5 MHz   Image Size:  531 x 298 mm
    [     6.070] (II) intel(0): h_active: 1920  h_sync: 2008  h_sync_end 2052 h_blank_end 2200 h_border: 0
    [     6.070] (II) intel(0): v_active: 1080  v_sync: 1084  v_sync_end 1089 v_blanking: 1125 v_border: 0
    [     6.070] (II) intel(0): Serial No: X7A00693SL0
    [     6.070] (II) intel(0): Ranges: V min: 50 V max: 76 Hz, H min: 30 H max: 83 kHz, PixClock max 175 MHz
    [     6.070] (II) intel(0): Monitor name: BenQ VW2420H
    

    И физический размер есть и какое у него разрешение поддерживается. В тех же иксах давно интерфейс (DP) рисуется относительно DPI монитора. В windows 7 и далее тоже это все крутится. Но проблема в том что фактически многие старые программы в windows прибиты гвоздями к стандартному DPI. С новыми программами таких проблем уже нет.
    • 0
      Спасибо за EDID. Однако, должен заметить что а) в вебе к этой информации доступа нет и б) виндовый DPI-scaling в основном предназначен для того чтобы решить проблему увеличения ppi монитора тогда как угловые размеры элементов заметно отличаются.
      • 0
        Однако, должен заметить что а) в вебе к этой информации доступа нет

        Размер экрана (окна) и DPI получить можно. Зная эти параметры получить физический размер пикселя можно.
        • 0
          Вы же понимаете, что на десктопе с этим могут возникнуть трудности, особенно с учетом split-скрина в 8 винде.
          • 0
            Ну если windows как-то отдает не так данные это уже явно проблема windows.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.