Нарисуйте линии с пользовательскими тире в C#
Чтобы создать строки с пользовательскими тире, сначала создайте объект Pen и установите его свойство DashStyle в Custom. Затем установите его свойство DashPattern в массив чисел с плавающей запятой, которые указывают, сколько единиц нужно рисовать, а затем пропускать. Например, массив {5, 1} означает draw 5, пропустить 1, а затем повторить по мере необходимости.
Единица чертежа - это толщина линии. Например, если линия имеет ширину в 5 пикселей, то массив {5, 1} означает draw 5 & times; 5 = 25 пикселей, пропустить 1 раз; 5 = 5 пикселей и повторите.
Пример программы использует следующий код для рисования своих образцов.
private void Form1_Paint(object sender, PaintEventArgs e) { int y = 20; int x1 = 65; int x2 = ClientSize.Width - 10; using (Pen dashed_pen = new Pen(Brushes.Red, 5)) { dashed_pen.DashStyle = DashStyle.Custom; dashed_pen.DashPattern = new float[] { 3, 1 }; e.Graphics.DrawString("3, 1", this.Font, Brushes.Black, 10, y - 8); e.Graphics.DrawLine(dashed_pen, x1, y, x2, y); y += 20; dashed_pen.DashPattern = new float[] { 5, 1, 5, 5 }; e.Graphics.DrawString("5, 1, 5, 5", this.Font, Brushes.Black, 10, y - 8); e.Graphics.DrawLine(dashed_pen, x1, y, x2, y); y += 20; dashed_pen.DashPattern = new float[] { 5, 1 }; e.Graphics.DrawString("5, 1", this.Font, Brushes.Black, 10, y - 8); e.Graphics.DrawLine(dashed_pen, x1, y, x2, y); y += 20; dashed_pen.DashPattern = new float[] { 1, 3 }; e.Graphics.DrawString("1, 3", this.Font, Brushes.Black, 10, y - 8); e.Graphics.DrawLine(dashed_pen, x1, y, x2, y); y += 20; dashed_pen.DashPattern = new float[] { 3, 1, 1, 1 }; e.Graphics.DrawString("3, 1, 1, 1", this.Font, Brushes.Black, 10, y - 8); e.Graphics.DrawLine(dashed_pen, x1, y, x2, y); y += 20; } }