Эмуляция devicePixelRatio

Polina

Client
Регистрация
29.05.2015
Сообщения
37
Благодарностей
1
Баллы
8
Есть такой свойство браузера, как devicePixelRatio (Device Pixel Aspect Ratio), которое позволяет сайтам определять размер экрана/масштаба девайса, чтобы подсовывать контент определённого типа. Подробно здесь можно почитать https://habrahabr.ru/post/159419/
Также используется в фингерпринте. Некоторые сайты это свойство с браузера считывают. Логично предположить, что уникализация профилей сводится на нет, если у них у всех будет одинаковый devicePixelRatio при прочих разных параметрах (юзерагент, разрешение экрана). Даже в разных браузерах на одном реальном ПК этот параметр отличатся может из-за разного масштаба в браузерах.

Вопрос: как через ZP (версия 5.10.4.0) это свойство задавать? Поиск не помог
 

Polina

Client
Регистрация
29.05.2015
Сообщения
37
Благодарностей
1
Баллы
8
Практика показала, что даже в окне PM можно покрутить колесо мышки с зажатым CTRL и devicePixelRatio изменится, соответственно решением может быть изменение масштаба страницы
Как задать масштаб страницы можно?
Можно делать это нажатем CTRL+Num+/Num- но как через Zenno эмулировать нажатия комбинаций клавиш? Эмуляция мыши и клавиатуры это явно не то
 
Последнее редактирование:

copper12

Client
Регистрация
26.11.2016
Сообщения
1 111
Благодарностей
260
Баллы
63

Polina

Client
Регистрация
29.05.2015
Сообщения
37
Благодарностей
1
Баллы
8
Собственно уже удалось это найти и протестить. Вот это
Код:
instance.ActiveTab.KeyEvent("A", "press", "ctrl");
например, работает

А вот
Код:
instance.ActiveTab.KeyEvent("OemMinus", "press", "ctrl");
или
Код:
instance.ActiveTab.KeyEvent("NumPad-", "press", "ctrl");
Не дают эффекта. Более того CTRL + Num-/Num+ не работают в браузере PM, а CTRL + Скролл работает

Отсюда вытекает вопрос: как эмулировать скролл мыши?
 

copper12

Client
Регистрация
26.11.2016
Сообщения
1 111
Благодарностей
260
Баллы
63

Polina

Client
Регистрация
29.05.2015
Сообщения
37
Благодарностей
1
Баллы
8
Из ссылки мне непонятно, как мне сделать нажатие CTRL + "Скролл в минус".
Там реализация самого скроллинга страницы, т.е. листание за счёт перехода к элементу и координатам положения курсора. На форуме это найти удавалось уже. Мне же нужно "покрутить" колесо мыши с целью изменить масштаб страницы с зажатым CTRL.
 

ibred

Client
Регистрация
04.04.2015
Сообщения
3 835
Благодарностей
3 553
Баллы
113
Если ещё актуально:
C#:
Tab tab = instance.ActiveTab;
tab.PageScale = 150; // Устанавливаем Pixel Ratio в 150%

// Всё, значение установлено. Если Вы захотите его получить:
return tab.PageScale; // Вернет значение 150. JavaScript на стороне сервера будет определять, как 1.5
 
  • Спасибо
Реакции: AndrewSuul

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)