Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тема 12. Рисование.doc
Скачиваний:
43
Добавлен:
02.04.2015
Размер:
324.1 Кб
Скачать

Visual Basic .Net

В э^ом примере используется одна из

системных кистей класса SysternBrush.

Dim g As Graphics - me.CreateGraphics()

Dim inyString As String = "Hello World"

Dim myFont As New Font("Times New Roman", 36, FontStyle.Regular)

Последние два параметра представляют координаты строки,

g.DrawStrirg(myString, myFont, SystemBrushes.Highlight, 0, 0)

He забудьте освободить объект Graphics!

g.Dispose()

Visual c#

// В этом примере используется одна из

// системных кистей класса SysternBrush.

Graphics g - this.CreateGraphicsO:

String uiyString = "Helio World";

Font myFont = new Font("Times New Roman", 36, FontStyle,Regular);

Последние два параметра представляют координаты строки.

o.DrawString(myStr;ing, myFont, SystemBrushes.Highlight, 0. 0);

Занятие 1 Приме,

// Не забудьте освободить объект Graphics!

g.Disposef);

> Отображение текста как графического элемента

1. При необходимости создайте объекты Font и Brush, определяющие вид объекта

String.

2. Получите ссылку на объект Graphics, связанный с областью, в которой должен

быть отображен текст.

3. Вызовите метод Graphics.DrawString, передав объекты String, Font, Brush и коор-

динаты верхнего левого угла области, в которой будет отображен текст.

4. Освободите объект Graphics, вызвав метод Graphics.Dispose.__

Рисование сложных фигур

Время от времени приходится рисовать фигуры более сложные, чем прямоугольни-

ки, эллипсы и многоугольники. У объектов простых фигур есть встроенные мето-

ды, облегчающие их рисование, тогда как рисование сложных фигур требует допол-

нительной подготовки. Ключевым для визуализации сложных фигур является объ-

ект Graphics Path из пространства имен System.Drawing. Drawing2D. Он описывает про-

извольный замкнутый контур или набор фигур. Так, можно создать объект Graphics-

Path, образованный эллипсами, прямоугольниками и другими простыми объекта-

ми, представляющий фигуру неправильной формы.

Создание объекта GraphicsPath

Объект GraphicsPath создают вызовом одной из версий его конструктора, Простей-

шая версия конструктора объекта GraphicsPath не принимает параметров:

Visual Basic .Net

Dim rnyPath As New Drawing2D.GraphicsPath()

Visual c#

GraphicsPath myPath = new Drawing2D.GraphicsPath();

Кроме того, объект GraphicsPath допустимо задавать в виде массива точек и зна-

чений типа Byte. Точки определяют координаты контура, а значения Byte тип

линий, которыми эти точки соединяются. Преобразовав подобный массив из пере-

числимого типа System.Drawing.Drawing2D.PathPointType, вы сможете написать бо-

лее понятный и удобный в сопровождении код. Вот пример кода, создающего очень

простой объект GraphicsPath:

Visual Basic .Net

1 Этот пример предполагает наличие оператора Imports System.Drawing.Drawing2D

Dim friyPatn As New GraphicsPath{New Pointf) {New Point(1, 1),

New Point(32, 54), New Point(33, 5)}, New Byte() _

{CType(PathPointType.Start, Byte), CType(PathPointType.Line, _

Byte), CType(PathPointType.8ezier. Byte)})

Создание элементов управления с помощью .NET Framework Глава 7

Visual c#

// Этот пример предполагает наличие оператора using System. Drawing. Drawing2D

GraphicsPath myPath = new GraphicsPath(new Point[] {new Point(1, 1),

new Point(32, 54), new Point(33, 5)}, new byte[] {

(byte)PathPointType. Start, ( byte) Pat hPointType. Line,

(byte)PathPointType.Bezier});

К созданному объекту GraphicsPath можно добавлять фигуры. Фигура — это зам-

кнутый контур, он может быть простым (как эллипс или прямоугольник) или слож-

ным (как произвольные кривые и контуры символов).

Методы класса GraphicsPath позволяют добавлять к контуру новые фигуры (таб-

лица 7-6).

Таблица 7-6. Методы ,для добавления фигур к объекту GraphicsPath

Имя Что добавляет

AddClosedCurve Замкнутую кривую, заданную массивом точек

AddElUpse Эллипс

AddPath Заданный экземпляр объекта GraphicsPath

AddPie Окружность

AddPolygon Многоугольник, заданный массивом точек

AddRedangle Прямоугольник

AddRecmngles Массив прямоугольников

AddString Графическое представление строки символов с заданным

начертанием

Разрешается не только напрямую добавлять фигуры к объекту GraphicsPath, но и

составлять контуры, добавляя прямые, кривые и дуги. Чтобы начать новый контур,

вызовите метод GraphicsPath. StartFigure. Далее, используя методы класса Graphics-

Path, можно добавлять к контуру новые фигуры. Закончив конструирование фигу-

ры, вызовите метод GraphicsPath. CIoseFigure, чтобы замкнуть ее контур — последняя

точка фигуры автоматически соединяется с первой. Вот пример: