Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java中遇到surface pros的字体大小问题_Java_Swing_Javafx - Fatal编程技术网

在java中遇到surface pros的字体大小问题

在java中遇到surface pros的字体大小问题,java,swing,javafx,Java,Swing,Javafx,我有一个应用程序,除了surface pro平板电脑外,它可以在屏幕上完美工作,这会导致字体过大,无法阅读,这是当前的代码,我个人没有写过这篇文章,但有什么解决方案吗?还想了解一下为什么你要将屏幕的分辨率乘以并除以 int fontSize = (int) Math.round(Float.parseFloat(properties.get("FontSize").toString()) * screenRes / 75.0); 编辑 这似乎与新闻部有关。大多数显示器为96,但surface

我有一个应用程序,除了surface pro平板电脑外,它可以在屏幕上完美工作,这会导致字体过大,无法阅读,这是当前的代码,我个人没有写过这篇文章,但有什么解决方案吗?还想了解一下为什么你要将屏幕的分辨率乘以并除以

 int fontSize = (int) Math.round(Float.parseFloat(properties.get("FontSize").toString()) * screenRes / 75.0);
编辑

这似乎与新闻部有关。大多数显示器为96,但surface Pro从144 DPI开始。我可以实现一个if语句来检查屏幕分辨率是否高于140,但是我觉得这不是正确的方法

更新


我将不断向您更新我的发现,似乎JavaSwing实际上不支持高DPI或与高DPI配合使用。Oracle似乎更喜欢用户使用JavaFX,如果我错了,请纠正我。

Swing不支持DPI,JavaFX支持!看看这个(博客帖子)[Swing不支持DPI,JavaFX支持!看看这个(博客帖子)[。