Что такое Format32bppPArgb в деталях

#.net #performance #graphics #msdn

#.net #Производительность #графика #msdn

Вопрос:

MSDN говорит:

Формат32bppPArgb

Указывает, что формат равен 32 битам на пиксель; по 8 бит используется для альфа-, красного, зеленого и синего компонентов. Красный, зеленый и синий компоненты предварительно умножаются в соответствии с альфа-компонентом.

Означает ли это, что значения RGB уже умножены, а значение A (Alpha) больше не используется в реальном времени? Означает ли это, что если у меня ImageFormat используется PARGB, больше невозможно увидеть реальную прозрачность, потому что значения RGB уже умножены, или это всего лишь «хорошо выполненная» функция GPU, где пользователь (разработчик) не чувствует никакой разницы в случае результата R / G / B?

С уважением

Ответ №1:

Альфа-значения сохраняются в пиксельных данных и доступны для использования. Но интенсивности пикселей не являются истинным значением, а были умножены на альфа.

В статье Википедии есть хорошее обсуждение плюсов и минусов.

Комментарии:

1. Привет, Дэвид. Вы сказали, что значения доступны. Но тогда вы сказали, что это неправда. По вашей ссылке я не нашел ни статьи P ARB, ни каких-либо обсуждений. Пожалуйста, посоветуйте.

2. Альфа-значения являются истинными альфа-значениями. Значения RGB умножаются. Эта ссылка ведет к длинному разделу о предварительно умноженной альфа-версии. Не знаю, как вы это пропустили.