GraphicsPath類可以用來創建和操作二維路徑(如直線、曲線、多邊形等),可以用于裁剪和合并圖形。
GraphicsPath path = new GraphicsPath();
path.AddRectangle(new Rectangle(50, 50, 100, 100));
Graphics g = this.CreateGraphics();
g.SetClip(path);
// 在裁剪區域內繪制圖形
g.FillRectangle(Brushes.Red, 0, 0, this.Width, this.Height);
// 重置剪裁區域
g.ResetClip();
以上代碼創建了一個矩形路徑,然后將裁剪區域設置為該路徑的區域,最后在裁剪區域內繪制一個紅色矩形。最后調用ResetClip方法來重置剪裁區域。
GraphicsPath path1 = new GraphicsPath();
path1.AddEllipse(new Rectangle(50, 50, 100, 100));
GraphicsPath path2 = new GraphicsPath();
path2.AddRectangle(new Rectangle(100, 100, 100, 100));
path1.AddPath(path2, false); // 將path2合并到path1中
Graphics g = this.CreateGraphics();
g.DrawPath(Pens.Black, path1);
以上代碼創建了一個橢圓路徑和一個矩形路徑,然后使用AddPath方法將矩形路徑合并到橢圓路徑中,最后繪制出合并后的路徑。