Java如何使用Graphics2D制作抗锯齿线?

问题描述 投票:0回答:1

我正在尝试使用Graphics2D制作绘图板,在其中我从MouseMotionlistener方法mouseDragged中的两个点(起点和终点)绘制一条线,但是每当添加这条线时,它看起来实际上都是锯齿状的。我用它来帮助抗锯齿,但似乎无能为力。

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

但是对于高笔划值没有任何帮助。这是我的绘图代码。

public void mouseDragged(MouseEvent e) {
        //sets up graphics2d object
        g2 = (Graphics2D)getGraphics();
        g2.setStroke(new BasicStroke(strokeSize));
        g2.setColor(color);
        g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);

        //draws line using points and shapes
        endPoint = e.getPoint();
        Shape line = new Line2D.Double(beginPoint, endPoint);
        g2.draw(line);
        beginPoint = endPoint;

beginPoint在mousePressed中被赋予一个值

java graphics drawing graphics2d antialiasing
1个回答
0
投票
有很多(非常酷的)渲染提示!我建议您开始尝试所有这些,然后看看哪些组合可以为您带来理想的结果!
© www.soinside.com 2019 - 2024. All rights reserved.