Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.18;
Скачать: CL | DM;

Вниз

Рисунки   Найти похожие ветки 

 
Driverrr   (2003-04-23 13:20) [0]

Уважаемые специалисты, подскажите:
1) Как скопировать изображение заданной части окна в TMemoryStream?
2) Как из TMemoryStream скопировать изображение на заданную часть окна?


 
AlexT1000 ©   (2003-04-23 15:58) [1]

1)
TArrayByte = array[0..0] of byte;
PArrayByte = ^TArrayByte;
p : PArrayByte;
B := TBitmap.Create;
B.Width := Form.Width ;
B.Height := Form.Height ;
B.PixelFormat := pf24bit;
Form.PaintTo(B.Canvas.Handle,0,0);
// загнали изображение окна в битмап

// теперь построчно в стрим
M : = TMemoryStream.Create;
M.Size := B.Width * B.Height * 3;
for i:=0 to B.Height -1 do
M.Write(PArrayByte(B.ScanLine[i])^,B.Width * 3);

2) наоборот из мемору по строкам копируешь в созданный битмап
а потом
Form.Canvas .Draw(0,0,B);

можешь перед записей строк битмапа записыватьв поток Width и Height битмапа , что бы потом воссоздать его с нужным размером
( и Left Top что бы знать куда рисовать)



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

Текущий архив: 2003.08.18;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.009 c
14-58440
Shluz
2003-08-02 00:05
2003.08.18
Хороший программист родился или стал??


14-58393
Infinity
2002-12-14 15:35
2003.08.18
Как спрятать Программу в TrayBar ?


14-58429
VID
2003-08-02 17:02
2003.08.18
Ограничение в 65536 символов в RichEdit


14-58400
dez
2003-08-04 11:56
2003.08.18
[help] выполнение действия при нажатой кнопке мыши


14-58392
mao
2003-08-04 14:36
2003.08.18
String to PChar