получить эквивалентный пиксель двух разных широких разрешений

Я хочу получить эквивалентное расположение пикселей в двух разных широких разрешениях.

Вот пример.

В разрешении 1366×768 требуемый пиксель расположен в строке 120 и столбце 300.
Я хочу преобразовать его в более низкое разрешение и получить эквивалент 120×300 точек от оригинала до конвертированного.

0

Решение

Используйте проценты.

например 120/1366=60/683знак равноx ~ 0.0878 а также 300/768=25/64знак равноy ~ 0.3906, Теперь просто умножьте эти проценты на желаемое разрешение.

Например, если у вас есть разрешение 800x600 и хочу эту позицию просто умножить.

x = 800 * 0.0878 = 70.24
y = 600 * 0.3906 = 234.36

Это работает, потому что позиция была «нормализована», так что она лежит между 0 а также 1, Все, на что вы умножите это, будет иметь одинаковые «размеры». например предположим, что мы хотим позицию 400x300 с экрана 800x600 на другом экране, чтобы иметь те же отношения. Мы можем сделать то же самое для вашей проблемы там:

x = 400 / 800 = 0.5
y = 300 / 600 = 0.5

Чтобы получить позицию для любого другого экрана, мы умножаем результат оттуда на разрешение.

процент

1

Другие решения


По вопросам рекламы [email protected]