Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.11;
Скачать: 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 вся ветка

Текущий архив: 2005.07.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.081 c
1-1119451337
Peter_cc
2005-06-22 18:42
2005.07.11
Баг в CoolTray


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


4-1115537644
alpet
2005-05-08 11:34
2005.07.11
Странный регион


1-1119599734
heckfy1
2005-06-24 11:55
2005.07.11
Список принтеров


1-1118391928
Игорь Степанов
2005-06-10 12:25
2005.07.11
Чем заменить метод FloodFill, отсутствующий у QRDBChart.Canvas