Вниз
Скачать: 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.068 c
8-1110366964
besen-ok
2005-03-09 14:16
2005.07.11
На форме есть Canvas, из потока рисую в него


3-1116859672
Dimedrol
2005-05-23 18:47
2005.07.11
Как выключить Trusted Connection ?


1-1117912910
Destroyer
2005-06-04 23:21
2005.07.11
Как организовать несколько визуальных режимов программы?


14-1117875014
lookin
2005-06-04 12:50
2005.07.11
Репортаж...


4-1116170119
vaxluk
2005-05-15 19:15
2005.07.11
смена обоев рабочего стола




   Наверх