Graphics.DrawRectangle(Pen、RectangleF)
-
19-08-2019 - |
質問
http://msdn.microsoft.com/ en-us / library / system.drawing.graphics.drawrectangle.aspx
FillRectangle、DrawRectangle、FillElipse、およびDrawEllipseはすべて、x、y、幅、高さの4つのFloat(または<!> quot; Single <!> quot;)パラメーターを取ることができます。ただし、RectangleFを使用しないのはDrawRectangleのみです。
これがなぜなのか誰もが知っているのだろうかと思っていました。確かに彼らはただそれをオーバーロードするのを忘れていたようです。
解決
まあ、私にとっても省略のように見えます。
興味深いことに、RectangleF []配列をパラメーターとして使用するDrawRectanglesのオーバーロードがあります。
したがって、必要に応じて配列サイズ1でこれを使用できると思います。
他のヒント
Andyの回答によると、拡張子は以下のようになります
public static class GraphicsExtensions
{
public static void DrawRectangle(this Graphics g, Pen pen, RectangleF rect)
{
g.DrawRectangles(pen, new[] { rect });
}
}
Andyの答えに続いて、この単純な拡張メソッドは生活を楽にします。
using System.Drawing;
public static class GraphicsExtensions
{
public static void DrawRectangle(this Graphics g, Pen pen, RectangleF rect) =>
g.DrawRectangle(pen, rect.X, rect.Y, rect.Width, rect.Height);
}
所属していません StackOverflow