绘制自定义虚线

Windows GDI+ 提供了 DashStyle 枚举中列出的多种短划线样式。 如果这些标准短划线样式不符合你的需求,则可以创建自定义短划线模式。

若要绘制自定义虚线,请将短划线和空格的长度放在数组中,并将数组的地址作为参数传递给 Pen 对象的 Pen::SetDashPattern 方法。 以下示例基于数组 {5, 2, 15, 4} 绘制自定义虚线。 如果将数组的元素乘以 5 的笔宽度,则得到 {25, 10, 75, 20}。 显示的短划线在 25 到 75 的长度之间交替,间隔在 10 和 20 的长度之间交替。

REAL dashValues[4] = {5, 2, 15, 4};
Pen blackPen(Color(255, 0, 0, 0), 5);
blackPen.SetDashPattern(dashValues, 4);
stat = graphics.DrawLine(&blackPen, Point(5, 5), Point(405, 5));

下图显示了生成的虚线。 请注意,最后短划线的长度必须小于 25 个单位,使该行可以在 (405, 5) 处结束。

显示虚线的插图;每个段是一条短线,后跟一条长线