Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.01;
Скачать: CL | DM;

Вниз

Как из цветной картинки загруженной в Image сделать чёрно-белую?   Найти похожие ветки 

 
Alexey Klimov   (2003-08-19 17:44) [0]

см.сабж


 
Игорь Шевченко ©   (2003-08-19 17:53) [1]

Graphics.pas, CreateGrayMappedBmp


 
Alexey Klimov   (2003-08-19 18:59) [2]

Или не то, или СКАЖИ КАК ПОЛЬЗОВАТЬСЯ!


 
Palladin ©   (2003-08-19 19:16) [3]

А НЕ ПОСМОТРЕТЬ ЛИ ТЕБЕ В СПРАВОЧКУ?


 
chyaynik   (2003-08-19 19:56) [4]

Bitmap.Monohrome := true;


 
Fenik ©   (2003-08-19 21:44) [5]

procedure Threshold(Bitmap: TBitmap; Value: Byte; Color1, Color2: TColor);
type TRGB = record
B, G, R: Byte;
end;
pRGB = ^TRGB;

function ColorToRGB(Color: TColor): TRGB;
begin
with Result do begin
R := Lo(Color);
G := Lo(Color shr 8);
B := Lo((Color shr 8) shr 8);
end;
end;

var x, y: Word;
C1, C2: TRGB;
Dest: pRGB;
begin
Bitmap.PixelFormat := pf24Bit;
C1 := ColorToRGB(Color1);
C2 := ColorToRGB(Color2);
for y := 0 to Bitmap.Height - 1 do begin
Dest := Bitmap.ScanLine[y];
for x := 0 to Bitmap.Width - 1 do begin
//если среднеарифметическое R, G и B больше Value,
//то точку (x, y) закрашиваем цветом Color1,
//иначе - цветом Color2
if (Dest^.r + Dest^.g + Dest^.b) / 3 > Value
then Dest^ := C1
else Dest^ := C2;
Inc(Dest);
end;
end;
end;

...

Threshold(FBitmap, 127, clWhite, clBlack);



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

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

Наверх




Память: 0.47 MB
Время: 0.019 c
1-1501
Viktor Kushnir
2003-08-17 15:45
2003.09.01
Получить текст


14-1579
_Alex_
2003-08-11 15:57
2003.09.01
Компиляция CHM


4-1704
RIMMER
2003-06-17 23:14
2003.09.01
Как активировать (передать фокус в) свое окно?


14-1618
Calm
2003-08-13 09:01
2003.09.01
Атака на форум - террор в инете. Предлагаю способ защиты.


6-1535
INTAARI
2003-06-25 14:28
2003.09.01
Как передать по UDP строку в локальную сеть