Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.02.17;
Скачать: [xml.tar.bz2];

Вниз

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

 
Глупый юзер   (2004-02-05 17:06) [0]

Доброго времени суток. Как увеличить/уменшить яркость TBitmap? Спасибо.


 
Никто   (2004-02-05 17:11) [1]

Варианты:
1. Найти готовые компоненты.
2. Пройтись по всем пикселам, и увеличить их яркость:
Pixel := RGB(round(GetRValue(Pixel) * Brightness),
round(GetGValue(Pixel) * Brightness),
round(GetBValue(Pixel) * Brightness));

Brightness - от 0 до 255 (действительные числа). Скорее всего, Brightness не больше 2-3. Необходимо дополнительно контролировать переполнение.


 
real_dimedrol   (2004-02-05 17:23) [2]

http://z-ol.chat.ru/graph.htm#T5


 
[lamer]Barmaglot   (2004-02-05 17:26) [3]

Hash - code?


 
Глупый юзер   (2004-02-05 17:27) [4]

А где можно что-то почитать на эту тему?


 
Глупый юзер   (2004-02-05 17:29) [5]

2 real_dimedrol

Не видел твоего поста, когда писал [4]. Сорри.


 
Fenik   (2004-02-05 18:13) [6]

На будущее: выбирай раздел правильно.

procedure InvertBitmap(Bitmap: TBitmap; Value: Integer);

function BLimit(A: Integer): Byte;
begin
if A < 0 then Result := 0
else if A > 255 then Result := 255
else Result := A;
end;

type TRGB = record
B, G, R: Byte;
end;
pRGB = ^TRGB;
var x, y: Integer;
Dest: pRGB;
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
B := BLimit(B + Value);
G := BLimit(G + Value);
R := BLimit(R + Value);
end;
Inc(Dest);
end;
end;
end;

Value > 0 - увеличение яркости;
Value < 0 - уменьшение яркости.


 
Fenik   (2004-02-05 18:15) [7]

Гы. Заголовок процедуры поменяй.. %))


 
Глупый юзер   (2004-02-05 19:01) [8]

2 Fenik

Cпасибо. И на будущее: не надо указывать мне, что мне делать. Без тебя разберусь.


 
Fenik   (2004-02-07 00:23) [9]

>Глупый юзер (05.02.04 19:01) [8]
>Cпасибо. И на будущее: не надо указывать мне, что мне делать. Без тебя разберусь.

Не сомневаюсь.



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

Форум: "Основная";
Текущий архив: 2004.02.17;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.009 c
7-53798
maxXP
2003-12-01 01:00
2004.02.17
Как определить нажата, отпущена левая или правая клавиша мыши.


3-53423
tanuha
2004-01-28 14:23
2004.02.17
потеря данных после записи в .dbf


14-53701
syte_ser78
2004-01-30 14:47
2004.02.17
Опять глупый вопрос ....


1-53565
dima_crt
2004-02-09 10:46
2004.02.17
отладчик заходит в модуль компонента...


1-53524
Lapor
2004-02-07 16:29
2004.02.17
Появление формы при создании





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский