Вниз
Скачать: CL | DM;

Яркость   Найти похожие ветки 

← →
Shadow ©   (2003-11-02 17:20) [0]

Как изменить яркость картинки? (TImage)


← →
Mihey ©   (2003-11-02 17:35) [1]

Вроде как в D6/D7 есть модуль GraphUtil и тогда можно использовтаь функцию (для одного пикселя):
function ColorAdjustLuma(clrRGB: TColor; n: Integer; fScale: BOOL): TColor;

А также качай пример (для D3-5, на примере обработки целого изображения):
http://www.efg2.com/Lab/Library/Delphi/Graphics/ChangeBrightness.ZIP

Или же юзай Envision Image Library, можно тут скачать:
http://www.hot.ee/compcoll/vcl.htm


← →
Maxud ©   (2003-11-02 17:42) [2]

Может это то, что нужно:


function Lighter(Color:TColor; Percent:Byte):TColor;
var
r, g, b: Byte;
begin
Color:=ColorToRGB(Color);
r:=GetRValue(Color);
g:=GetGValue(Color);
b:=GetBValue(Color);
r:=r+muldiv(255-r,Percent,100); //процент% увеличения яркости
g:=g+muldiv(255-g,Percent,100);
b:=b+muldiv(255-b,Percent,100);
result:=RGB(r,g,b);
end;


То есть, для каждого цвета Color картинки нужно изменить яркость на Percent процентов.

P.S. Сам не проверял, проверишь - расскажешь :)


← →
Shadow ©   (2003-11-02 18:05) [3]


> А также качай пример (для D3-5, на примере обработки целого
> изображения):
> http://www.efg2.com/Lab/Library/Delphi/Graphics/ChangeBrightness.ZIP

Вот это помогло. Спасибо!


> Maxud © (02.11.03 17:42) [2]

Такой алгоритм я и сам придумал, но он очень медленный


← →
Shadow ©   (2003-11-02 18:53) [4]


> http://www.efg2.com/Lab/Library/Delphi/Graphics/ChangeBrightness.ZIP


Блин, все равно медленно...


← →
Dimaxx ©   (2003-11-02 23:49) [5]

Тогда тоже самое, но через Bitmap.Scanline. Будет быстро...



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.027 c
1-41462
TRyaSS
2003-10-29 09:37
2003.11.13
Загрузка программ


1-41628
Лана Розанова
2003-10-25 21:20
2003.11.13
QReport


1-41303
Vadim S
2003-10-23 12:10
2003.11.13
Округление? Round() кто как делает?


6-41803
nefrit
2003-09-15 22:26
2003.11.13
Netbios


4-42236
Pattern
2003-08-30 16:09
2003.11.13
SendDlgItemMessage




   Наверх