我必须绘制一个图表。我使用AWT库来做到这一点。
问题是,我需要绘制非常细的线条。 但我总是得到太粗的线条。
在这里你可以看到,我的意思。
以下是绘制这些行的代码
BufferedImage image = new BufferedImage(300, 60, BufferedImage.TYPE_INT_ARGB);
Graphics g = image.createGraphics();
Graphics2D g2 = (Graphics2D) g;
g2.setColor(Color.BLACK);
g2.setStroke(new BasicStroke(0.001f,BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER));
Shape s = new Line2D.Double(new Point2D.Double(x_pos, unten - 9),
new Point2D.Double(x_pos, unten - 4));
g2.draw(s);
答案 0 :(得分:0)
而不是
Shape s = new Line2D.Double(new Point2D.Double(x_pos, unten - 9),
new Point2D.Double(x_pos, unten - 4));
g2.draw(s);
尝试使用
g2.drawLine(x_pos, unten - 9, x_pos, unten - 4);
Shape
的东西真的无法应对低于1的厚度......(据我所知)
请不要在编码时混用不同的语言,这会让我眼癌(即使是德语):P。最好的是,只要坚持使用英文变量名,因为所有关键字都是英文。
答案 1 :(得分:0)
尝试:
g2.setStroke(new BasicStroke(0.5f));
或其他任何适合您需要的值。