Table of Contents

Enum MixMode

Namespace
PaintDotNet.Direct2D1.Effects
Assembly
PaintDotNet.Windows.Framework.dll

Provides composite modes, blend modes, and alpha masking. These modes are aggregated from CompositeMode, BlendMode, BlendMode2, and the AlphaMaskEffect.

public enum MixMode
Extension Methods

Fields

CompositeSourceOver = 0

The standard source-over-destination blend mode.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

CompositeDestinationOver = 1

The destination is rendered over the source.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

CompositeSourceIn = 2

Performs a logical clip of the source pixels against the destination pixels.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

CompositeDestinationIn = 3

The inverse of the SourceIn operation.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

CompositeSourceOut = 4

The logical inverse of the SourceIn operation.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

CompositeDestinationOut = 5

The logical inverse to the DestinationIn operation.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

CompositeSourceAtop = 6

Writes the source pixels over the destination where there are destination pixels.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

CompositeDestinationAtop = 7

The logical inverse of the SourceAtop operation.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

CompositeXor = 8

The source is inverted with the destination.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

CompositePlus = 9

The channel components are summed.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

CompositeSourceCopy = 10

The source is copied to the destination; the destination pixels are ignored.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

CompositeBoundedSourceCopy = 11

Equivalent to SourceCopy, but pixels outside of the source bounds are unchanged.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

CompositeMaskInvert = 12

Destination colors are inverted according to a source mask.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendMultiply = 1000

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendScreen = 1001

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendDarken = 1002

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendLighten = 1003

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendDissolve = 1004

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendColorBurn = 1005

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendLinearBurn = 1006

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendDarkerColor = 1007

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendLighterColor = 1008

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendColorDodge = 1009

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendLinearDodge = 1010

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendOverlay = 1011

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendSoftLight = 1012

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendHardLight = 1013

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendVividLight = 1014

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendLinearLight = 1015

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendPinLight = 1016

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendHardMix = 1017

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendDifference = 1018

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendExclusion = 1019

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendHue = 1020

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendSaturation = 1021

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendColor = 1022

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendLuminosity = 1023

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendSubtract = 1024

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

BlendDivision = 1025

See Direct2D Blend modes and Direct2D Blend effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.

Blend2Additive = 2000

The source colors are reflected over the destination colors.
output = min(1, (dst * dst) / (1 - src))

This mode operates in straight alpha space. If the AlphaMode property is set to Premultiplied then the input will be unpremultiplied, the operation will be performed, and then the output will be premultiplied.

Blend2Reflect = 2001

The source colors are reflected over the destination colors.
output = min(1, (dst * dst) / (1 - src))

This mode operates in straight alpha space. If the AlphaMode property is set to Premultiplied then the input will be unpremultiplied, the operation will be performed, and then the output will be premultiplied.

Blend2Glow = 2002

The inverse of Reflect.
output = min(1, (src * src) / (1 - dst))

This mode operates in straight alpha space. If the AlphaMode property is set to Premultiplied then the input will be unpremultiplied, the operation will be performed, and then the output will be premultiplied.

Blend2Negation = 2003

The source colors are negated over the destination colors.
output = (1 - abs(1 - dst - src))

This mode operates in straight alpha space. If the AlphaMode property is set to Premultiplied then the input will be unpremultiplied, the operation will be performed, and then the output will be premultiplied.

Blend2Min = 2004

The minimum of each color channel is used.
output = [R=min(dst.R, src.R), G=min(dst.G, src.G), B=min(dst.B, src.B)]

This mode operates in straight alpha space. If the AlphaMode property is set to Premultiplied then the input will be unpremultiplied, the operation will be performed, and then the output will be premultiplied.

Blend2Max = 2005

The maximum of each color channel is used.
output = [R=max(dst.R, src.R), G=max(dst.G, src.G), B=max(dst.B, src.B)]

This mode operates in straight alpha space. If the AlphaMode property is set to Premultiplied then the input will be unpremultiplied, the operation will be performed, and then the output will be premultiplied.

Blend2XorInt8 = 2006

The source and destination colors are XOR'd together using 8-bits of precision.

This mode operates in straight alpha space. If the AlphaMode property is set to Premultiplied then the input will be unpremultiplied, the operation will be performed, and then the output will be premultiplied.

Blend2XorInt16 = 2007

The source and destination colors are XOR'd together using 16-bits of precision.

This mode operates in straight alpha space. If the AlphaMode property is set to Premultiplied then the input will be unpremultiplied, the operation will be performed, and then the output will be premultiplied.

AlphaMask = 3000

Applies an alpha mask from the source to the destination.
Color values in the destination are multiplied by the alpha channel of the source.
Direct2D Alpha mask effect for more information.

This mode operates in premultiplied alpha space. If the AlphaMode property is set to Straight then the input will be premultiplied, the operation will be performed, and then the output will be unpremultiplied.