Поделиться через


Как нарисовать настраиваемую пунктирную линию

GDI+ предоставляет несколько стилей штрихов, перечисленных в перечислении DashStyle. Если стандартные стили тире не соответствуют вашим потребностям, вы можете создать пользовательский шаблон тире.

Пример

Чтобы нарисовать настраиваемую дефишированную линию, поместите длину дефисов и пробелов в массиве и назначьте массив в качестве значения свойства DashPattern объекта Pen. В следующем примере рисуется настраиваемая дефишированная линия на основе массива {5, 2, 15, 4}. Если умножить элементы массива на ширину пера 5, вы получите {25, 10, 75, 20}. Отображаемые тире чередуются по длине от 25 до 75, а пробелы — от 10 до 20.

На следующем рисунке показана результирующая чертовая линия. Обратите внимание, что последний отрезок линии должен быть короче 25 единиц, чтобы линия заканчивалась в точке (405, 5).

иллюстрация, показывающая пунктирную линию.

float[] dashValues = { 5, 2, 15, 4 };
Pen blackPen = new Pen(Color.Black, 5);
blackPen.DashPattern = dashValues;
e.Graphics.DrawLine(blackPen, new Point(5, 5), new Point(405, 5));
Dim dashValues As Single() = {5, 2, 15, 4}
Dim blackPen As New Pen(Color.Black, 5)
blackPen.DashPattern = dashValues
e.Graphics.DrawLine(blackPen, New Point(5, 5), New Point(405, 5))

Компиляция кода

Создайте форму Windows Form и обработайте событие Paint формы. Вставьте предыдущий код в обработчик событий Paint.

См. также