如何使像素完美Line2D - Graphics2D

Tea*_*App 9 java swing graphics2d

G'day,我有JPanel,上面有一些Line2D对象.问题是当我画这条线时,它不会像我想要的那样出现.线条不平滑,很难用词来解释,所以我发布了一张图片,

在此输入图像描述

缩放区域,

在此输入图像描述

如何让它们看起来更光滑而不是皱纹.

谢谢

Adr*_*scu 10

问题可能是您没有打开图形上下文的抗锯齿功能.在绘制之前尝试以下行:

graphics.setRenderingHint(
        RenderingHints.KEY_ANTIALIASING,
        RenderingHints.VALUE_ANTIALIAS_ON);
Run Code Online (Sandbox Code Playgroud)

(当然,这graphics是你的Graphics2D实例).

稍后,当您发现您正在绘制的文本也是丑陋和锯齿状时,您将需要使用

graphics.setRenderingHint(
        RenderingHints.KEY_TEXT_ANTIALIASING,
        RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
Run Code Online (Sandbox Code Playgroud)

但是,文字有点复杂; 这个提示有几个值可以根据(除其他外)你正在绘制文本的屏幕类型来使用.您应该阅读RenderingHints.KEY_TEXT_ANTIALIASINGAPI文档以获取这些详细信息.