Я хотел бы знать, что означает PorterDuff.Mode в графике Android.
Я знаю, что это режим передачи.
Я также знаю, что он имеет такие атрибуты, как DST_IN, Multiply и т.д.
Я хотел бы знать, что означает PorterDuff.Mode в графике Android.
Я знаю, что это режим передачи.
Я также знаю, что он имеет такие атрибуты, как DST_IN, Multiply и т.д.
Вот отличная статья с иллюстрациями инженера Google:
http://ssp.impulsetrain.com/porterduff.html
PorterDuff описывается как способ комбинирования изображений, как если бы они были "фигурами неправильной формы картона", наложенными друг на друга, а также схемой для смешивания перекрывающихся частей.
Стандартный способ компоновки изображений по умолчанию - PorterDuff.Mode.SRC_OVER, который приравнивает к рисованию исходного изображения/цвета поверх целевого образ. Другими словами, он делает то, что вы ожидаете, и рисует исходное изображение (то, что вы рисуете) поверх целевого изображения (холста) с изображением цели, отображаемым до степени, определяемой исходным изображением alpha.
 
Вы можете использовать ключ ниже, чтобы понять алгебру, которую Android-документы используют для описания других режимов (см. статью для более полного описания с аналогичными условиями).
Где альфа - значение [0..1], а цвет заменяется один раз на канал (поэтому используйте формулу один раз для каждого из красного, зеленого и синего)
Результирующие значения указаны в виде пары в квадратных скобках следующим образом.
[<alpha-value>,<color-value>]
Где alpha-value и color-value - формулы для генерации получаемой альфа-канала и каждой цветной шали соответственно.
Определяет, как создавать изображения на основе значения альфа. Подробнее здесь http://en.wikipedia.org/wiki/Alpha_compositing