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

Как заменить цвета прописанные в массиве   Найти похожие ветки 

 
Leeechhhh   (2005-03-18 10:13) [0]

у ня есть имэдж с картинкой, и массив с определёнными цветами, как мне зменить  на картинке только те цвета, которые прописанны в массиве??


 
Leeechhhh   (2005-03-18 10:27) [1]

на такую конструкцию при выполнение задачи выдаёт ошибку, хотя компилит нормально:
for x:=1 to image1.Picture.Width do
for y:=1 to image1.Picture.Height do
begin
if image1.Canvas.Pixels[x,y]=cls[x,y] then
begin
image1.Canvas.Pixels[x,y]:=cl;
end;
end;


cls[x,y]-массив с цветами
cl-цвет на который нужно заменить


 
WondeRu ©   (2005-03-18 11:32) [2]

размерности массивов проверь... и вообще какую ошибку выдает?


 
Leeechhhh   (2005-03-18 18:16) [3]

в общем почему выдавалась ошибка я понял, но почемуто всё равно не прокатывает то что я хочу.
А нет какогонибудь более простого способа заменить все нужные цвета на другой
например красный,желтый, и зелёный на синий?


 
Fenik   (2005-03-18 22:33) [4]

Например

Bmp.Transparent := True;

Bmp.TransparentColor := clRed;
Bmp2.Canvas.Draw(0, 0, Bmp);
Bmp.TransparentColor := clGreen;
Bmp2.Canvas.Draw(0, 0, Bmp);
Bmp.TransparentColor := clYellow;
Bmp2.Canvas.Draw(0, 0, Bmp);


Но быстрее будет пройтись по всем пикселям. Читай статью на этом сайте "Быстро поставить точку" (где-то на 5-й странице в статьях).



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

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



Память: 0.45 MB
Время: 0.032 c
1-1118397912
Dysan
2005-06-10 14:05
2005.07.11
помогите понять в чем причина возникновения ошибки!


3-1117000070
Гость2
2005-05-25 09:47
2005.07.11
Как вставить переменную в SQL-запрос?


1-1118732790
Ega23
2005-06-14 11:06
2005.07.11
Зачем Borland так делает???


14-1118226776
YurikGL
2005-06-08 14:32
2005.07.11
USB-разъем под обжимку. Как обжать?


1-1118916532
Oleg2
2005-06-16 14:08
2005.07.11
Controls на панели(TPanel)




   Наверх