Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Для рисования линий с помощью GDI+ необходимо создать объект Graphics и объект Pen. Объект Graphics предоставляет методы, которые фактически выполняют рисование, а объект Pen хранит атрибуты, такие как цвет линии, ширина и стиль.
Рисование линии
Чтобы нарисовать линию, вызовите метод DrawLine объекта Graphics. Объект Pen передается в качестве одного из аргументов в метод DrawLine. Следующий пример рисует линию от точки (4, 2) к точке (12, 6):
myGraphics.DrawLine(myPen, 4, 2, 12, 6);
myGraphics.DrawLine(myPen, 4, 2, 12, 6)
DrawLine является перегруженным методом класса Graphics, поэтому ему можно передать аргументы несколькими способами. Например, можно создать два объекта Point и передать Point объекты в качестве аргументов в метод DrawLine:
Point myStartPoint = new Point(4, 2);
Point myEndPoint = new Point(12, 6);
myGraphics.DrawLine(myPen, myStartPoint, myEndPoint);
Dim myStartPoint As New Point(4, 2)
Dim myEndPoint As New Point(12, 6)
myGraphics.DrawLine(myPen, myStartPoint, myEndPoint)
Создание пера
При создании объекта Pen можно указать определенные атрибуты. Например, один конструктор Pen
позволяет указать цвет и ширину. Следующий пример рисует синюю линию ширины 2 от (0, 0) до (60, 30):
Pen myPen = new Pen(Color.Blue, 2);
myGraphics.DrawLine(myPen, 0, 0, 60, 30);
Dim myPen As New Pen(Color.Blue, 2)
myGraphics.DrawLine(myPen, 0, 0, 60, 30)
Пунктирные линии и окончания линий
Объект Pen также предоставляет свойства, такие как DashStyle, которые можно использовать для указания функций строки. В следующем примере рисуется пунктирная линия от (100, 50) до (300, 80):
myPen.DashStyle = DashStyle.Dash;
myGraphics.DrawLine(myPen, 100, 50, 300, 80);
myPen.DashStyle = DashStyle.Dash
myGraphics.DrawLine(myPen, 100, 50, 300, 80)
Свойства объекта Pen можно использовать для задания множества дополнительных атрибутов строки. Свойства StartCap и EndCap указывают внешний вид конца строки; Концы могут быть плоскими, квадратными, округленными, треугольными или настраиваемой фигурой. Свойство LineJoin позволяет указать, связаны ли подключенные линии (присоединены с острыми углами), вырезанные, округленные или обрезанные. На следующем рисунке показаны линии с различными стилями концов и соединений.
Рисование прямоугольника
Рисование прямоугольников с помощью GDI+ похоже на рисование линий. Для рисования прямоугольника требуется объект Graphics и объект Pen. Объект Graphics предоставляет метод DrawRectangle, а объект Pen сохраняет атрибуты, такие как ширина линии и цвет. Объект Pen передается в качестве одного из аргументов в метод DrawRectangle. В следующем примере вырисовывается прямоугольник с верхним левым углом (100, 50), ширина 80 и высота 40:
myGraphics.DrawRectangle(myPen, 100, 50, 80, 40);
myGraphics.DrawRectangle(myPen, 100, 50, 80, 40)
DrawRectangle является перегруженным методом класса Graphics, поэтому ему можно передавать аргументы несколькими способами. Например, можно создать объект Rectangle и передать объект Rectangle в метод DrawRectangle в качестве аргумента:
Rectangle myRectangle = new Rectangle(100, 50, 80, 40);
myGraphics.DrawRectangle(myPen, myRectangle);
Dim myRectangle As New Rectangle(100, 50, 80, 40)
myGraphics.DrawRectangle(myPen, myRectangle)
Объект Rectangle имеет методы и свойства для управления и сбора информации о прямоугольнике. Например, методы Inflate и Offset изменяют размер и положение прямоугольника. Метод IntersectsWith указывает, пересекается ли прямоугольник другой заданный прямоугольник, а метод Contains указывает, находится ли заданная точка внутри прямоугольника.
См. также
.NET Desktop feedback