Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как быстро заполнить TBitmap


EgorovAlex ©   (2012-03-23 14:35:00) 

Есть такая последовательность данных (пробелы для визуальности):
FFF0 FFF0 FFF0 FFF0 FFF0 FFF0 FFF0 FFF0 FFF0 FFF0 FFF0 FFF0
и мне известны параметры битмапа: 12х12 и 2 байта на строку,
1 бит на пиксель
т.е. FFF0 - это одна строка вида 11111111 11110000
тут значимые только единицы, т.к. ширина битмапа 12

Как мне эту последовательность в битмап быстро загнать?
Конечно не именно эту, а алгоритм


MBo   (2012-03-23 15:27:00) [1]

Графический объект, соотв. заменяемому Handle, освобождается, так что в этом смысле утечек нет.


EgorovAlex   (2012-03-23 15:20:00) [2]

ну и по освобождению памяти уточню:

Bitmap := TBitmap.Create;
Bitmap.Handle := CreateBitmapIndirect(BMP); // BMP: PBITMAP
Bitmap.Free;

Тут всё правильно, никаких утечек памяти?


EgorovAlex   (2012-03-23 15:12:00) [3]

Спасибо, мне даже больше CreateBitmapIndirect подходит - все данные есть для вызова


MBo   (2012-03-23 14:42:00) [4]

Например, CreateBitmap


EgorovAlex   (2012-03-23 14:39:00) [5]

Начал так:

Bitmap := TBitmap.Create;
Bitmap.PixelFormat := pf1Bit;
Bitmap.Width  := 12;
Bitmap.Height := 12;

Как сами данные загнать, чтобы быстро


Dimka Maslov   (2012-03-23 14:39:00) [6]

надо прочитать про ScanLine


Наверх

Титульная страница Поиск, карта сайта Написать письмо