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

Проблема с TBitmap.StretchDraw   Найти похожие ветки 

 
Muxaspb ©   (2005-10-21 17:22) [0]

Проблема такая:
процедуры
Canvas.StretchDraw(Rect, Bitmap) в VCL и
Bitmap.StretchDraw(DC, Rect) в KOL работают по-разному.
Если нужно уменьшить изображение, то в KOL результат гораздо хуже.
Как это можно исправить?


 
thaddy   (2005-10-21 19:00) [1]

The results should be the same. In any case, make shure it"s a DIB bitmap, then KOL is even better or the same. Can you send me an example?


 
Vladimir Kladov   (2005-10-21 20:04) [2]

SetStretchBltMode( Bitmap.Canvas.Handle, halftone );


 
Muxaspb ©   (2005-10-22 00:11) [3]

2 thaddy
First I tried to do this:

procedure TForm1.PaintBox1Paint(Sender: PControl; DC: HDC);
begin
 Bitmap.StretchDraw(DC, PaintBox1.ClientRect);
end;


Then I tried todo this:

procedure TForm1.PaintBox1Paint(Sender: PControl; DC: HDC);
var
TempBMP: PBitmap;
begin
 TempBMP:=NewDibBitmap(Bitmap.Width,Bitmap.Height, Bitmap.PixelFormat);
 TempBMP.Assign(Bitmap);
 TempBMP.StretchDraw(DC, PaintBox1.ClientRect);
 TempBMP.Free;
end;


But result is the same.

You can see what I have: http://www.sghsrv.nm.ru/StretchDraw.jpg

2 Vladimir Kladov
То, что Вы написали, ничего не меняет.


 
Vladimir Kladov   (2005-10-22 08:08) [4]

надо наоборот
SetStretchBltMode( TargetCanvas.Handle {у вас = DC}, halftone )


 
thaddy   (2005-10-22 11:52) [5]

Vladimir is right ;)

I have tested it. This works exactly the same:

procedure TForm1.dopaint(sender: Pcontrol; dc: hdc);
begin
 SetStretchBltMode(dc, halftone);
 jpg.Draw(dc,0,0);
 jpg.StretchDraw(dc,Makerect(200,200,300,300));
end;


 
Muxaspb ©   (2005-10-22 14:11) [6]

thaddy and Vladimir, thanks a lot. It"s all working.



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

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



Память: 0.46 MB
Время: 0.025 c
2-1150874343
logslava
2006-06-21 11:19
2006.07.09
Напомните, пожалста


2-1150997598
Hanzo
2006-06-22 21:33
2006.07.09
Работа с кодировкой S-jis.


2-1151035731
Mir
2006-06-23 08:08
2006.07.09
Выполнение команды через shellexecute


2-1150760795
fantasy
2006-06-20 03:46
2006.07.09
DBChart1


3-1147352502
wirg
2006-05-11 17:01
2006.07.09
Filter




   Наверх