О точечных рисунках


Точечный рисунок - один из объектов GDI, которые могут выбираться в контекст устройства (device context) (DC). Контексты устройства - структуры, которые определяют установку графических объектов и  связанных с ними атрибутов и графических режимов, которые влияют на вывод данных. Таблица ниже описывает объекты GDI, которые могут выбираться в контекст устройства.

Графический объект Описание
Точечные рисунки (Bitmaps) Создает, манипулирует (масштабирует, прокручивает, чередует и рисует) и сохраняет изображения как файлы на диске.
Кисти (Brushes) Окрашивает внутреннюю часть многоугольников, эллипсов, и путей.
Шрифты (Fonts) Выводит  текст на экранах дисплея и других устройствах вывода данных.
Логическая палитра (Logical Palette) Цветовая палитра, созданная приложением и связанная с данным контекстом устройства.
Пути (Paths) Одна или несколько фигур (или форм), которые заполняются цветом и/или обводятся общей линией.
Перья (Pens) Графическое инструментальное программное средство, которое приложение использует для рисования линий  и кривых.
Регионы (Regions) Прямоугольник, многоугольник или эллипс (или комбинация двух или нескольких из этих форм), который может быть заполнен цветом, нарисован,  инвертирован, окантован и использован для выполнения операции проверки совпадения (проверки местоположения курсора).
 

С точки зрения разработчика, точечный рисунок состоит из собрания структур, которые определяют или содержат нижеследующие элементы:

Размер точечного рисунка связан с типом изображения, которое он содержит. Растровые изображения могут быть или одноцветные (монохромные) или цветные. В изображении каждый пиксель соответствует одному или нескольким битам в точечном рисунке. Одноцветное изображение имеет соотношение 1 бит на пиксель (bpp). Цветное изображение более сложное. Число цветов, которое может быть отображено таким точечным рисунком, равно два в степени числа битов на пиксель. В соответствии с этим, точечный рисунок с 256 цветами требует 8 bpp (28 = 256).

Приложения Панели управления (Windows) - примеры приложений, которые используют точечные рисунки. Когда Вы выбираете фон (или обои) для своего рабочего стола, фактически вы выбираете точечный рисунок, который система использует для рисования фона стола. Система создает выбранный узор фона, неоднократно рисуя шаблон 32 на 32  пикселя на рабочем столе.

Нижеследующая иллюстрация представляет взгляд разработчика точечного рисунка, найденного в файле Redbrick.bmp. Это файл выводит на экран массив палитры,  прямоугольник 32 на 32 пикселя и индексный массив, который отображает цвета пикселей из палитры в прямоугольнике.

Прямоугольник пикселей, массив палитры и массив индексов Redbrick.bmp

В предыдущем примере, прямоугольник пикселей создавался на устройстве отображения VGA с использованием палитры из 16 цветов. Палитра с 16 цветами  требует 4-х битных индексов; поэтому, массив, который отображает цвета палитры в цветах пикселей, составлен также из 4-х битных индексов. (Подробную информацию о логических цветовых палитрах см. в главе Цвета.)

Обратите внимание! на то, что в вышеупомянутом точечном рисунке, система отображает индексы пикселей, начиная с нижней строки развертки прямоугольного региона и заканчивая верхней строкой развертки. Строка развертки (scan line) - это одиночный ряд смежных пикселей (pixels) на экране дисплея. Например, первый ряд массива (ряд 0) соответствует нижней строке пикселей , строка развертки 31. Это так потому, что вышеупомянутый точечный рисунок - идущий снизу вверх не зависящий от устройства точечный рисунок (DIB), стандартный тип точечного рисунка. В нисходящих аппаратно-независимых  (DIB) и в аппаратно-зависимых (DDB) точечных рисунках, система отображает индексы пикселей, начинающихся с верхней строки развертки.


В этом разделе рассматриваются:

Назад в оглавление темы
На главную страницу темы

Hosted by uCoz