Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ворос про рисование на Canvas [XP]


savyhinst ©   (2008-07-16 13:55:00) 

Здраствуйте.
Подскажите пожалуйста, как зделать, чтобы некоторая область на канвасе, помеченная чёрным, закрасилась битмапом.
Спасибо за внимание.


Renegat   (2008-07-16 14:33:00) [1]

> [3] Palladin ©   (16.07.08 14:23)

аха, +1 =)

Навскидку: создаёшь канвас нужного разрешения, на него накладываешь "маску" - где в исходном канвасе чёрные точки - они должны быть белыми, а во всех остальных местах - чёрными. Накладываешь битмап на этот канвас в режиме AND (т.е. где были чёрные точки - они останутся чёрными, где были белые - станут "как битмап"). Потом сводишь свой основной канвас и этот, в режиме OR. Всё просто. BitBLT в помощь.


Ega23   (2008-07-16 14:31:00) [2]


> NieL7   (16.07.08 14:06) [2]


Это ты на какой вопрос сейчас ответил?


Palladin   (2008-07-16 14:23:00) [3]

кто бы мог подумать...


NieL7   (2008-07-16 14:06:00) [4]

procedure Paint(Canvas: TCanvas);
var
 G: TBitmap;
begin
 G := TBitmap.Create;
 try
   G.LoadFromFile('D:\1.bmp');
   Canvas.StretchDraw(Rect(0, 0, 100, 100), G);
   Invalidate;
 finally
   G.Free;
 end;
end;


brother   (2008-07-16 14:00:00) [5]

> закрасилась битмапом.

это как?


Наверх

Титульная страница Поиск, карта сайта Написать письмо