Разработка программы для просмотра растровых изображений

Автор работы: Пользователь скрыл имя, 17 Мая 2013 в 11:45, курсовая работа

Краткое описание

Графические редакторы занимают среди программного обеспечения особое место. Это как раз тот случай, когда требования к программному обеспечению дизайнеров-профессионалов и основной массы пользователей не совпадают. При наборе текстов и профессиональный писатель, и семиклассник, пишущий сочинение, выполняют одни и те же операции и предъявляют к программе сходные требования. Другое дело - графика. Здесь большинству рядовых пользователей требуется совсем иное, нежели профессионалам. Ведь они используют для своей работы, как правило, уже готовые изображения.

Содержание

Введение 3
1 Основная часть 4
1.1 Описание программы 4
1.2 Структура программы 8
1.3 Блок-схемы наиболее интересных алгоритмов программы 9
Заключение 11
Список литературы 12

Вложенные файлы: 1 файл

Симутин.docx

— 3.18 Мб (Скачать файл)

Содержание

 

Введение 3

1 Основная  часть 4

1.1 Описание  программы 4

1.2 Структура  программы 8

1.3 Блок-схемы  наиболее интересных алгоритмов  программы 9

Заключение 11

Список литературы 12

 

 

 

Введение

 

В данной курсовой работе раскрывается тема «Разработка программы для просмотра растровых изображений».

Графические редакторы занимают среди программного обеспечения  особое место. Это как раз тот  случай, когда требования к программному обеспечению дизайнеров-профессионалов и основной массы пользователей  не совпадают. При наборе текстов  и профессиональный писатель, и семиклассник, пишущий сочинение, выполняют одни и те же операции и предъявляют  к программе сходные требования. Другое дело - графика. Здесь большинству  рядовых пользователей требуется  совсем иное, нежели профессионалам. Ведь они используют для своей работы, как правило, уже готовые изображения. На первое место выступает возможность  быстрого просмотра имеющихся картинок, простейших, интуитивно понятных манипуляций: масштабирование, инвертирование, повороты и т. п. Именно поэтому я выбрал данную тему для своей курсовой работы. 

1 Основная часть

1.1 Описание программы

 

При запуске программы появляется основное окно (рисунок 1). Оно содержит все основные кнопки: «Предыдущее изображение» [4.1], «Следующее изображение» [4.2], «Зум +» [3.2], «Зум -» [3.1], «Поворот влево» [2.1], «Поворот вправо» [2.2] и «Открыть» [1].

Рисунок 1.1 Основное окно

Так же на окне располагаются  пункты меню «Файл» и «Печать».

Содержимое пункта меню «Файл» отображено на рисунке 1.2, пункта меню «Печать» на рисунке 1.3.

Рисунок 1.2 Пункт меню «Файл»

Рисунок 1.3 Пункт меню «Печать»

Все кнопки для работы с  изображение изначально отключены. Для начала работы нужно нажать «Открыть», появится стандартное диалоговое окно выбора файла, в нем нужно выбрать изображение и нажать открыть. Программа развернется на весь экран, все функциональные клавиши станут доступны как показано на рисунке 1.4.

Рисунок 1.4 Программа с открытым изображением

При нажатие на кнопки «Поворот вправо» и «Поворот влево» изображение  поворачивается на 90о в соответствующую сторону, как показано на рисунке 1.5.

Рисунок 1.5 Поворот изображения

При нажатие на кнопки «Зум +» и «Зум -» изображение приближается или отдаляется на 30% в соответствующую сторону (рисунок 1.6). При этом при изменение размеров изображения появляются «ползунки» для смены точки обзора.

Замечание. Изображение нельзя отдалять более чем на 100% и приближать более чем на 300%.

Рисунок 1.6 Зум изображения

При нажатие на кнопки «Следующее изображение» и «Предыдущее изображение» изображение переключится на следующее или предыдущее в папке. Если таковых нет – ничего не произойдет.

В пункте меню «Файл» находятся  следующие функции: Удалить, Сделать  копию, Копировать и Выход.

Кнопка удалить (также, как и клавиша Delete на клавиатуре) удалит ныне открытое изображение (рисунок 1.7)

Рисунок 1.7 Подтверждение  удаления изображения

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

Кнопка «Копировать» скопирует  открытое изображение в буфер  обмена (Ctrl+C).

«Выход» - закрыть программу.

В пункте меню «Печать» находится  функция печати открытого изображения  на принтере.

 

1.2 Структура программы

 

1.3 Блок-схемы наиболее  интересных алгоритмов программы

1 Функция зума изображения

extern int rotateSustain;                 // угол поворота изображения

extern double scaleFactor;                // уровень зума изображения

extern int flag;                                   // флаг для сохранения угла поворота изображения

void MainWindow::scaleImage(double factor)

    ui->image->setPixmap(Fname);

    if (rotateSustain!=0)

        {

         if (rotateSustain>0) {RotateImage(90*(rotateSustain-flag));flag++;}

         else {(RotateImage(90*(rotateSustain+flag)));flag++;}

        }

    scaleFactor *= factor;

    ui->image->setPixmap(ui->image->pixmap()->scaled(ui->image->pixmap()->width()*scaleFactor,ui->image->pixmap()->height()*scaleFactor));

    Plus_minus_Checked();

    ui->size_plus->setEnabled(scaleFactor < 3.0);

    ui->size_minus->setEnabled(scaleFactor > 1);

Так как на разных компьютерах  панель Windows может располагаться в разных местах (Слево-Справо-Снизу-Сверху), то при открытие приложения на весь экран кнопки могут «съехать» в область, закрытою панелью, для этого был разработан следующий алгоритм.

 

int CheckSize;     //флаг определяющий положения панели виндовс(0-снизу/сверху;1-справо/слево)

void MainWindow::GetWindowSize()// > Считывание максимального размера окна

{

    int Xmax,Ymax,Xnorm,Ynorm;

    // считываение размеров окна С УЧЕТОМ панели виндовс

    window()->showMaximized();

    window()->showMinimized();

    showFullScreen();

    window()->showMaximized();

    Ynorm=window()->geometry().height(); Xnorm=window()->geometry().width();

    // считываение размеров окна БЕЗ УЧЕТОМ панели виндовс

    showFullScreen();

    Ymax=window()->geometry().height(); Xmax=window()->geometry().width();

    window()->showMaximized();

    if (Xmax!=Xnorm) {WindowX=Xmax; WindowY=Ymax;CheckSize=1;}

    else        {WindowX=Xmax-10;WindowY=Ymax-36;CheckSize=0;}

 

}

 

Заключение

 

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

В ходе подготовки курсовой работы были рассмотрены различные  алгоритмы решения задачи, реализация выбранного алгоритма, определен круг задач и основной ход работы. Изучены  основные теоретические положения, рассмотрены многие функции и их реализация. Программа неоднократно тестировалась и прошла тесты без ошибок. В ходе работы были исправлены многие ошибки и недочеты.

 

 

 

Список литературы

 

  1. Qt4.5. Профессиональное программирование на C++ (+ DVD-ROM): Макс Шлее — Санкт-Петербург, БХВ-Петербург, 2010 г.- 896 с.
  2. Ирэ Пол. Объектно-ориентированное программирование с использованием C++: Пер. с англ. - Киев: НИИПФ ДиаСофт Лтд, 1995. 480с.

 


Информация о работе Разработка программы для просмотра растровых изображений