Wie erhalte ich die physikalische Größe des Bildschirms (d. H. In Zoll)?

Ich versuche herauszufinden, wie die physischen Abmessungen eines Gerätebildschirms über Javascript ermittelt werden können. Bisher ist meine Schlussfolgerung, dass es derzeit unmöglich ist, aber ich hoffe, jemand kann mir das Gegenteil beweisen :).

Bisher habe ich versucht, diese Informationen zu ermitteln, indem ich die DPI des Geräts ermittelt habe. Es scheint jedoch, dass hier keine Möglichkeit besteht, den korrekten Wert zu ermitteln, da alle von mir getesteten Geräte (einige HDPI- und XHDPI-Android-Geräte, ein iPhone4S, ein iPad 2 und ein iPad 3) 96DPI melden.

Die erste Methode, um die DPI zu erhalten, die ich ausprobiert habe, ist eine, die Sie überall im Internet finden können: erstelle einediv mit einer CSS Breite von1inerhalten seineclientWidth oderoffsetWidth und da ist deine DPI. Funktioniert nicht, alle Geräte melden 96.

Die zweite Methode war die Verwendung derAuflösung Medienabfrage, etwas in der Art von:

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

Ich dachte, das wäre eine clevere Lösung, aber leider bringt das auch 96 zurück.

Kann ich noch etwas ausprobieren?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage