Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2006.07.09;
Скачать: [xml.tar.bz2];

Вниз

Проблема с 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 вся ветка

Форум: "KOL";
Текущий архив: 2006.07.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.009 c
2-1150867093
Arazel
2006-06-21 09:18
2006.07.09
Unicode в ACSII результат ???


2-1150554983
WebSqlNeederr
2006-06-17 18:36
2006.07.09
Как разделить строку (логины) по разделителю запятая?


1-1148621999
nopox
2006-05-26 09:39
2006.07.09
Доброго времени суток, Господа! проблема с IXMLDocument


2-1151158305
max1981
2006-06-24 18:11
2006.07.09
Закрытие окна проводника из своей программы


2-1150874343
logslava
2006-06-21 11:19
2006.07.09
Напомните, пожалста





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский