1 使用预定义形状
画笔属性pen.StartCap和pen.EndCap指定线条的两端形状。
预定义的形状:LineCap.Round 、LineCap.ArrowAnchor等等
如: pen.StartCap = LineCap.Round;
2 使用自定义形状
如果使用自定义的端部形状,则使用pen.CustomStartCap和pen.CustomEndCap属性
CustomLineCap myCap = new CustomLineCap(null,path);//自定义端部形状
path为GraphicsPath类型。
如:pen.CustomStartCap = mycap;
示例:
Code
GraphicsPath hPath = new GraphicsPath();
// Create the outline for our custom end cap.
hPath.AddLine(new Point(0, 0), new Point(0, 5));
hPath.AddLine(new Point(0, 5), new Point(5, 1));
hPath.AddLine(new Point(5, 1), new Point(3, 1));
//构造一个挂钩形状的端部形状
CustomLineCap HookCap = new CustomLineCap(null, hPath);
// 设定画笔线条端部形状为它
Pen customCapPen = new Pen(Color.Black, 5);
customCapPen.CustomStartCap = HookCap;
customCapPen.CustomEndCap = HookCap;
//使用预定义的端部形状
Pen capPen = new Pen(Color.Red, 10);
capPen.StartCap = LineCap.Round;
capPen.EndCap = LineCap.ArrowAnchor;
//无端部形状
Pen pen = new Pen(Color.Chartreuse, 7);
// Create a line to draw.
Point[] points = { new Point(100, 100), new Point(300, 100) };
// Draw the lines.
e.Graphics.DrawLines(capPen, points);
e.Graphics.DrawLines(pen,points);
e.Graphics.DrawLines(customCapPen, points);