This reference is for Processing 3.0+. If you have a previous version, use the reference included with your software in the Help menu. If you see any errors or have suggestions, please let us know. If you prefer a more technical reference, visit the Processing Core Javadoc and Libraries Javadoc.

Class

PImage

Name

blend()

Examples
example pic
PImage mountains = loadImage("rockies.jpg");
PImage bricks = loadImage("bricks.jpg"); 
mountains.blend(bricks, 0, 0, 33, 100, 67, 0, 33, 100, ADD); 
image(mountains, 0, 0);
image(bricks, 0, 0);
example pic
PImage mountains = loadImage("rockies.jpg");
PImage bricks = loadImage("bricks.jpg"); 
mountains.blend(bricks, 0, 0, 33, 100, 67, 0, 33, 100, SUBTRACT); 
image(mountains, 0, 0);
image(bricks, 0, 0);
example pic
PImage mountains = loadImage("rockies.jpg");
PImage bricks = loadImage("bricks.jpg"); 
mountains.blend(bricks, 0, 0, 33, 100, 67, 0, 33, 100, DARKEST); 
image(mountains, 0, 0);
image(bricks, 0, 0);
example pic
PImage mountains = loadImage("rockies.jpg");
PImage bricks = loadImage("bricks.jpg"); 
mountains.blend(bricks, 0, 0, 33, 100, 67, 0, 33, 100, LIGHTEST); 
image(mountains, 0, 0);
image(bricks, 0, 0);
Description Blends a region of pixels into the image specified by the img parameter. These copies utilize full alpha channel support and a choice of the following modes to blend the colors of source pixels (A) with the ones of pixels in the destination image (B):

BLEND - linear interpolation of colours: C = A*factor + B

ADD - additive blending with white clip: C = min(A*factor + B, 255)

SUBTRACT - subtractive blending with black clip: C = max(B - A*factor, 0)

DARKEST - only the darkest colour succeeds: C = min(A*factor, B)

LIGHTEST - only the lightest colour succeeds: C = max(A*factor, B)

DIFFERENCE - subtract colors from underlying image.

EXCLUSION - similar to DIFFERENCE, but less extreme.

MULTIPLY - Multiply the colors, result will always be darker.

SCREEN - Opposite multiply, uses inverse values of the colors.

OVERLAY - A mix of MULTIPLY and SCREEN. Multiplies dark values, and screens light values.

HARD_LIGHT - SCREEN when greater than 50% gray, MULTIPLY when lower.

SOFT_LIGHT - Mix of DARKEST and LIGHTEST. Works like OVERLAY, but not as harsh.

DODGE - Lightens light tones and increases contrast, ignores darks. Called "Color Dodge" in Illustrator and Photoshop.

BURN - Darker areas are applied, increasing contrast, ignores lights. Called "Color Burn" in Illustrator and Photoshop.

All modes use the alpha information (highest byte) of source image pixels as the blending factor. If the source and destination regions are different sizes, the image will be automatically resized to match the destination size. If the src parameter is not used, the display window is used as the source image.

As of release 0149, this function ignores imageMode().
Syntax
pimg.blend(sx, sy, sw, sh, dx, dy, dw, dh, mode)
pimg.blend(src, sx, sy, sw, sh, dx, dy, dw, dh, mode)
Parameters
pimg PImage: any object of type PImage
src PImage: an image variable referring to the source image
sx int: X coordinate of the source's upper left corner
sy int: Y coordinate of the source's upper left corner
sw int: source image width
sh int: source image height
dx int: X coordinate of the destinations's upper left corner
dy int: Y coordinate of the destinations's upper left corner
dw int: destination image width
dh int: destination image height
mode int: Either BLEND, ADD, SUBTRACT, LIGHTEST, DARKEST, DIFFERENCE, EXCLUSION, MULTIPLY, SCREEN, OVERLAY, HARD_LIGHT, SOFT_LIGHT, DODGE, BURN
Returnsvoid
Relatedalpha()
copy()
Updated on January 21, 2019 10:05:12am EST

Creative Commons License