Простой графический редактор

Методические указания к практическому занятию № 31

Тема: «Обработка изображений в Visual C#»

Количество часов: 2.

Цели:

- обучающая: изучить возможности Visual Studio по открытию и сохранению файлов, написать и отладить программу для обработки изображений; научить анализировать, выделять главное, существенное при решении задачи, самостоятельно работать;

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

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

Задания:

Отображение графических файлов.

2. Простой графический редактор.

3. Индивидуальное задание.

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

 

МЕТОДИЧЕСКИЕ УКАЗАНИЯ К ВЫПОЛНЕНИЮ:

Отображение графических файлов

Обычно для отображения точечных рисунков, рисунков из мета­файлов, значков, рисунков из файлов в формате BMP, JPEG, GIF или PNG используется объект PictureBox, т. е. элемент управления PictureBox действует как контейнер для картинок. Можно выбрать изо­бражение для вывода, присвоив значение свойству Image. Свойство Image может быть установлено в окне свойств или в коде программы, указывая на рисунок, который следует отображать.

Элемент управления PictureBox содержит и другие полезные свой­ства, в том числе свойство AutoSize, определяющее, будет ли изображе­ние растянуто в элементе PictureBox, и SizeMode, которое может ис­пользоваться для растягивания, центрирования или увеличения изображения в элементе управления PictureBox.

Перед добавлением рисунка к элементу управления PictureBox в проект обычно добавляется файл рисунка в качестве ресурса.

В приложениях Visual C# часто содержатся данные, не являющиеся исходным ко­дом. Такие данные называются ресурсами проекта и могут включать двоичные дан­ные, текстовые файлы, аудио- и видеофайлы, таблицы строк, значки, изображения, XML-файлы или любой другой тип данных, необходимых для приложения. Данные ресурсов проекта хранятся в формате XML в файле с расширением RESX (имя по умолчанию - Resources.resx), который можно открыть в Обозревателе решений.

После добавления ресурса к проекту можно повторно использовать его. На­пример, может потребоваться отображение одного и того же изображе­ния в нескольких местах.

Необходимо отметить, что поле Image само является классом для ра­боты с изображениями, у которого есть свои методы. Например, метод FromFile используется для загрузки изображения из файла. Кроме класса Image существует класс Bitmap, который расширяет возможности класса Image за счет дополнительных методов для загрузки, сохранения и ис­пользования растровых изображений. Так, метод Save класса Bitmap по­зволяет сохранять изображения в разных форматах, а методы GetPixel и SetPixel - получить доступ к отдельным пикселям рисунка.

Элементы управления OpenFileDialog и SaveFileDialog.

Элемент управления OpenFileDialog является стандартным диало­говым окном. Он аналогичен диалоговому окну «Открыть файл» операци­онной системы Windows. Элемент управления OpenFileDialog позволяет пользователям просматривать папки личного компьютера или любого компьютера в сети, а также выбирать файлы, которые требуется открыть.

Для вызова диалогового окна для выбора файла можно использо­вать метод ShowDialog(), который возвращает значение DialogResult.OK при корректном выборе. Диалоговое окно возвращает путь и имя файла, который был выбран пользователем в специальном свойстве FileName.

 

Простой графический редактор

Создайте приложение, реализующее простой графический редак­тор. Функциями этого редактора должны быть: открытие рисунка, рисо­вание поверх него простой кистью, сохранение рисунка в другой файл. Для этого создайте форму и разместите на ней элементы управления Button и PictureBox (рис. 1).

Рисунок 1 - Форма Для графического редактора

В этом случае не понадобится из панели элементов размещать на форме элементы диалоговых окон OpenFileDialog и SaveFileDialog. Эти элементы будут порождены динамически в ходе выполнения про­граммы с помощью конструктора. Например, так:

Далее они будут вызываться с помощью метода ShowDialog().

Для кнопок «Открыть» и «Сохранить» создайте свои обработчики события. Также создайте обработчик события Load для формы. Для элемента управления pictureBox1 создайте обработчики события MouseDown, MouseMove.

Код приложения будет выглядеть следующим образом:

 


 

Далее добавим в проект кнопку для перевода изображения в града­ции серого цвета:


Данный код демонстрирует возможность обращения к отдельным пик­селям. Цвет каждого пикселя хранится в модели RGB и состоит из трех со­ставляющих: красного, зеленого и синего цвета, называемых каналами. Значение каждого канала может варьироваться в диапазоне от 0 до 255.

 




Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: