Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.13;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.104 c
1-41363
RoLeX
2003-10-30 14:29
2003.11.13
Как сделать, чтобы в Edit1 можно было воодить только цифры???


1-41252
Alex(is)
2003-10-31 15:53
2003.11.13
Вопрос про WndProc


3-41003
Алексей Петухов
2003-10-16 07:22
2003.11.13
Directory is busy


6-41815
AlexRu
2003-09-15 11:45
2003.11.13
Вопрос по GetHostByAddr и не только


3-40816
angel2000
2003-10-22 11:17
2003.11.13
ВЫделение строки в гриде