【问题标题】:Java: Canvas.drawline, how to draw a thicker lineJava:Canvas.drawline,如何画粗线
【发布时间】:2021-07-15 12:44:27
【问题描述】:

我试图在我的画布上画一个闪电,但这条线只有一个像素宽。怎样才能让线条变粗?

 canvas.drawLine(lightningBoltArray[i].startXArray[k],lightningBoltArray[i].startYArray[k],lightningBoltArray[i].endXArray[k],lightningBoltArray[i].endYArray[k],paintHalfAlpha);

技巧是否在应用油漆的设置中?

【问题讨论】:

  • 看看Graphics2DStrokePaint会更好

标签: java canvas line


【解决方案1】:

如果你没有做一些允许你这样做的事情,你可能画错了。假设这是在 JPanel 实例中。它也适用于Canvas 中的paint(Graphics g),但Java 中的大多数绘画都是使用Swing 完成的

public void paintComponent(Graphics g) {
   super.paintComponent(g);
   Graphics2D g2d = (Graphics2D) g;
   // other stuff
   float width = 3f;
   BasicStroke stroke = new BasicStroke(width);
   g2d.setStroke(stroke);
   g2d.drawLine(...);
   // more stuff
}

【讨论】:

  • 感谢您的回答。解决方案是做 LightningPaint.setstrokewidth(5)
  • 您是否使用了您未提及的任何外部库?
  • 不。我可能应该,但我只是使用 Java Canvas 作为我的图形引擎
  • 那么lightningPaint.setstrokewidth从何而来?
  • Paint 类原生
猜你喜欢
  • 2023-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-02
  • 2019-12-24
  • 1970-01-01
  • 1970-01-01
  • 2014-05-22
相关资源
最近更新 更多