【问题标题】:drawLine to write text MFdrawLine 写文本 MF
【发布时间】:2022-01-17 15:31:53
【问题描述】:

我正在尝试使用 drawLine 制作字母 MF,但正在努力连接线条

public void paintComponent (Graphics g)
{
    // Render the image.
    g.drawImage (image, 30,30, this);

    // INSERT YOUR CODE HERE:
    // Do your graffitti here. For example,
    g.drawLine(150,100,150,140);
    g.drawLine(150,0,150,0);
}

【问题讨论】:

  • 您没有向我们展示您绘制“MF”的实际尝试,因此我们无法说明为什么您无法连接线。不要只给我们你的作业。
  • 您的两条线不是在同一点开始或结束,那么您为什么期望它们连接?第二行中的一个零应该是 100 或 140
  • 请提供足够的代码,以便其他人更好地理解或重现问题。

标签: java swing


【解决方案1】:

您可以利用drawString

 g.drawImage (image, 30,30, this);
 //set font size (optional)
 Font font = g.getFont().deriveFont( 20.0f ); 
 g.setFont( font );
 g.drawString("MF", 150, 100);

如果你想逐行绘制:

//draw M
g.drawLine(150,100,150,140); //from top left vertically down
g.drawLine(150,100,165,115); //from top left diagonally dowm
g.drawLine(165,115,180,100); //continue diagonally up
g.drawLine(180,100,180,140); //continue vertically down
//todo draw F

来自文档:

使用当前颜色在点 (x1, y1) 和 (x2, y2) 在此图形上下文的坐标系中。

所以g.drawLine(150,0,150,0) 在相同的点(点 150,0 到点 150,0)之间画了一条线,这意味着它画的是一个而不是一条线。

【讨论】:

    猜你喜欢
    • 2017-11-08
    • 2020-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-04
    • 2015-12-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多