Главная страница
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.039 c
14-1123488820
kblc
2005-08-08 12:13
2005.09.04
Compiler ...


1-1123829613
_Роман_
2005-08-12 10:53
2005.09.04
Компонент построения графиков в Delphi


14-1123321352
Sniper-Max
2005-08-06 13:42
2005.09.04
Не работает ИК под XP (под 2K все нормально) :(


14-1123529076
Fredericco
2005-08-08 23:24
2005.09.04
Рыбалка. Иваньковское вдхр.


1-1124129694
забыл [кто-то зарегил мой ник]
2005-08-15 22:14
2005.09.04
Проверка орфографии )