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ò.
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 –