目盛り付きの色を使用して線を描くことは可能ですか?グラデーションカラーで線を描く
私は、線の一端が青で、もう一端が赤である直線または曲線(可能であれば)を描きたいと思います。
さらに、1行に1つ以上のグラデーションが必要な場合があります。たとえば、「ブルー」→「グリーン」→「レッド」の色です。私は、これが複数の勾配線をまとめて描かれていると考えています。
目盛り付きの色を使用して線を描くことは可能ですか?グラデーションカラーで線を描く
私は、線の一端が青で、もう一端が赤である直線または曲線(可能であれば)を描きたいと思います。
さらに、1行に1つ以上のグラデーションが必要な場合があります。たとえば、「ブルー」→「グリーン」→「レッド」の色です。私は、これが複数の勾配線をまとめて描かれていると考えています。
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
Graphics graphicsObject = e.Graphics;
using (Brush aGradientBrush = new LinearGradientBrush(new Point(0, 0), new Point(50, 0), Color.Blue, Color.Red))
{
using (Pen aGradientPen = new Pen(aGradientBrush))
{
graphicsObject.DrawLine(aGradientPen, new Point(0, 10), new Point(100, 10));
}
}
}
あなたの代わりにSystem.Drawing.SolidBrush
例のSystem.Drawing.Drawing2D.LinearGradientBrush
を使用する必要があります:あなたはdisposeの呼び出しされなければならない
e.Graphics.DrawLine(new Pen(new System.Drawing.Drawing2D.LinearGradientBrush(...
... –
いいえ、彼はこの場合には必要ありません。 Dispose()メソッドは、OnPaintメソッドの後に自動的に呼び出されます。 –
彼はペイントペンとブラシにすべきです。もっと良いことに、それらをメンバーとして生かしておき、それぞれのペイントに新しいものを作成しないでください。 – configurator