gpt4 book ai didi

Java Toolkit 屏幕分辨率偏差

转载 作者:搜寻专家 更新时间:2023-11-01 00:51:15 30 4
gpt4 key购买 nike

我正在使用 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 像素。

This web page显示 600x600 像素的图像。我在屏幕上测量它为 4.25",计算为 141 像素。

为什么 getScreenResolution 返回 120?

如果我在这方面有任何错误,请告诉我。

最佳答案

Toolkit.getDefaultToolkit().getScreenResolution() 尝试获取分辨率,但取决于驱动程序的准确度和其他因素(例如,并非所有视频卡和显示器之间的连接都无法使用关于尺码的反馈),返回的尺码不能完全插入。

关于Java Toolkit 屏幕分辨率偏差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15334392/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com