Выбор различных режимов осуществляется выбором соответствующих опций в меню Options. В программе должен быть предусмотрен выбор и изменение следующих параметров рисования.
Выбор пера:
из числа стандартных
BLACK_PEN |
Черное перо |
WHITE_PEN |
Белое перо |
NULL_PEN |
Нулевое перо (ничего не рисует вне зависимости от режима смещения) |
из числа настраиваемых
PS_SOLID |
|
PS_DASH |
|
PS_DOT |
|
PS_DASHDOT |
|
PS_DASHDOTDOT |
|
PS_NULL |
Для настраиваемых перьев также возможна установка следующих параметров:
тип пера косметический
· быстрое рисование линий
· толщина ровно один пиксель (вне зависимости от текущего режима отображения)
· может быть сплошным, пунктирным или штриховым (в зависимости от выбранного стиля пера, см. таблицу выше)
геометрический
· относительно медленное рисование
· может быть любой толщины
· всегда сплошное цвет пера толщина пера
Если перо рисует различные линии и границы фигур, то кисть определяет режим закраски замкнутой фигуры.
В программе должен быть предусмотрен выбор следующих кистей:
из числа стандартных
WHITE_BRUSH |
Сплошная белая |
BLACK_BRUSH |
Сплошная черная |
DKGRAY_BRUSH |
Сплошная темно-серая |
GRAY_BRUSH |
Сплошная серая |
LTGRAY_BRUSH |
Сплошная светло-серая |
NULL_BRUSH |
Нулевая кисть |
из числа настраиваемых
BS_SOLID |
Сплошная, заполняет внутренность фигур цветом кисти |
BS_HATCHED |
Штрихованная, заполняет фигуру штриховкой различных видов: VERTICAL, HORIZONTAL, BDIAGONAL, CROSS, DIAGCROSS |
BS_NULL |
Нулевая кисть |
Также возможно изменение следующих режимов закраски: цвет закраски и наложение битовой матрицы 8х8.
Режим заполнения многоугольника определяет, какие из областей многоугольника с самопересечениями будут закрашиваться. Возможен выбор из следующих вариантов:
ALTERNATE внутренние области, в которые можно попасть извне, пересекая нечетное число раз
WINDING все внутренние области
Режим фона определяет способ того, как будут рисоваться промежутки между точками или штрихами. При установленном режиме TRANSPARENT промежутки закрашиваться не будут и цвета останутся неизменными. В режиме OPAQUE промежутки будут закрашены текущим цветом фона.
Режим смещения (ROP) определяет, каким образом будет комбинироваться цвет пера с текущими цветами на поверхности дисплея, образуя цвет рисуемой линии.
В программе должно быть реализовано меню TEXT, предназначенное для вывода шрифтов, отображаемых в окнах приложения.
Приложение Windows может использовать либо один из встроенных шрифтов, либо создать свой , описав требуемые характеристики шрифтов. По умолчанию в контексте отображения при его создании выбирается системный шрифт, основным его преимуществом является доступность. Для полного использования шрифтовых возможностей операционной системы вы должны познакомиться с процедурой определения логических шрифтов.
Структура LOGFONT
IfHeight - Высота шрифта, логические единицы
IfWidht - Ширина шрифта, логические единицы
IfEscapement - Угол нанесения текста
IfOrientation - Наклон символов, десятые доли градуса
IfWeight - Толщина шрифта
IfItalic - Ненулевое значение означает курсив
IfUnderline - Ненулевое значение означает подчеркивание
IfStrikeOut - Ненулевое значение означает подчеркнутый шрифт
IfCharSet - Номер набора символов шрифта
IfOutPrecision - Параметр, определяющий соответствие запрашиваемого шрифта и имеющегося в наличии
IfQuality - Параметр, определяющий способ обрезания изображения литер при выходе их за пределы области ограниченного вывода
IfPitchAndFamily - Качества воспроизведения шрифта
FaceName - Ненулевое - Имя шрифта
Значение логической единицы определяется режимом наложения.
В меню TEXT, Вы должны реализовать основные функции, предназначенные для выбора шрифта.
В подменю Font Вы должны иметь возможность выбрать шрифт двумя способами -можете указать семейство шрифта или выбрать конкретный шрифт при помощи диалоговой панели.
Подменю Orientation позволяет задать угол поворота текстовой строки, выводя ее с наклоном, повернутой вниз
В приложениях Windows часто используются битовые изображения bitmap.В Windows используется два формата битовых изображений – аппаратно-зависимые DDB и аппаратно-независимый DIB.
DDB - Есть набор бит в оперативной памяти, который может быть отображен на устройстве ввода, внутренняя структура жестко связана с аппаратными особенностями устройства вывода.
Создать демонстрационную программу работы с битовыми образами в формате DDB (GDI) – BitBlt(), StretchBlt(). Должна быть предусмотрена возможность формирования собственных битовых образов и их дальнейшее использование.
Формат DIB, как уже говорилось, аппаратно-независимый, изображения в таких форматах хранятся в файлах с определенным расширением (BMP, GIF). В лабораторной работе должна быть возможность загрузки графических форматов – BMP, GIF
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.