AlphaMaskFilter Class
Applies the alpha from the mask image (or canvas) to the target, such that the alpha channel of the result will be derived from the mask, and the RGB channels will be copied from the target. This can be used, for example, to apply an alpha mask to a display object. This can also be used to combine a JPG compressed RGB image with a PNG32 alpha mask, which can result in a much smaller file size than a single PNG32 containing ARGB.
IMPORTANT NOTE: This filter currently does not support the targetCtx, or targetX/Y parameters correctly.
Example
This example draws a gradient box, then caches it and uses the "cacheCanvas" as the alpha mask on a 100x100 image. var box = new createjs.Shape();
box.graphics.beginLinearGradientFill(["#000000", "rgba(0, 0, 0, 0)"], [0, 1], 0, 0, 100, 100)
box.graphics.drawRect(0, 0, 100, 100);
box.cache(0, 0, 100, 100);
var bmp = new createjs.Bitmap("path/to/image.jpg");
bmp.filters = [
new createjs.AlphaMaskFilter(box.cacheCanvas)
];
bmp.cache(0, 0, 100, 100);
See Filter for more information on applying filters.
Constructor
AlphaMaskFilter
-
mask
Parameters:
-
mask
HTMLImageElement | HTMLCanvasElement
Item Index
Properties
Methods
_applyFilter
-
imageData
Parameters:
-
imageData
ImageDataTarget ImageData instance.
Returns:
applyFilter
-
ctx
-
x
-
y
-
width
-
height
-
[targetCtx]
-
[targetX]
-
[targetY]
Applies the filter to the specified context.
IMPORTANT NOTE: This filter currently does not support the targetCtx, or targetX/Y parameters correctly.
Parameters:
-
ctx
CanvasRenderingContext2DThe 2D context to use as the source.
-
x
NumberThe x position to use for the source rect.
-
y
NumberThe y position to use for the source rect.
-
width
NumberThe width to use for the source rect.
-
height
NumberThe height to use for the source rect.
-
[targetCtx]
CanvasRenderingContext2D optionalNOT SUPPORTED IN THIS FILTER. The 2D context to draw the result to. Defaults to the context passed to ctx.
-
[targetX]
Number optionalNOT SUPPORTED IN THIS FILTER. The x position to draw the result to. Defaults to the value passed to x.
-
[targetY]
Number optionalNOT SUPPORTED IN THIS FILTER. The y position to draw the result to. Defaults to the value passed to y.
Returns:
If the filter was applied successfully.
clone
()
Filter
Returns a clone of this Filter instance.
Returns:
A clone of the current Filter instance.
getBounds
-
[rect]
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 optionalIf specified, the provided Rectangle instance will be expanded by the padding amounts and returned.
Returns:
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
Assign any unique uniforms or other setup functionality here.
Parameters:
-
gl
WebGLContextThe context associated with the stage performing the render.
-
stage
StageGLThe stage instance that will be rendering.
-
shaderProgram
ShaderProgramThe compiled shader that is going to be used to perform the render.
Properties
_multiPass
Filter
private
Another filter that is required to act as part of this filter and created and managed under the hood.
Default: null
FRAG_SHADER
String
readonly
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
mask
HTMLImageElement | HTMLCanvasElement
The image (or canvas) to use as the mask.
usesContext
Boolean
A flag stating that this filter uses a context draw mode and cannot be batched into imageData processing.
Default: false
VTX_SHADER
String
readonly
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