Расстояние, пройденное при прокрутке, не зависит от разрешения экрана?

1001
user2820379

Предположим, вы нажимаете клавиши со стрелками для прокрутки или используете колесо мыши.

Если вы просто нажмете клавишу со стрелкой один раз или, соответственно, прокрутите колесиком мыши только один «тик» - будет ли расстояние, которое прокручивается в пикселях, различаться в зависимости от того, на каком разрешении находится машина, на которой я сейчас работаю? Или расстояние прокрутки фиксированное расстояние?

2

2 ответа на вопрос

3
Sigmo

... И, как правило, вы можете указать, сколько «линий» нужно прокручивать за «щелчок» колесика мыши в настройке мыши. В зависимости от драйвера, это может быть в том же диалоговом окне, которое позволяет вам установить, насколько далеко перемещается курсор относительно того, как далеко вы двигали мышь (скорость курсора мыши).

Многое из этого можно настроить в драйвере мыши и в различных программах (например, в веб-браузерах).

При написании программы на многих языках вы можете управлять движениями мыши и колесом прокрутки, а также тем, что вы делаете с помощью клавиш со стрелками вверх / вниз и т. Д. Внутри программы. Так что это не фиксированная вещь. Это во многом зависит от прихоти программиста, пишущего любую программу, которую вы запускаете.

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

Имейте в виду, что разрешение экрана не означает пикселей на дюйм. Это означает общее количество пикселей, доступных по вертикали или по горизонтали.

Таким образом, у меня может быть монитор с разрешением 1920 X 1080 с диагональю 22 дюйма, и у меня может быть другой монитор с таким же разрешением (1920 X 1080), но с диагональю 52 дюйма. Оба монитора имеют одинаковое разрешение. Но у маленького есть более тонкий "шаг" к его пикселям. Пиксели ближе друг к другу и меньше.

Таким образом, используя большую, каждая прокрутка мыши будет перемещать курсор (или что-то еще) на гораздо большее фактическое физическое расстояние, чем при использовании меньшего монитора. Но эффект тот же, потому что оба монитора показывают одни и те же данные. Это просто представлено меньше на маленьком мониторе. Большой мог бы сделать хороший телевизор на расстоянии 15 футов. Меньший выглядел бы так же, как на расстоянии нескольких футов от вас (как на рабочем столе).

Такое же разрешение Тот же эффект восприятия для каждого нажатия клавиши или колеса прокрутки. Но разные физические размеры и удобные расстояния просмотра.

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

Изображение в 2 мегапикселя, сопоставленное с отпечатком 3,5 "X 5", будет выглядеть очень гладким и с высоким качеством. Поместите это же изображение в два мегапикселя (разрешение) на печать размером с плакат, и при просмотре с близкого расстояния вы увидите отдельные пиксели в виде маленьких блоков. Так что это не будет выглядеть гладко или качественно. Все же оба изображения имеют одинаковое разрешение и несут одинаковую информацию. И если вы отступите от плаката и посмотрите на него с разумного расстояния просмотра, он снова будет выглядеть гладким и хорошего качества.

То же самое с монитором. Если бы у вас был 52-дюймовый телевизор с тем же шагом пикселей (между пикселями), что и у нашего 22-дюймового монитора с разрешением 1920 x 1080, он имел бы разрешение, которое было бы примерно в 5,6 раза больше (поскольку его площадь поверхности в 5,6 раза больше).

Наш монитор или телевизор 1920 X 1080 составляет около 2 мегапикселей. Неважно, большой он или маленький, он все равно 2 мегапикселя. И это то, что обычный HDTV 1080p.

Но если бы мы решили, что нам нужно такое же количество пикселей на дюйм на нашем 52- дюймовом телевизоре, что и на 22- дюймовом мониторе компьютера, то мы получили бы в 5,6 раза больше пикселей, чтобы они покрывали эту большую площадь поверхности тот же шаг пикселя (интервал / размер пикселей).

Это было бы действительно впечатляющим показом. Это будет иметь разрешение 4,538 х 2,553 пикселей! Это был бы 11,6-мегапиксельный дисплей. Чертовски приятно!

Итак, дело в том, что между размером и разрешением нет единой физической взаимосвязи.

Разрешение - это количество дискретных шагов, на которые мы что-то разделили. Но, не зная общего размера этого чего-либо, мы не можем сказать, каков размер этих шагов.

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

Это было, наверное, достаточно скучно. Но, надеюсь, это полезно для всех, кто на самом деле все это читает. :)

1
Itai

Это гораздо сложнее, чем это. Мало того, что это зависит от браузера и настраивается на некоторых, смещение прокрутки зависит от прокручиваемого элемента. Есть много возможностей. Некоторые элементы прокручиваются, например, на одну текстовую строку, на определенный размер блока или на пиксель.

Похожие вопросы