Тип работы:
Предмет:
Язык работы:


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

Работа №126576

Тип работы

Бакалаврская работа

Предмет

программирование

Объем работы24
Год сдачи2017
Стоимость4700 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
31
Не подходит работа?

Узнай цену на написание


Введение 4
1 Обзор 6
1.1 Описание существующих решений 6
1.2 Описание используемых инструментов 7
1.3 Проект по разработке графической библиотеки PostScript 8
2 Реализация графических примитивов 10
2.1 Структура примитивов 10
2.2 Примитивы графической библиотеки 11
3 Оконный менеджер 15
3.1 Добавление и удаление примитивов 16
3.2 Порядок отображения окон 16
3.3 Перемещение и изменение размеров окон 16
3.4 Пересчет координат 17
3.5 Перерисовка примитивов 17
3.6 Визуальные эффекты 17
4 Демонстрационные примеры 18
4.1 Форма 18
4.2 Демонстрация эффектов 19
4.3 Калькулятор 20
Заключение 23
Список литературы 24

PostScript - это графический интерпретируемый язык программирования, созданный с целью представления графики (текстовых фалов, рисунков, черте­жей) в платформонезависимой форме [1]. С помощью графических операторов языка PostScript можно определить область рисования, отобразить прямые и кривые линии, залить цветом область, задать различные графические парамет­ры.
Графический интерфейс пользователя является разновидностью пользова­тельского интерфейса и состоит из различных примитивов - окон, полей ввода, кнопок и т.д. Язык PostScript обладает базовыми возможностями для реализа­ции внешнего вида графических примитивов.
Однако, для полноценной реализации графических интерфейсов наличие од­них примитивов недостаточно. Требуется также оконный менеджер — приложе­ние, управляющее размещением примитивов и определяющее их внешний вид. Оконный менеджер позволяет добавлять и удалять примитивы, управлять по­рядком отображения, пересчитывать координаты и т.д. В оконном менеджере могут быть реализованы также и визуальные эффекты, проявляющиеся во вре­мя работы с окнами (например, эффект волны и эффект упорядочивания окон). В каждой операционной системе существует свой оконный менеджер, который взаимодействует с графическими интерфейсами, созданными, например, с по­мощью Qt [6] или Swing [7].
Ранее в рамках проекта лаборатории JetBrains был реализован интерпрета­тор PostScript [2] [3] [4]. Однако с его помощью не представлялось возможным со­здавать графические интерфейсы, а также реализовать оконный менеджер, так как, например, в PostScript не поддерживается механизм обработки событий. Для добавления данной возможности было решено расширить язык PostScript и на его основе разработать графическую библиотеку, позволяющую создавать графические интерфейсы. Данную работу можно разделить на три направле­ния: оптимизация интерпретатора (Д. Поздин), обработка событий (Р. Макулов) и реализация графических примитивов и оконного менеджера (А. Гудиев). То, что интерпретатор PostScript реализован на языке Java, делает потенциально создаваемые им интерфейсы кроссплатформенными.
Целью данной дипломной работы является реализация графических прими­тивов и оконного менеджера на языке PostScript для решения задачи реализа­ции кроссплатформенных пользовательских интерфейсов.

Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


В рамках дипломной работы были достигнуты следующие результаты:
• Реализованы и добавлены в графическую библиотеку PostScript следую­щие примитивы: кнопка, флажок, поле со списком, список, метка, поле редактирования, радиокнопка, окно.
• Разработан оконный менеджер, интегрированный с графической библио­текой.
• Проведено тестирование оконного менеджера на демонстрационных при­мерах.


[1] PostScript Language reference. Adobe Systems. 1999 http://www.adobe.com/products/postscript/pdfs/PLRM.pdf
[2] Дмитрий Поздин. Реализация общей поддержки времени исполнения для интерпретатора языка PostScript// Труды лаборатории языковых инструмен­тов. Выпуск 2. 2014. с. 276-296.
[3] Артур Гудиев. Реализация графической части интерпретатора языка PostScript// Труды лаборатории языковых инструментов. Выпуск 2. 2014. с. 297-312.
[4] Рустам Макулов. Архитектура интерпретатора для исполнения программ на языке PostScript в JVM// Труды лаборатории языковых инструментов. Выпуск 2. 2014. с. 259-275.
[5] [Википедия], https://ru.wikipedia.org/wiki/Qt
[6] [Qt Developer Network Wiki], https://wiki.qt.io/IntroductionQtQuick/ru
[7] [Хакер], https://xakep.ru/2014/09/10/java-gui/
[8] [The Source for Java Technology Collaboration], https://swingx.java.net/
[9] [JGoodies], http://www.jgoodies.com/


Работу высылаем на протяжении 30 минут после оплаты.




©2025 Cервис помощи студентам в выполнении работ