Ну коль просите пишу как я это сделал, хотя в сущности почти нчего не изменилось... ну тока влез внутрь кодирования джепега и перекомпилил dcu'шку а так код вот какой:
....
var j:TJPEGImage;
t,t1:tmemorystream;
bmp,bmp2: TImage;
r1,r2:Trect;
begin
//----------- create
j:=TJPEGImage.Create;
t1:=TMemoryStream.Create;
t:=TMemoryStream.Create;
bmp:=TImage.Create(owner);
bmp2:=TImage.Create(owner);
bmp.Width:=1024;
bmp.Height:=768;
bmp2.Width:=1024;
bmp2.Height:=768;
//------- связь с рабочим столом
bmp.Canvas.Handle:=getdc(HWND_DESKTOP);
...
bmp2.Canvas.CopyRect(r2,bmp.Canvas,r1);
bmp2.Picture.Bitmap.SaveToStream(t1);
label1.Caption:=inttostr(t1.Size); // тут размер окола 2 - 3 мб
//--------- compress
j.ProgressiveEncoding:=true;
j.PixelFormat:=jf24Bit;
j.CompressionQuality:=15;
j.Smoothing:=true;
j.Compress;
//-------------- save to stream
j.Assign(bmp2.Picture.Bitmap);
j.SaveToStream(t);
label2.Caption:=inttostr(t.Size); // вот тут размер дето становится 37 - 42 кб
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах