
- •Интегрированная среда разработки Microsoft Visual Basic 2005. Работа с текстами и строками. Текстовые эффекты.
- •I. Эффекты со строками
- •60 Минут Проект 1. «Печатающая строка»
- •Проект 2. «Бегущая строка»
- •Создайте новый проект. Для этого введите команду File-New Project... Выберите тип проекта - Windows Application (Windows-приложение). В окне Name задайте имя проекта – lr9_2.
- •Добавьте событийную процедуру для таймера:
- •II. Текстовые эффекты
- •60 Минут
- •Проект 3. «Использование узорных и градиентных кистей»
- •Создайте новый проект. Для этого введите команду File-New Project... Выберите тип проекта - Windows Application (Windows-приложение). В окне Name задайте имя проекта – lr9_3.
- •Проект 4. «Объемный текст»
- •Создайте новый проект. Для этого введите команду File-New Project... Выберите тип проекта - Windows Application (Windows-приложение). В окне Name задайте имя проекта – lr9_4.
- •Проект 5. «Контурный текст»
- •Создайте новый проект. Для этого введите команду File-New Project... Выберите тип проекта - Windows Application (Windows-приложение). В окне Name задайте имя проекта – lr9_5.
- •Проект 6. «Раскаленный текст»
- •Создайте новый проект. Для этого введите команду File-New Project... Выберите тип проекта - Windows Application (Windows-приложение). В окне Name задайте имя проекта – lr9_6.
- •Проект 7. «Тексты с поворотами»
- •Создайте новый проект. Для этого введите команду File-New Project... Выберите тип проекта - Windows Application (Windows-приложение). В окне Name задайте имя проекта – lr9_7.
- •III. Самостоятельная работа
- •40 Минут
Проект 5. «Контурный текст»
Текст, выводимый на экран, по умолчанию заполнен каким-либо цветом. Для создания контура символов используется класс DrawPath. Данный класс позволяет создавать различные контуры из фигур и текстов.
Создайте новый проект. Для этого введите команду File-New Project... Выберите тип проекта - Windows Application (Windows-приложение). В окне Name задайте имя проекта – lr9_5.
Активизируйте форму Form1 щелчком мыши. В окне Properties (Свойства объекта) выберите свойство Text и присвойте ему значение Контурный текст:
Перед описанием класса Form1 добавьте строку, подключающую требуемую библиотеку:
Imports System.Drawing.Drawing2D
Public Class Form1
…..…………………..
End Class
Добавьте событийную процедуру Form1_Paint(…) – рисование формы. Для этого в поле Class Name в режиме редактирования кода программы установите (Form Events), в поле Method Name – Paint:
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
' Создаем траекторию
Dim pth As New GraphicsPath
' Добавляем строку
pth.AddString("Программа", _
New FontFamily("Tahoma"), _
0, 50, New Point(20, 30), _
StringFormat.GenericDefault)
' Создаем синее перо
Dim p As New Pen(Color.Blue, 2)
' Выводим контурный текст
e.Graphics.DrawPath(p, pth)
' Очистим траекторию
pth.Reset()
' Добавляем новый текст
pth.AddString("Программа", _
New FontFamily("Verdana"), _
0, 50, New Point(30, 100), _
StringFormat.GenericTypographic)
' Заливаем траекторию кистью
e.Graphics.FillPath(Brushes.Peru, pth)
' Выводим на экран
e.Graphics.DrawPath(p, pth)
' Освобождаем ресурсы
pth.Dispose()
End Sub
Сохраните проект. Проверьте работу созданного приложения:
Проект 6. «Раскаленный текст»
Создайте новый проект. Для этого введите команду File-New Project... Выберите тип проекта - Windows Application (Windows-приложение). В окне Name задайте имя проекта – lr9_6.
Активизируйте форму Form1 щелчком мыши. В окне Properties (Свойства объекта) выберите свойство Text и присвойте ему значение Раскаленный текст:
Перед описанием класса Form1 добавьте строку, подключающую требуемую библиотеку:
Imports System.Drawing.Drawing2D
Public Class Form1
…..…………………..
End Class
Добавьте событийную процедуру Form1_Paint(…) – рисование формы. Для этого в поле Class Name в режиме редактирования кода программы установите (Form Events), в поле Method Name – Paint (текст процедуры содержится в рабочей директории в файле Paint.txt):
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
Me.BackColor = Color.Black
' Создадим рисунок в заданной пропорции
Dim bm As New Bitmap(CInt(Me.ClientSize.Width / 5), _
CInt(Me.ClientSize.Height / 5))
' Создадим объект GraphicsPath
Dim pth As New GraphicsPath
' Добавим строку в заданном стиле
pth.AddString("Электрический эффект", _
New FontFamily("Tahoma"), _
CInt(FontStyle.Bold), 48, _
New Point(10, 20), _
StringFormat.GenericTypographic)
' Получим объект Graphics
Dim g As Graphics = Graphics.FromImage(bm)
' Создадим матрицу для создания эффекта
Dim mx As Matrix
mx = New Matrix(1.0F / 5, 0, 0, _
1.0F / 5, -(1.0F / 5), _
-(1.0F / 5))
' Выберем режим сглаживания
g.SmoothingMode = SmoothingMode.AntiAlias
' Преобразуем объект Graphics
g.Transform = mx
' Создадим перо
Dim p As New Pen(Color.Tomato, 3)
' Рисуем вокруг созданного пути
g.DrawPath(p, pth)
' и заполняем для лучшего эффекта
g.FillPath(Brushes.Yellow, pth)
' Установим режим сглаживания для контура
g.SmoothingMode = SmoothingMode.AntiAlias
e.Graphics.InterpolationMode = _
InterpolationMode.HighQualityBicubic
' и расширяем картинку для создания размытости краев
e.Graphics.DrawImage(bm, ClientRectangle, 0, 0, _
bm.Width, bm.Height, GraphicsUnit.Pixel)
' Перерисовываем оригинальный текст
g.FillPath(Brushes.Black, pth)
' Освобождаем ресурсы
g.Dispose()
pth.Dispose()
End Sub
Сохраните проект. Проверьте работу созданного приложения: