Параметры:
nWidth, nHeight определяет ширину и высоту точечного рисунка в пикселях.
nPlanes определяет число цветов в точечном рисунке.
nBitCount определяет число битов за пиксель.
lpBits указатель на массив коротких целых чисел, который содержит разрядные значения точечного рисунка. Если параметр недействителен, то новый точечный рисунок оставлен без инициализации.
В том случае если пиксель кодируется одним битом (nBitCount = 1), то пиксель которому соответствует значение бита равное 1 закрашивается цветом фона, 0 – цветом текста. Цвет фона и текста можно установить с помощью функций SetBkColor и SetTextColor соответственно.
Пример: В приведённом ниже примере объявлен и проинициализирован массив bit , состоящий из 8 целых чисел типа WORD. Каждое число кодирует 8 пикселей одной из 8 строк. На базе массива bit с помощью функции CreateBitmap создаётся точечный рисунок bm размером 8 x 8. В точечный рисунке крайний правый и самый нижний ряды пикселей имеют цвет текста, остальные пиксели – цвет фона. Далее создаётся кисть brush, которая использует созданный точечный рисунок bm. Кисть brush используется при рисовании прямоугольника.
CClientDC dc ( this ) ; // контекст устройства - текущее диалоговое окно
WORD p = 0xFE ; // двоичный код = 11111110
WORD bit [ 8 ] = {p,p,p,p,p,p,p,0} ; // массив из 8 битовых строк
dc.SetBkColor ( dc.GetPixel ( 0 , 0 )) ; // устанавливаем цвет фона равным цвету фона окна
CBitmap bm ; // объявляем точечный рисунок
bm.CreateBitmap ( 8 , 8 , 1 , 1 , bit ) ; // инициализируем точечный рисунок размером 8 x 8
CBrush brush ; // объявляем пустую кисть
brush.CreatePatternBrush ( &bm ) ; // создаём на основе точечного рисунка
dc.SelectObject ( brush ) ; // выбираем кисть для использования
dc.Rectangle ( 23 , 23 , 89 , 89 ) ; // рисуем закрашенный прямоугольник
Интегрированная среда разработки Visual Studio 6 позволяет создавать точечные рисунки с помощью встроенного графического редактора. Для этого нужно
Ø в меню Insert выбрать команду Resource
Ø в диалоговом окне Insert Resource в поле Resource type выбрать Bitmap и нажать кнопку New
Встроенный графический редактор позволяет создавать 256-цветные рисунки произвольного размера. При создании рисунка пользователю доступны команды рисования простейших примитивов с помощью мыши: точки, прямой, эллипса, прямоугольника и др.
Библиотека MFC позволяет использовать в программе готовые точечные рисунки, содержащие и более чем 256 цветов. Для включения готового точечного рисунка в проект нужно
Ø в диалоговом окне Insert Resource нажать кнопку Import
Ø в диалоговом окне открытия файла выбрать файл и нажать кнопку Import
Ресурс типа Bitmap, как и любой другой ресурс, в откомпилированной программе хранится в исполняемом файле, но загружается в оперативную память только после выполнения соответствующей команды загрузки ресурса. Ресурс выгружается из оперативной памяти, если он не требуется для выполнения программы.
Загрузить ресурс точечного рисунка можно с помощью функции LoadBitmap.
BOOL LoadBitmap ( UINT nIDResource ) ;
BOOL LoadBitmap ( LPCTSTR lpszResourceName ) ;
Параметром функции может быть идентификатор ресурса nIDResource или строка. содержащая имя идентификатора ресурса lpszResourceName.
Загруженный точечный рисунок присоединен к объекту типа CBitmap.
Пример: В приведённом ниже примере точечный рисунок загружается из ресурса с идентификатором IDB_BIT.
CBitmap bm ; // объявляем точечный рисунок
bm.LoadBitmap ( IDB_BIT ) ; // загружаем точечный рисунок из ресурса с IDB_BIT
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.