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

Вниз

Контрастность и яркость картинки   Найти похожие ветки 

 
Katy ©   (2005-04-20 18:54) [0]

Нужно сделать средствами Delphi кариночку JPG или BMP ярче или темнее.
Кто-нибудь знает как?


 
Katy ©   (2005-04-20 18:55) [1]

Светлее или темнее :-)


 
Магнитоныч   (2005-04-20 23:08) [2]

Я знаю.

procedure RGBColors(Bitmap: TBitmap; nr, ng, nb: Byte);

 function BLimit(B: Integer): Byte;
 begin
   if B < 0 then Result := 0
     else if B > 255 then Result := 255
       else Result := B;
 end;

var x, y: Integer;
   Dest: pRGBTriple;
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
       rgbtBlue  := BLimit(rgbtBlue + nb);
       rgbtGreen := BLimit(rgbtGreen + ng);
       rgbtRed   := BLimit(rgbtRed + nr);
     end;
     Inc(Dest);
   end;
 end;
end;


К примеру:
Светлее RGBColors(Bmp, 50, 50, 50);
Темнее RGBColors(Bmp, -50, -50, -50);


 
Katy ©   (2005-04-21 10:01) [3]

СПАСИБО ОГРОМНОЕ :-)



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

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

Наверх




Память: 0.47 MB
Время: 0.042 c
5-1097234297
LAndrey
2004-10-08 15:18
2005.09.04
трабл в DBGridEh


1-1123756035
Bios_
2005-08-11 14:27
2005.09.04
Запись процедуры или функции в файл.


4-1121321216
Хинт
2005-07-14 10:06
2005.09.04
Значение переменной чужого приложения


14-1123573058
boriskb
2005-08-09 11:37
2005.09.04
Есть у меня "пунктик"


2-1123244435
Serjio
2005-08-05 16:20
2005.09.04
Image