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