Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Диагональ монитора

Сообщения:  [1-7] 

 
 автор: sim5   (11.05.2008 в 10:28)   письмо автору
 
   для: PAT   (11.05.2008 в 10:19)
 

А вот как вы думаете, знает ли компьютер, какое разрешение (в точках на дюйм) в данный момент на экране? Не имеет ни малейшего представления. Более того, компьютер не может об этом спросить ни у монитора, ни у графической карты. Потому что те тоже не знают.

Ну это неверное утверждение. Компьютеру как раз несложно это сделать, для этого есть WinAPI функции.

   
 
 автор: PAT   (11.05.2008 в 10:19)   письмо автору
 
   для: sim5   (11.05.2008 в 08:12)
 

Да, вы правы.
"Разруха - она в головах" - http://www.artlebedev.ru/kovodstvo/paragraphs/70/ :-)

   
 
 автор: sim5   (11.05.2008 в 08:12)   письмо автору
 
   для: PAT   (10.05.2008 в 16:58)
 

Заинтересовала меня эта фича)) Но неверно она будет давать результат. Первое - document.getElementById ('test1inches').offsetWidth, это будет текущее разрешение монитора в dpi. Оно никак не зависит от выбранного размера экрана, поэтому, например, для 15" монитора, с разрешением 96dpi и размером 1024х768, получим:

<script>
var w = 1024;
var h = 768;
var dpi = 96;
alert(Math.ceil(Math.sqrt(w*w + h*h)/dpi)+1);
</script>

верный результат - 15". Если же у пользователя будет включен размер 800х600, получим 12". Ошибка будет возникать и при смене разрешения. Например, при 72dpi, для 15" монитора верный результат будет получен при размере экрана 800х600, а при 1024х768 получим диагональ 19".
Плюс еще нужно учитывать пропорцию экрана, например, 22" могут быть у экрана с соотношением сторон 4:3, так и 16:10 или 16:9, а выглядеть в конечном итоге будет по разному.

   
 
 автор: sim5   (10.05.2008 в 17:50)   письмо автору
 
   для: PAT   (10.05.2008 в 16:58)
 

Интересно, а ведь действительно можно. Только получается ошибка на 1 дюйм. Вернее, для ЭЛТ это будет диагональ рабочей области монитора.

   
 
 автор: PAT   (10.05.2008 в 16:58)   письмо автору
 
   для: Yustys   (10.05.2008 в 14:34)
 

1. Можно, например, сразу после тега <BODY> прописать ТЕСТОВЫЙ элемент, который будет иметь ширину ровно один дюйм, например - <HR ID="test1inches" STYLE="width: 1in">.

2. После загрузки этого ТЕСТОВОГО элемента (т.е. сразу после тега <HR ID="test1inches">) надо прописать скриптовой блок <SCRIPT>...</SCRIPT>, в котором произвести следующие действия:

3. Определить ширину и высоту экрана (в пикселах) - screen.availWidth и screen.availHeight.

4. По теореме Пифагора найти диагональ (опять же в пикселах) как корень квадратный из суммы квадратов двух катетов (т.е. двух полученных в п.3 величин).

5. Определить ширину ТЕСТОВОГО элемента (в пикселах) - document.getElementById ('test1inches').offsetWidth.

6. Узнать диагональ монитора (в дюймах), разделив полученное в п.4 на полученное в п.5. Чтобы получить 14, 15, 17, 19 etc... дюймов, результат надо округлить до целых, используя метод toFixed (0).

   
 
 автор: sim5   (10.05.2008 в 14:49)   письмо автору
 
   для: Yustys   (10.05.2008 в 14:34)
 

Никакими, браузер такой информации не выдает. Эту информацию можно взять только их реестра, и то не всегда она может быть в явном виде. Если же вы решив теорему Пифагора, найдете диагональ, то она у вас будет одинакова для всех мониторов при одном и том же разрешении, так как размеры катетов будут естественно одни и те же, например, 1024 и 768.

   
 
 автор: Yustys   (10.05.2008 в 14:34)   письмо автору
 
 

Всем известно, что для корректной подстройки сайта под разные мониторы посетителей, достаточно воспользоваться несложным скриптом на ява скрипт в сочетании с аяксом, но качество и корректность отображения сайта на разных мониках зависит не только от разрешения, но и от диагонали - на 15 и 19 дюймовых экранах сайт смотрится по разному.
ВОПРОС: Как и какими средствами можно определить диагональ монитора посетителя?

   

Сообщения:  [1-7] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования