Нарисуйте линии с торцевыми крышками в C#

Свойства Pen класса StartCap и EndCap определяют, как линия рисует свои концевые колпачки. В этом примере используется следующий код для создания образцов предопределенных колпачков.

private void Form1_Paint(object sender, PaintEventArgs e)
{
    e.Graphics.Clear(BackColor);
    e.Graphics.SmoothingMode = SmoothingMode.AntiAlias;

    const int line_width = 10;
    int y = 10;
    int x1 = 110;
    int x2 = ClientSize.Width - 2 * line_width;
    using (Pen pen = new Pen(Color.Blue, line_width))
    {
        LineCap[] caps = (LineCap[])Enum.GetValues(typeof(LineCap));
        foreach (LineCap cap in caps)
        {
            e.Graphics.DrawString(cap.ToString(),
                Font, Brushes.Black, 10, y);
            pen.StartCap = cap;
            pen.EndCap = cap;
            e.Graphics.DrawLine(pen, x1, y, x2, y);
            y += 2 * line_width;
        }
    }
}
 private void Form1_Paint (отправитель объекта, PaintEventArgs e)
{
     e.Graphics.Clear (BackColor);
     e.Graphics.SmoothingMode = SmoothingMode.AntiAlias;

     const int line_width = 10;
     int y = 10;
     int x1 = 110;
     int x2 = ClientSize.Width - 2 * line_width;
     используя (Pen pen = new Pen (Color.Blue, line_width))
     {
         LineCap [] caps = (LineCap []) Enum.GetValues (typeof (LineCap));
         foreach (колпачок LineCap в шапках)
         {
             e.Graphics.DrawString (cap.ToString (),
                 Шрифт, Brushes.Black, 10, y);
             pen.StartCap = cap;
             pen.EndCap = cap;
             e.Graphics.DrawLine (перо, x1, y, x2, y);
             y + = 2 * line_width;
         }
     }
}  

...

Для каждого значения код устанавливает значения Pen объекта StartCap и EndCap для значения. Затем он рисует имя значения LineCap и использует Pen для рисования образца.

Большинство торцевых крышек просты, но некоторые имеют особое значение. NoAnchor делает линию не включенной. AnchorMask указывает маску, используемую для определения того, является ли крышка линии якорной крышкой. Я не знаю, зачем вам это нужно.

Источник: http://csharphelper.com/blog/2015/02/draw-lines-end-caps-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Adblock
detector