### Enumeration

# Vips BlendMode

#### Declaration

    enum Vips.BlendMode

#### Description [src]

The various Porter-Duff and PDF blend modes. See `vips_composite()`, for example.

The Cairo docs have a nice explanation of all the blend modes.

The non-separable modes are not implemented.

#### Members

`VIPS_BLEND_MODE_CLEAR`

  Where the second object is drawn, the first is removed.

  - Value: `0`
  - Available since: 8.0
`VIPS_BLEND_MODE_SOURCE`

  The second object is drawn as if nothing were below.

  - Value: `1`
  - Available since: 8.0
`VIPS_BLEND_MODE_OVER`

  The image shows what you would expect if you held two semi-transparent slides on top of each other.

  - Value: `2`
  - Available since: 8.0
`VIPS_BLEND_MODE_IN`

  The first object is removed completely, the second is only drawn where the first was.

  - Value: `3`
  - Available since: 8.0
`VIPS_BLEND_MODE_OUT`

  The second is drawn only where the first isn’t.

  - Value: `4`
  - Available since: 8.0
`VIPS_BLEND_MODE_ATOP`

  This leaves the first object mostly intact, but mixes both objects in the overlapping area.

  - Value: `5`
  - Available since: 8.0
`VIPS_BLEND_MODE_DEST`

  Leaves the first object untouched, the second is discarded completely.

  - Value: `6`
  - Available since: 8.0
`VIPS_BLEND_MODE_DEST_OVER`

  Like OVER, but swaps the arguments.

  - Value: `7`
  - Available since: 8.0
`VIPS_BLEND_MODE_DEST_IN`

  Like IN, but swaps the arguments.

  - Value: `8`
  - Available since: 8.0
`VIPS_BLEND_MODE_DEST_OUT`

  Like OUT, but swaps the arguments.

  - Value: `9`
  - Available since: 8.0
`VIPS_BLEND_MODE_DEST_ATOP`

  Like ATOP, but swaps the arguments.

  - Value: `10`
  - Available since: 8.0
`VIPS_BLEND_MODE_XOR`

  Something like a difference operator.

  - Value: `11`
  - Available since: 8.0
`VIPS_BLEND_MODE_ADD`

  A bit like adding the two images.

  - Value: `12`
  - Available since: 8.0
`VIPS_BLEND_MODE_SATURATE`

  A bit like the darker of the two.

  - Value: `13`
  - Available since: 8.0
`VIPS_BLEND_MODE_MULTIPLY`

  At least as dark as the darker of the two inputs.

  - Value: `14`
  - Available since: 8.0
`VIPS_BLEND_MODE_SCREEN`

  At least as light as the lighter of the inputs.

  - Value: `15`
  - Available since: 8.0
`VIPS_BLEND_MODE_OVERLAY`

  Multiplies or screens colors, depending on the lightness.

  - Value: `16`
  - Available since: 8.0
`VIPS_BLEND_MODE_DARKEN`

  The darker of each component.

  - Value: `17`
  - Available since: 8.0
`VIPS_BLEND_MODE_LIGHTEN`

  The lighter of each component.

  - Value: `18`
  - Available since: 8.0
`VIPS_BLEND_MODE_COLOUR_DODGE`

  Brighten first by a factor second.

  - Value: `19`
  - Available since: 8.0
`VIPS_BLEND_MODE_COLOUR_BURN`

  Darken first by a factor of second.

  - Value: `20`
  - Available since: 8.0
`VIPS_BLEND_MODE_HARD_LIGHT`

  Multiply or screen, depending on lightness.

  - Value: `21`
  - Available since: 8.0
`VIPS_BLEND_MODE_SOFT_LIGHT`

  Darken or lighten, depending on lightness.

  - Value: `22`
  - Available since: 8.0
`VIPS_BLEND_MODE_DIFFERENCE`

  Difference of the two.

  - Value: `23`
  - Available since: 8.0
`VIPS_BLEND_MODE_EXCLUSION`

  Somewhat like DIFFERENCE, but lower-contrast.

  - Value: `24`
  - Available since: 8.0