如果在Windows上设置较大的字体(例如125%,120 DPI),则Java 9的Swing似乎首先呈现为较小的图像,然后将该图像缩放到屏幕。
文本仍然可以正确显示。但是1像素线是1像素或2像素强度的乘积。对角线是阶梯状的。图标被光栅化。
是否有任何命令行参数或API可以更改此行为?
示例编辑:
使用docs.oracle.com/javase/tutorial/uiswing/examples/components/中的MenuSelectionManagerDemo
最佳答案
我使用Java 9和Windows 10运行了Swing MenuSelectionManagerDemo ,您提出的问题似乎已解决。请参见下面的两个屏幕截图,在该屏幕截图中,我分别将缩放比例设置为100%和125%。
正如我在对OP的评论中指出的那样,这似乎是几个月前通过JDK错误修复解决的,我认为这是由OP提出的:
https://bugs.openjdk.java.net/browse/JDK-8174845
另一个值得注意的小问题是,将Windows设置从100%更改为125%是对“缩放和布局”的更改,并且将“更改文本,应用程序和其他项目的大小”。 (即,不仅仅是JDK错误响应中提到的字体更改。)