Первичный ключ базы данных mvc не работает?

Вышеупомянутый ответ работает, если изображение не предварительно умножено на альфа. Однако, если вы используете этот тип смешивания с предварительно умноженным альфа-изображением, будет черная рамка.

Предварительно умноженная альфа:

Когда изображение создается, значения цвета умножаются на альфа-канал. Взгляните на этот пример с одним пикселем:

Pixel: r = 1, g = 0, b = 0, a = 0.5

Когда он будет сохранен, значения rgb будут умножаться на альфа-значение, давая:

Pixel: r = 0.5, g = 0, b = 0, a = 0.5

Чтобы смешать этот вид image вам нужно использовать следующую формулу:

result.r = background.r * (1 - A) + foreground.r
result.g = background.g * (1 - A) + foreground.g
result.b = background.b * (1 - A) + foreground.b

Непремультиплексная альфа

В этом примере альфа-канал полностью отделен от цветных каналов.

Pixel: r = 1, g = 0, b = 0, a = 0.5

Когда он сохранен:

Pixel: r = 1, g = 0, b = 0, a = 0.5

То же самое. В этом случае ответ, предоставленный minitech, является правильным.

Более подробную информацию можно найти здесь: Предварительно умноженная альфа

0
задан gian82 17 January 2019 в 15:56
поделиться