Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
11
Добавлен:
13.04.2015
Размер:
441.7 Кб
Скачать

Министерство образования и науки РФ

Северо-Кавказский Горно-металлургический

институт

(Государственный Технологический Университет)

Факультет: Информационных технологий

Кафедра: Автоматизированной обработки информации

Отчет по лабораторной работе №4

Выполнила:: Студентка группы ИВб 11-2

Глотова А. В.

Проверила: Кокоева Диана Шалваевна

Владикавказ 2014 г.

СОДЕРЖАНИЕ

Процесс работы программы 4

Приложение 6

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

Процесс работы программы

Программа написана на языке С#.

Для создания утилиты использованы : 1. Компонент Picturebox1 и Picturebox2 для загрузки изображения и показа результата преобразований.

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

3. Компоненты OpenFileDialog1 и SaveFileDialog1 для организации открытия и сохранения изображения.

4. Компонент Edit1для отображения координат выделяемой области.

При запуске программы открывается форма, содержащая набор кнопок. Нажатие на «Открыть» вызывает метод Button1Click, в котором прописаны методы компонента OpenFileDialog1 по загрузке выбранного пользователем изображения из его личных папок. В качестве результата возвращается путь и имя указанной картинки.

После загрузки изображения форма выглядит следующим образом (рис. 1):

Рис.1. Форма после загрузки изображения

Левой кнопкой мышки щелкаем по области изображения и протягиваем выделение, не отпуская её. При этом используется метод pictureBox1_MouseDown, который заносит координаты в текстовое поле и отмечает один из углов будущего прямоугольника выделения.

После того, как пользователь отпускает кнопку мышки, срабатывает метод pictureBox1_MouseUp, передающий также координаты конечной точки выделения и копирует выделенную область в Picturebox2 , а на исходном изображении закрашивает её белым цветом (рис.2).

Рис.2. Результат вырезания

Приложение

private void pictureBox1_MouseDown(object sender, MouseEventArgs e)

{

textBox1.Clear();

x = Convert.ToInt16(e.X);

y = Convert.ToInt16(e.Y);

textBox1.Text = textBox1.Text + x.ToString() + ";" + y.ToString()+" ";

}

private void pictureBox1_MouseUp(object sender, MouseEventArgs e)

{

x1 = Convert.ToInt16(e.X);

y1= Convert.ToInt16(e.Y);

textBox1.Text = textBox1.Text + x1.ToString() + ";" + y1.ToString();

Bitmap Mas = new Bitmap(image);

Bitmap im = new Bitmap(Mas.Width, Mas.Height);

if (x > x1) {int p=x; x=x1; x1=p;}

if (y> y1) { int p = y; y = y1; y1 = p; }

for (int i =x; i < x1; i++)

for (int j = y; j < y1; j++)

{

im.SetPixel(i, j, Mas.GetPixel(i, j));

Color fon = Mas.GetPixel(i, j);

Mas.SetPixel(i, j, Color.FromArgb(255,255,255));

}

pictureBox1.Image = Mas;

pictureBox2.Image = im;

}

6

Соседние файлы в папке Сохраненные документы с флешки