Java Swing,所有图像都呈现像素化

时间:2018-05-21 19:07:26

标签: java image swing

我的Java Swing程序中的每个图像都将以低质量显示,如下所示: enter image description here

从图像中可以看出,它不仅仅是我遇到问题的图像,它的图形一般都是这样显示的。在右侧部分,您可以看到反映到JFreeChart Graphic的问题。有没有其他人有这个问题,它是与显卡或可能是Windows DPI有关?相同的程序将在其他机器中完美呈现,因此我非常确定它与代码无关。

2 个答案:

答案 0 :(得分:1)

如果您使用的是g2d,请尝试启用抗锯齿功能。

g2d.setRenderingHint(
    RenderingHints.KEY_ANTIALIASING,
    RenderingHints.VALUE_ANTIALIAS_ON);

(更多信息:Java2D Graphics anti-aliased

在JFreeChart中尝试以下代码:

chart.setRenderingHints(new RenderingHints(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON));

(来源:http://www.jfree.org/forum/viewtopic.php?t=7958

答案 1 :(得分:0)

我的问题是我在Windows上开启了125%的缩放比例,并且必须缩放图像和帧以适应它们的大小。您只需转到显示设置,然后在缩放和布局设置缩放到100%部分。

如果您不想放弃缩放,可以通过添加以下参数将此参数添加到IDE上的VM:

  

-Dsun.java2d.dpiaware =假

或者,如果第一个不起作用,请尝试此操作。

  

-Dsun.java2d.uiScale = 1.0

这仅适用于Swing