Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
ВнизЯркость Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.207 c