Главная страница
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.031 c
10-1098454937
va
2004-10-22 18:22
2005.09.04
DCOM по медленному каналу


6-1116438840
Vjar
2005-05-18 21:54
2005.09.04
Несколько TCP-соединений


14-1123879891
ArtemESC
2005-08-13 00:51
2005.09.04
EXE-файлы


14-1123509418
БарЛог
2005-08-08 17:56
2005.09.04
В чем слысл жизни?


14-1123364372
SoftX
2005-08-07 01:39
2005.09.04
Сожрал семь пачек Ноотропила. Когда стану умным?