对于Java 9应用程序,如何在Windows上禁用缩放UI?

Mar*_*rcG 5 scaling compiler-flags java-9 hidpi

Java 8中没有适当的HiDPI支持.

Java 9中,JavaFx应用程序正确扩展到它们所在的监视器.例如,如果我的监视器设置为150%的缩放,Java应用程序将缩放到150%.

见:http://openjdk.java.net/jeps/263

但是,出于测试目的,我需要能够在Windows 10中使用java.exe标志禁用扩展.如何实现此目的?

另外,也许我可以在应用程序本身内以编程方式禁用(并重新启用)?

Jer*_*mie 6

如果需要,可以从该网站找到另外几个有用的 JVM 参数:

-Dsun.java2d.uiScale.enabled=false
-Dsun.java2d.win.uiScaleX=1.0 -Dsun.java2d.win.uiScaleY=1.0
Run Code Online (Sandbox Code Playgroud)


Ada*_*dam 5

我在实质性错误报告中发现了这个晦涩的选项。这解决了Swing应用程序的问题。

-Dsun.java2d.uiScale=1.0

如果您使用的是JavaFX,则需要

-Dprism.allowhidpi=false

不幸的是,我找不到这两个选项的官方文档

  • `System.setProperty("sun.java2d.uiScale", "1.0");` 在 JDK 11 和 Swing 上为我工作,谢谢! (4认同)