Наложение одного изображения на другое

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Наложение одного изображения на другое

Сообщение qivi » 19.07.2013 15:06:58

Подскажите пожалуйста, как выглядит формула наложение одного пикселя (растрового изображения) на другой в формате RGBA. Сперва полагал что это полусумма, но результат оказался не тем, а с альфа каналом, дак вообще.

Допустим есть два пикселя: R1G1B1A1 и R2G2B2A2, как будет выглядеть формула расчёта каналов при наложении первого на второй?
Аватара пользователя
qivi
энтузиаст
 
Сообщения: 703
Зарегистрирован: 19.01.2009 13:45:54
Откуда: Россия

Re: Наложение одного изображения на другое

Сообщение Alex2013 » 01.08.2013 15:29:02

А в чем проблема ? Что просто средние арифметическое по каждому каналу не годится ? ...Ну может добавить процент прозрачности Trans (от 0 до 100)....
RSum:= (R1 + ((R2 *100)/ Trans)) /2;
GSum:=....
BSum:=....

Или чуть быстрее ..
TK:= 100/ Trans;

RSum:= (R1 Оr (R2 *Tk );
GSum:=....
BSum:=....
Alex2013
долгожитель
 
Сообщения: 3147
Зарегистрирован: 03.04.2013 11:59:44


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 231

Рейтинг@Mail.ru