Я использую java, чтобы получить размеры и разрешение моего экрана. Когда я запускаю следующий код, я получаю вывод ниже.
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);
вывод:
Width of Screen Size is 1920 pixels
Height of Screen Size is 1080 pixels
120
Теперь Javadoc говорит, что getScreenResolution возвращает разрешение в dpi (точек на дюйм). Я понимаю, что если у меня есть изображение шириной 600 пикселей, то на моем экране оно будет 5 дюймов. Когда я измеряю, это на самом деле 4 дюйма в ширину. Указав мне, что это должно быть 150 dpi.
Мой монитор имеет диагональ 15,6 дюйма, и я измеряю его ширину 13,6 дюйма и высоту чуть более 7,6 дюйма. Теперь ширина моего экрана, по-видимому, составляет 1920 пикселей в ширину, что составляет около 141 пикселя на дюйм. Точно так же вычисляется 1080/7,6. примерно до 141 пикселя на дюйм.
На этой веб-странице отображается изображение размером 600x600 пикселей. Я измеряю его на своем экране как 4,25 дюйма, что соответствует 141 пикселю.
Почему getScreenResolution возвращает 120?
Пожалуйста, дайте мне знать, если я ошибаюсь в чем-либо из этого.