Свойства | Описание |
---|---|
Brush | Определяет тип Brush для использования с данным типом Pen |
Color | Определяет тип Color для использования с данным типом Pen |
CustomStartCap CustomEndCap | Читает или устанавливает параметры пользовательского стиля концов линий, создаваемых с помощью данного типа Pen. |
DashCap | Читает или устанавливает параметры стиля концов линий, используемого для прерывистых линий, создаваемых с помощью данного типа Pen |
DashPattern | Читает или устанавливает массив пользовательской маски для рисования прерывистых линий. Соответствующие "тире" складываются из сегментов линий |
DashStyle | Читает или устанавливает параметры стиля, используемого для прерывистых линий, создаваемых с помощью данного типа Pen |
StartCap EndCap | Читает или устанавливает встроенный стиль концов линий, создаваемых с помощью данного типа Pen. Стиль концов линий Pen устанавливается в соответствии с перечнем LineCap, определенным в пространстве имен System.Drawing.Drawing2D |
Width | Читает или устанавливает ширину данного Pen |
DashOffset | Читает или устанавливает расстояние от начала линии до начала шаблона прерывистой линии |
Помните о том, что вдобавок к типу Pen в GDI+ предлагается коллекция Pens. Используя ряд статических свойств, вы можете извлечь из этой коллекции объект Pen (или нужный цвет) "на лету", не создавая пользовательский тип Pen вручную. Однако следует знать
Если вам понадобятся какие-то экзотические перья, вы должны создать тип Pen вручную. Предоставив вам эту информацию, я теперь могу перейти к построению примеров геометрических изображений с помощью простых типов Pen. Предположим, что у нас есть главный объект Form, способный отвечать на запросы визуализации. Реализация ответа выглядит так.
private void MainForm_Paint(object sender, PaintEventArgs e) {
Graphics g
// Создание большого пера синего цвета.
Pen bluePen = new Pen(Color.Blue, 20);
// Получение готового пера из типа Pens.
Pen pen2 = Pens.Firebrick;
// Визуализация некоторых шаблонов.
g.DrawEllipse(bluePen, 10, 10, 100, 100);
g.DrawLine(pen2, 10, 130, 110, 130);
g.DrawPie(Pens.Black, 150, 10, 120, 150, 90, 80);
// Рисование пурпурного полигона с пунктирной границей.…
Pen pen3 = new Pen(Color.Purple, 5);
pen3.DashStyle = DashStyle.DashDotDot;
g.DrawPolygon(pen3, new Point[] { new Point(30, 140), new Point(265, 200), new Point(100, 225), new Point(190, 190), new Point(50, 330), new Point(20, 180) });
//… и прямоугольника, содержащего текст.…
Rectangle r = new Rectangle (150, 10, 130, 60);
g.DrawRectangle(Pens.Blue, r);