Jak uzyskać fizyczny rozmiar ekranu (np. W calach)?

Próbuję dowiedzieć się, jak uzyskać fizyczne wymiary ekranu urządzenia za pomocą Javascript. Jak dotąd, doszedłem do wniosku, że jest to obecnie niemożliwe, ale mam nadzieję, że ktoś może udowodnić, że się mylę :).

Do tej pory próbowałem uzyskać te informacje, znajdując DPI urządzenia, ale wygląda na to, że nie ma możliwości uzyskania prawidłowej wartości tutaj, ponieważ wszystkie testowane przeze mnie urządzenia (niektóre urządzenia Android HDPI i XHDPI, iPhone4S, iPad 2 i iPad 3) raport 96 DPI.

Pierwszą metodą uzyskania DPI, którego próbowałem, jest metoda dostępna wszędzie w Internecie: utwórzdiv o szerokości CSS1in, zrób toclientWidth luboffsetWidth i jest twój DPI. Nie działa, wszystkie urządzenia zgłaszają 96.

Drugą metodą było użyciezapytanie o media rozdzielczości, coś w rodzaju:

for (var i=90; i < 400; i++) {
    if (matchMedia('(resolution: ' + i + 'dpi)').matches) {
       return i;
    }
}

Myślałem, że to inteligentne rozwiązanie, ale niestety również zwraca 96.

Czy zostało jeszcze coś, co mogę spróbować?

questionAnswers(2)

yourAnswerToTheQuestion