2013-03-11 16 views
5

Sto usando java per ottenere le dimensioni e la risoluzione del mio schermo. Quando eseguo il seguente codice, ottengo l'output di seguito.Java Toolkit descrepenses risoluzione schermo

Toolkit toolkit = Toolkit.getDefaultToolkit(); 
Dimension dim = toolkit.getScreenSize(); 
System.out.println("Width of Screen Size is "+dim.width+" pixels"); 
System.out.println("Height of Screen Size is "+dim.height+" pixels");  
int resolution =Toolkit.getDefaultToolkit().getScreenResolution(); 
System.out.println(resolution); 

uscita:

Width of Screen Size is 1920 pixels 
Height of Screen Size is 1080 pixels 
120 

Ora Javadoc dice che GetScreenResolution restituisce la risoluzione in dpi (punti per pollice). Prendo questo per dire se ho un'immagine larga 600px che sarebbe 5 pollici sul mio schermo. Quando misuro, è in realtà largo 4 pollici. Indicandomi che dovrebbe essere 150 dpi.

Il mio monitor è un monitor da 15,6 "e lo misuro a 13,6" di larghezza e un po 'più di 7,6 "di altezza Ora la larghezza del mio schermo è di 1920 pixel di larghezza che calcola a circa 141 pixel per pollice. 1080/7.6 calcola a circa 141 pixel per pollice

This web page visualizza un'immagine di 600 x 600. Lo misuro sullo schermo per essere 4,25 "che calcola a 141 pixel.

Perché getScreenResolution restituisce 120?

Per favore fatemi sapere se mi sbaglio su tutto ciò.

+3

non è possibile ottenere la getScreenResolution perché si tratta di qualcosa tra la calibrazione del sistema operativo, del driver e dell'utente. Qualunque cosa tu faccia, non è qualcosa di cui fidarsi. Controllare i seguenti collegamenti: http://stackoverflow.com/questions/6544510/how-to-get-the-screen-dpi-in-java http://stackoverflow.com/questions/4707756/how-to- correttamente rilevare-dpi-di-display-con-java –

risposta

0

Toolkit.getDefaultToolkit().getScreenResolution() tenta di ottenere la risoluzione, ma a seconda di quanto siano accurati i driver e altro (come che non tutte le connessioni tra la scheda video e il monitor non sono in grado di feedback sulle dimensioni), la dimensione restituita non può essere completamente spinto .

Problemi correlati