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

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

как узнать цвет в заданном пикселе канвы [D7, D2005, XP]


San1 ©   (2007-11-14 13:13:00) 

есть следующий код:

Image2.Canvas.Brush.Color:=clWhite;
Image2.Canvas.Brush.Style:=bsSolid;
Image2.Canvas.FillRect(ClientRect);

image2.Canvas.Pen.Width:=1;
image2.Canvas.Pen.Style:=psSolid;
image2.Canvas.Pen.Color:=clblue;

.......... рисую

for k:=0 to Image2.Height do begin
 for z:=0 to Image2.Width do begin
   if Image2.Canvas.Pixels[z,k]=clBlue then
     begin
     ....................
     end;
 end;
end;

на рисунке присутствуют пиксели голубого цвета, но этот код их почему-то не определяет.
Подскажите пожалуйста, в чем дело.


San1   (2007-11-14 14:46:00) [1]

Спасибо, Заработало!


WFS   (2007-11-14 13:16:00) [2]

Напиши так:
if GetBValue(Image2.Canvas.Pixels[z,k])=255 then...


Ega23   (2007-11-14 13:16:00) [3]


> на рисунке присутствуют пиксели голубого цвета


TColor - 16777216 цветов. И только один из них - clBlue.


antonn   (2007-11-14 13:15:00) [4]

for k:=0 to Image2.Height-1 do begin
for z:=0 to Image2.Width-1 do begin
  if Image2.Canvas.Pixels[z,k]=clBlue then
    begin
    ....................
    end;
end;
end;

это во превых, во вторых изображение, загруженное в TImage хранится в Image.picture.bitmap, следовательно обращаться надо к Image2.picture.bitmap.canvas


Наверх

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