#

API Documentation for: NEXT
Show: Inherited Protected Private Deprecated

# ColorFilter Class

Extends Filter
Defined in: `ColorFilter:41`
Module: EaselJS

Applies a color transform to DisplayObjects.

#### Example

This example draws a red circle, and then transforms it to Blue. This is accomplished by multiplying all the channels to 0 (except alpha, which is set to 1), and then adding 255 to the blue channel.

     var shape = new createjs.Shape().set({x:100,y:100});
     shape.graphics.beginFill("#ff0000").drawCircle(0,0,50);

     shape.filters = [
         new createjs.ColorFilter(0,0,0,1, 0,0,255,0)
     ];
     shape.cache(-50, -50, 100, 100);

See Filter for an more information on applying filters.

## Constructor

### `ColorFilter`

(

- `[redMultiplier=1]`
- `[greenMultiplier=1]`
- `[blueMultiplier=1]`
- `[alphaMultiplier=1]`
- `[redOffset=0]`
- `[greenOffset=0]`
- `[blueOffset=0]`
- `[alphaOffset=0]`

)

Defined in `ColorFilter:41`

#### Parameters:

- `[redMultiplier=1]` Number optional

  The amount to multiply against the red channel. This is a range between 0 and 1.

- `[greenMultiplier=1]` Number optional

  The amount to multiply against the green channel. This is a range between 0 and 1.

- `[blueMultiplier=1]` Number optional

  The amount to multiply against the blue channel. This is a range between 0 and 1.

- `[alphaMultiplier=1]` Number optional

  The amount to multiply against the alpha channel. This is a range between 0 and 1.

- `[redOffset=0]` Number optional

  The amount to add to the red channel after it has been multiplied. This is a range between -255 and 255.

- `[greenOffset=0]` Number optional

  The amount to add to the green channel after it has been multiplied. This is a range between -255 and 255.

- `[blueOffset=0]` Number optional

  The amount to add to the blue channel after it has been multiplied. This is a range between -255 and 255.

- `[alphaOffset=0]` Number optional

  The amount to add to the alpha channel after it has been multiplied. This is a range between -255 and 255.

- Index
- Methods
- Properties

## Item Index

### Methods

- _applyFilter
- applyFilter
- clone
- getBounds
- shaderParamSetup
- toString

### Properties

- _multiPass
- alphaMultiplier
- alphaOffset
- blueMultiplier
- blueOffset
- FRAG_SHADER
- greenMultiplier
- greenOffset
- redMultiplier
- redOffset
- usesContext
- VTX_SHADER

## Methods

### `_applyFilter`

(

- `imageData`

)
Boolean

Inherited from Filter: `_applyFilter:180`

#### Parameters:

- `imageData` ImageData

  Target ImageData instance.

#### Returns:

Boolean:

### `applyFilter`

(

- `ctx`
- `x`
- `y`
- `width`
- `height`
- `[targetCtx]`
- `[targetX]`
- `[targetY]`

)
Boolean

Inherited from Filter: `applyFilter:131`

Applies the filter to the specified context.

#### Parameters:

- `ctx` CanvasRenderingContext2D

  The 2D context to use as the source.

- `x` Number

  The x position to use for the source rect.

- `y` Number

  The y position to use for the source rect.

- `width` Number

  The width to use for the source rect.

- `height` Number

  The height to use for the source rect.

- `[targetCtx]` CanvasRenderingContext2D optional

  The 2D context to draw the result to. Defaults to the context passed to ctx.

- `[targetX]` Number optional

  The x position to draw the result to. Defaults to the value passed to x.

- `[targetY]` Number optional

  The y position to draw the result to. Defaults to the value passed to y.

#### Returns:

Boolean:

If the filter was applied successfully.

### `clone`

() Filter

Inherited from Filter: `clone:170`

Returns a clone of this Filter instance.

#### Returns:

Filter:

A clone of the current Filter instance.

### `getBounds`

(

- `[rect]`

)
Rectangle

Inherited from Filter: `getBounds:111`

Provides padding values for this filter. That is, how much the filter will extend the visual bounds of an object it is applied to.

#### Parameters:

- `[rect]` Rectangle optional

  If specified, the provided Rectangle instance will be expanded by the padding amounts and returned.

#### Returns:

Rectangle:

If a `rect` param was provided, it is returned. If not, either a new rectangle with the padding values, or null if no padding is required for this filter.

### `shaderParamSetup`

(

- `gl`
- `stage`
- `shaderProgram`

)

Inherited from Filter: `shaderParamSetup:121`

Assign any unique uniforms or other setup functionality here.

#### Parameters:

- `gl` WebGLContext

  The context associated with the stage performing the render.

- `stage` StageGL

  The stage instance that will be rendering.

- `shaderProgram` ShaderProgram

  The compiled shader that is going to be used to perform the render.

### `toString`

() String

Inherited from Filter: `toString:161`

Returns a string representation of this object.

#### Returns:

String:

a string representation of the instance.

## Properties

### `_multiPass`

Filter private

Inherited from Filter: `_multiPass:79`

Another filter that is required to act as part of this filter and created and managed under the hood.

Default: null

### `alphaMultiplier`

Number

Defined in `alphaMultiplier:98`

Alpha channel multiplier.

### `alphaOffset`

Number

Defined in `alphaOffset:126`

Alpha channel offset (added to value).

### `blueMultiplier`

Number

Defined in `blueMultiplier:91`

Blue channel multiplier.

### `blueOffset`

Number

Defined in `blueOffset:119`

Blue channel offset (added to value).

### `FRAG_SHADER`

String readonly

Inherited from Filter: `FRAG_SHADER:98`

Pre-processed template shader code. It will be parsed before being fed in into the shader compiler. This should be based upon StageGL.SHADER_FRAGMENT_BODY_REGULAR

### `greenMultiplier`

Number

Defined in `greenMultiplier:84`

Green channel multiplier.

### `greenOffset`

Number

Defined in `greenOffset:112`

Green channel offset (added to value).

### `redMultiplier`

Number

Defined in `redMultiplier:77`

Red channel multiplier.

### `redOffset`

Number

Defined in `redOffset:105`

Red channel offset (added to value).

### `usesContext`

Boolean

Inherited from Filter: `usesContext:71`

A flag stating that this filter uses a context draw mode and cannot be batched into imageData processing.

Default: false

### `VTX_SHADER`

String readonly

Inherited from Filter: `VTX_SHADER:88`

Pre-processed template shader code. It will be parsed before being fed in into the shader compiler. This should be based upon StageGL.SHADER_VERTEX_BODY_REGULAR