我想用Graphics.Lines()方法繪製粗線。但它看起來像API有一些錯誤。如果您嘗試使用以下代碼呈現用戶控件,您會看到奇怪的圖像。我想知道是否有一些平滑模式或類似的東西可以照顧這個線條畫故障。C#.NET中的粗線繪製問題
private void UserControl1_Paint(object sender, PaintEventArgs e)
{
int n = 100;
Point[] points = new Point[n];
double x = 2;
int y = 50;
for (int i = 0; i < n; i++)
{
Point p = new Point();
p.X = 200 + (int)(i * x);
p.Y = 200 + (int)(Math.Sin(i * 0.2) * y);
points[i] = p;
}
Pen pen = new Pen(new SolidBrush(Color.Blue));
//Pen pen = new Pen(new LinearGradientBrush(new Point(0, 0), new Point(0, 100), Color.Black, Color.Red));
pen.Width = 200;
e.Graphics.DrawLines(pen, points);
}
你能否用截圖澄清「怪異」? –
你爲什麼使用200的寬度? –
@邁克爾的東西:使'pen.Width = 1',我想你會得到你要的東西。 –