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

Вниз

StretchBlt   Найти похожие ветки 

 
Ajax   (2003-04-14 16:15) [0]

У кого есть код, использующий StretchBlt, киньте пожалуйста.

Я заколебался уже. Ну нифига не рисуется у меня. Либо вообще ничего не выводит, либо белый фон.

Procedure DrawItem();
var
BM1,bm2:TBitMap;
Begin
BM1:=Tbitmap.create;
bm1.LoadFromFile("C:\1.bmp");
bm2:=Tbitmap.create;
StretchBlt(bm2.Canvas.Handle,0,0,100,100,bm1.Canvas.Handle,0,0,500,500,SrcCopy);
form1.Image1.Picture.Bitmap:=bm2;
bm1.Free;
bm2.Free;
End;


 
MBo   (2003-04-14 16:16) [1]

размеры bm2 задай


 
Ajax   (2003-04-14 19:56) [2]

Спасибо. Код заработал.

Только вот одно "НО". Так гавено масштабируется, огромное количество артефактов. Так и должно быть или я что-то не так делаю???


 
Knight   (2003-04-14 20:49) [3]

SetStretchBltMode(BMP2.Canvas.Handle,HALFTONE);
StretchBlt(BMP2.Canvas.Handle,0,0,BMP2.Width,BMP2.Height,BMP1.Canvas.Handle,0,0,BMP1.Width,BMP1.Height,SRCCOPY);


 
Knight   (2003-04-14 20:56) [4]

И вообще, для чего люди в свои программы справку встраивают?
Если ей никто пользоваться не умеет... Дела через эту же функцию превью для мзображений в Базе открыл Хелп... почитал... сделал и заработало. :)


 
Ajax   (2003-04-16 07:13) [5]

Спасибо, уважаемые.


>И вообще, для чего люди в свои программы справку встраивают?
>Если ей никто пользоваться не умеет

Так я свой код как раз из справки-то и вычитал, только видать не до конца читал...


 
Думкин   (2003-04-17 07:19) [6]


> SetStretchBltMode(BMP2.Canvas.Handle,HALFTONE);

Сие верно но не всегда. Если уж так, то опять в тупую читаем справку(MSDN):

Maps pixels from the source rectangle into blocks of pixels in the destination rectangle. The average color over the destination block of pixels approximates the color of the source pixels.
After setting the HALFTONE stretching mode, an application must call the SetBrushOrgEx function to set the brush origin. If it fails to do so, brush misalignment occurs.

This option is not supported on Windows 95/98/Me.

А в этих сситемах какчественно, мне GL32 помог.


 
Думкин   (2003-04-17 07:20) [7]


> SetStretchBltMode(BMP2.Canvas.Handle,HALFTONE);

Сие верно но не всегда. Если уж так, то опять в тупую читаем справку(MSDN):

Maps pixels from the source rectangle into blocks of pixels in the destination rectangle. The average color over the destination block of pixels approximates the color of the source pixels.
After setting the HALFTONE stretching mode, an application must call the SetBrushOrgEx function to set the brush origin. If it fails to do so, brush misalignment occurs.

This option is not supported on Windows 95/98/Me.

А в этих системах качественно мне GL32 помог.



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

Форум: "Потрепаться";
Текущий архив: 2003.05.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.005 c
11-12677
Alexei Dragoner
2002-07-19 19:53
2003.05.05
Как быть с Timer ом?


1-12781
Risher
2003-04-22 07:40
2003.05.05
Как сделать случайный выбор числа , например из 3745


3-12633
Ihtiandr
2003-04-15 12:53
2003.05.05
Блокировка записей в ib


3-12617
SiJack
2003-04-15 14:26
2003.05.05
Как создать запрос SQL?


9-12601
BDRON
2002-09-30 16:16
2003.05.05
Аналог сапера





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский