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