Blend Mode
Blends are operators that take in two colors (source, destination) and return a new color. Many of these operate the same on all 4 components: red, green, blue, alpha. For these, we just document what happens to one component, rather than naming each one separately.
Different SkColorTypes have different representations for color components: 8-bit: 0..255 6-bit: 0..63 5-bit: 0..31 4-bit: 0..15 floats: 0...1
The documentation is expressed as if the component values are always 0..1 (floats).
For brevity, the documentation uses the following abbreviations s : source d : destination sa : source alpha da : destination alpha
Results are abbreviated r : if all 4 components are computed in the same manner ra : result alpha component rc : result "color": red, green, blue components
Entries
Brighten destination to reflect source.
Darken destination to reflect source.
Multiply or screen, depending on source.
Lighten or darken, depending on source.
Subtract darker from lighter with higher contrast. rc = s + d - 2*(min(sda, dsa)), ra = kSrcOver
Saturation of source with hue and luminosity of destination.
Luminosity of source with hue and saturation of destination.