¿Cómo obtener el tamaño físico de la pantalla (es decir, en pulgadas)?

Estoy tratando de averiguar cómo obtener las dimensiones físicas de la pantalla de un dispositivo a través de Javascript. Hasta ahora, mi conclusión es que actualmente es imposible, pero espero que alguien me demuestre que estoy equivocado :).

Hasta ahora he tratado de obtener esta información al encontrar el DPI del dispositivo, pero parece que no hay manera de obtener el valor correcto aquí, ya que todos los dispositivos que he probado (algunos dispositivos Android con HDPI y XHDPI, un iPhone4S, un iPad 2 y un iPad 3) informe 96DPI.

El primer método para obtener el DPI que probé es uno que puede encontrar en cualquier lugar de Internet: cree undiv con un ancho CSS de1inobtener suclientWidth ooffsetWidth y ahí está tu DPI. No funciona, todos los dispositivos reportan 96.

El segundo método fue usar elresolución de consulta de medios, algo en la linea de:

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

Pensé que era una solución inteligente, pero desafortunadamente eso también devuelve 96.

¿Hay algo más que pueda intentar?

Respuestas a la pregunta(2)

Su respuesta a la pregunta