簡體   English   中英

如何在圖像上畫線?

[英]how to draw a line on a image?

我想在bmp圖像上繪制一條線,該線在C#中使用drawline方法傳遞給方法

public void DrawLineInt(Bitmap bmp)
{

Pen blackPen = new Pen(Color.Black, 3);

int x1 = 100;
int y1 = 100;
int x2 = 500;
int y2 = 100;
// Draw line to screen.
e.Graphics.DrawLine(blackPen, x1, y1, x2, y2);
}

這給了一個錯誤。所以我想知道如何在這里包含paint事件(PaintEventArgs e)

並且還想知道在調用drawmethod時如何傳遞參數?

DrawLineInt(Bitmap bmp);

這會產生以下錯誤“當前上下文中不存在名稱'e'”

“在bmp圖像上繪制一條線,使用C#中的drawline方法傳遞給方法”

PaintEventArgs e會建議您在對象的“paint”事件中執行此操作。 因為你在一個方法中調用它,所以不需要在任何地方添加PaintEventArgs e。

要在方法中執行此操作,請使用@ BFree的答案。

public void DrawLineInt(Bitmap bmp)
{
    Pen blackPen = new Pen(Color.Black, 3);

    int x1 = 100;
    int y1 = 100;
    int x2 = 500;
    int y2 = 100;
    // Draw line to screen.
    using(var graphics = Graphics.FromImage(bmp))
    {
       graphics.DrawLine(blackPen, x1, y1, x2, y2);
    }
}

重繪對象時會引發“Paint”事件。 有關更多信息,請參閱

http://msdn.microsoft.com/en-us/library/system.windows.forms.control.paint.aspx

您需要從Image獲取Graphics對象,如下所示:

using(var graphics = Graphics.FromImage(bmp))
{
   graphics.DrawLine(...)
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM