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

Помогите посчитать RGBA пиксель   Найти похожие ветки 

← →
FF   (2011-06-17 12:06) [0]

Здравствуйте. Помогите посчитать сабж.
Имеются четырех байтный массив, тип byte. Будем считать, что это пиксель RGBA. Правила канала А: 0 - абсолютная прозрачность, FF - нету прозрачности. От картинка http://zalil.ru/31280064

Теперь заливаю его цветом 4DB394 с прозрачностью 7F (байты идут в том же порядке, как и на картинке). Так как была 100 процентная прозрачность - то итог мне думается будет такой http://zalil.ru/31280070

Теперь же мне нужно поверх этого пикселя нарисовать еще один. Например 2D14454 с прозрачностью 33. И тут я застопорился. Как в этом случае считать пиксель?

В обычном RGB  я бы для каждого канала считал так: (прозрачность приведу в процентах).

pr = 50 (прозрачность %)
isxC = 127 (Текщее значение)
AddC = 255 (Наложить со смешиванием в процентном соотношении pr)
MaxC = 255 (Максимально возможное значение)

OutC = ((MaxC-isxC)/100*pr)+ (addC/100*pr)

С альфой совсем запутался ((


← →
FF   (2011-06-17 12:07) [1]

Например 2D14454 с прозрачностью 33

читать как Например 2D1454 с прозрачностью 33


← →
Омлет ©   (2011-06-17 12:50) [2]

http://en.wikipedia.org/wiki/Alpha_compositing


← →
FF   (2011-06-17 13:13) [3]


> Омлет ©   (17.06.11 12:50) [2]
> http://en.wikipedia.org/wiki/Alpha_compositing


Спасибо! А то я раньше это не видел, а главное понял... угу


← →
FF   (2011-06-23 00:07) [4]

Удалено модератором



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

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



Память: 0.45 MB
Время: 0.004 c
15-1308428998
Юрий
2011-06-19 00:29
2011.10.09
С днем рождения ! 19 июня 2011 воскресенье


2-1308655885
Kilowatt
2011-06-21 15:31
2011.10.09
Label поверх ProgressBar


15-1308505658
Leon-Z
2011-06-19 21:47
2011.10.09
Иконка *.bmp на кнопке меню.


15-1308328493
alexdn
2011-06-17 20:34
2011.10.09
по Inno setup


15-1308562061
xayam
2011-06-20 13:27
2011.10.09
Архивная статистика: С днем рождения




   Наверх