Три категории графических служб
Графические элементы Windows Forms делятся на три основные категории:
Двухмерная (2-D) векторная графика
Работа с изображениями
Оформление
Двумерная векторная графика
Элементы двухмерной векторной графики — примитивы, например линии, кривые и фигуры, которые заданы наборами точек в системе координат. Например, прямая линия определяется двумя конечными точками, а прямоугольник — точкой, задающей расположение его верхнего левого угла, и парой чисел, определяющих его высоту и ширину. Простой контур определяется массивом точек, соединенных прямыми линиями. Сплайн Безье — сложная кривая, заданная четырьмя контрольными точками.
GDI+ предоставляет классы и структуры, в которых хранятся сведения о самих примитивы, классы, в которых хранятся сведения о том, как примитивы привязки будет рисоваться и классы, которые фактически выполняют рисунка. Например, структура Rectangle хранит расположение и размер прямоугольника, класс Pen хранит сведения о цвете, толщине и стиле линий, а класс Graphics содержит методы для рисования линий, прямоугольников, контуров и других фигур. Существует также несколько классов Brush, в которых хранятся сведения о том, как замкнутые фигуры и контуры будут заполняться цветом или узором.
Векторное изображение, которое представляет собой последовательность графических команд, можно записать в метафайл. GDI+ предоставляет Metafile класс для записи, отображения и сохранения метафайлов. С помощью классов MetafileHeader и MetaHeader вы можете просматривать данные, хранящиеся в заголовке метафайла.
Работа с изображениями
Некоторые рисунки сложно или невозможно отобразить с использованием векторной графики. Например, картинки кнопок панели инструментов и изображения, используемые в качестве значков, сложно задать в виде набора линий и изгибов. Еще сложнее будет создать методами векторной графики цифровую фотографию переполненного стадиона в высоком разрешении. Изображения такого типа хранятся в растровом виде — как массивы чисел, представляющих цвета каждой из точек на экране. GDI+ предоставляет Bitmap класс для отображения, управление и сохранение растровых изображений.
Оформление
Оформление включает отображение текста с использованием различных шрифтов, размеров и стилей. GDI+ предоставляет расширенную поддержку этой сложной задачи. Одной из новых функций в GDI+ является субпиксельное сглаживание, которое позволяет сделать текст, отображаемый на ЖК-экранах, более гладким.
Кроме того, Windows Forms предоставляет возможность использования GDI для рисования текста с помощью класса TextRenderer.