我正在使用 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);
output:
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?
如果我在这方面有任何错误,请告诉我。
Toolkit.getDefaultToolkit().getScreenResolution()
尝试获得分辨率,但取决于驱动程序的精确度和其他因素(例如并非视频卡和显示器之间的所有连接都无法反馈尺寸),返回的尺寸无法完全推算。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)