Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2005.01.16;
Скачать: [xml.tar.bz2];

Вниз

Grayscale > X-Scale   Найти похожие ветки 

 
X-Disa   (2004-10-10 11:52) [0]

Всем привет! У меня есть grayscale изображение. И есть цвет (например clred). Задача такая: Из Grayscale сделать redscale и т.д. Чтоб черный цвет в данном случае заменился на красный, а остальные - на его оттенки. Белый так и должен остаться белым.


 
Fenik   (2004-10-10 12:05) [1]

Дам тебе заготовку.
С алгоритмом самостоятельно разбирайся.

type
 TRGB = record
   B, G, R: Byte;
 end;
 pRGB = ^TRGB;

procedure Proc(Bitmap: TBitmap);
var Dest: pRGB;
   X, Y: Word;
begin
 Bitmap.PixelFormat := pf24Bit;
 for Y := 0 to Bitmap.Height - 1 do begin
   Dest := Bitmap.ScanLine[y];
   for X := 0 to Bitmap.Width - 1 do begin
     with Dest^ do begin
       B := // синий
       G := // зеленый
       R := // красный
     end;
     Inc(Dest);
   end;
 end;
end;


Например, инверсия:

procedure InvertBitmap(Bitmap: TBitmap);
var x, y: Integer;
   Dest: pRGB;
begin
 Bitmap.PixelFormat := pf24Bit;
 for y := 0 to Bitmap.Height - 1 do begin
   Dest := Bitmap.ScanLine[y];
   for x := 0 to Bitmap.Width - 1 do begin
     with Dest^ do begin
       R := 255 - R;
       G := 255 - G;
       B := 255 - B;
     end;
     Inc(Dest);
   end;
 end;
end;


 
X-Disa   (2004-10-10 13:02) [2]

Спасибо конечно, но эти алгоритмы я уже давно знаю... Мне б найти сам алгоритм преобразования. Я один наисал, но он не совсем так как надо работает.


 
Mihey_temporary ©   (2004-10-10 13:43) [3]

http://delphibase.endimus.ru


 
Fenik   (2004-10-10 14:54) [4]

> X-Disa  (10.10.04 13:02) [2]
> Мне б найти сам алгоритм преобразования.


Ты думаешь, такой существует?



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

Форум: "Media";
Текущий архив: 2005.01.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.033 c
1-1104831450
markers
2005-01-04 12:37
2005.01.16
Del в TListView


3-1102935792
Barsky
2004-12-13 14:03
2005.01.16
Как изменить параметры поля в DBF


6-1099067176
Sicilla
2004-10-29 20:26
2005.01.16
IP сервера


3-1102945591
alex145
2004-12-13 16:46
2005.01.16
GUI-Оболочка


1-1104044743
ReNEG@T 344
2004-12-26 10:05
2005.01.16
Delphi 8





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский