Имитировать прозрачность цвета
У меня есть значение цвета RGB и альфа-значение. Как я могу получить новое значение RGB, предполагая, что у меня есть белый фон и применена альфа?
1 ответ
Решение
Формула, применяемая к каждому из цветовых каналов, следующая:
cr = cf * af + cb * ab * (1 - af)
где cr - результирующий цвет пикселя, cf - цвет переднего плана, cb - цвет фона, af - передний план альфа и ab фон - альфа.
Обратите внимание, что часто значения цвета сохраняются уже предварительно умноженными на альфа, и в этом случае формула упрощается до
cr = cf + cb * (1 - af)
Смотрите также альфа-сочинение.