Вниз
Скачать: CL | DM;

Как быстро заполнить TBitmap   Найти похожие ветки 

← →
EgorovAlex ©   (2012-03-23 14:35) [0]

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

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


← →
EgorovAlex ©   (2012-03-23 14:39) [1]

Начал так:

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

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


← →
Dimka Maslov ©   (2012-03-23 14:39) [2]

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


← →
MBo ©   (2012-03-23 14:42) [3]

Например, CreateBitmap


← →
EgorovAlex ©   (2012-03-23 15:12) [4]

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


← →
EgorovAlex ©   (2012-03-23 15:20) [5]

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

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

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


← →
MBo ©   (2012-03-23 15:27) [6]

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



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.032 c
15-1415442545
alexdn
2014-11-08 13:29
2015.09.10
Потестировать сайт


15-1421357405
Юрий
2015-01-16 00:30
2015.09.10
С днем рождения ! 16 января 2015 пятница


15-1416346202
Юрий
2014-11-19 00:30
2015.09.10
С днем рождения ! 19 ноября 2014 среда


6-1255352020
minomorf
2009-10-12 16:53
2015.09.10
Как сделать аутификацию после подключения клиента к TServerSocket


15-1414158286
Дмитрий С
2014-10-24 17:44
2015.09.10
Удаление SpeedChecker




   Наверх