Главная страница
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.062 c
3-1117193378
highlander
2005-05-27 15:29
2005.07.11
Проблема использования сложных запросов с агрегатами


1-1118769268
sofs
2005-06-14 21:14
2005.07.11
кривые колонки в РичЭдит при большом рбъёме инфы


1-1118640305
Juster
2005-06-13 09:25
2005.07.11
Пропись пути для модулей


6-1110566218
Arazel
2005-03-11 21:36
2005.07.11
Передача файлов удаленна через сокет ВОЗМОЖНО ЛИ ЭТО?


9-1112037257
Trimp
2005-03-28 23:14
2005.07.11
Antialiasing