Compositing is the process of taking one or more layers and putting them together into a single image. This is what Acorn does when it draws multiple layers on top of each other, forming a single image in its canvas. Acorn gives you the ability to decide how each layer is drawn, which is known as its "blend mode". Most of the time, you will probably have a layer's blend mode set to "Normal". However, sometimes you will want to change it depending on how you want your image to appear.
To change a layer's blend mode, select the layer you want to change in the layers list, and choose an option from the Blending drop down menu. Alternatively you can cycle through a layer's blend modes using keyboard shortcuts Option Shift + or Option Shift -. The best way to become familiar with blending modes is to play around and experiment.
In the definitions below, the term 'source' refers to the top layer and 'destination' refers to the bottom layer. The blending mode is being changed for the top layer, and the bottom layer is the layer directly below in the layers list.
This one is pretty self explanatory, and is the default blend mode for new layers. Acorn draws the source layer on top of any layers below it, without any specific blending tricks.
The Darken blend mode works by keeping whichever pixels are darker on the top layer or the bottom layer.
Multiply blend mode multiplies the top layer with the bottom layer. The resulting color is at least as dark as either the source or background color. Multiplying any color with black will give black, and multiplying any color with white preserves the original color.
Color Burn will darken the bottom layer over the top layer. White produces no change.
Linear Burn mode sums the value in the two layers and subtracts 1. This is the same as inverting each layer, adding them together (as in Linear Dodge), and then inverting the result. Blending with white leaves the image unchanged.
This mode compares the total of all channel values for the source and background color and displays the lower value color.
The opposite of Darken, the Lighten blend mode draws whichever parts are lighter on the top layer or the bottom layer.
Screen blend mode multiplies the inverse of the top layer with the inverse of the bottom layer to obtain colors that are at least as light as either of the two contributing colors. Screening any color with white will produce white while screening with black will leave the original color unchanged.
Color Dodge will brighten the bottom layer over the top layer. Black produces no change.
Linear Dodge sums the values in the two layers. Blending with white gives white. Blending with black does not change the image.
Compares the total of all channel values for the top and bottom color and displays the higher value color.
Overlay blend mode either multiplies or screens the top layer with the bottom layer, depending on the color of the bottom layer. The result is to overlay the top layer while preserving the highlights and shadows of the bottom layer.
Soft light blend mode either darkens or lightens colors, depending on the top layer color. If the top layer color is lighter than 50% gray, the bottom layer lightens, similar to dodging. If the top layer color is darker than 50% gray, the bottom layer darkens, similar to burning.
Hard light blend mode either multiplies or screens colors, depending on the top layer color. If the top layer color is lighter than 50% gray, the bottom layer is lightened, similar to screening. If the top layer color is darker than 50% gray, the bottom layer is darkened, similar to multiplying.
Replaces the colors, depending on the blend color. If the blend color (light source) is lighter than 50% gray, pixels darker than the blend color are replaced, and pixels lighter than the blend color do not change. If the blend color is darker than 50% gray, pixels lighter than the blend color are replaced, and pixels darker than the blend color do not change.
This mode adds the red, green and blue channel values of the top layer color to the RGB values of the bottom layer color. All pixels are changed to primary additive colors (red, green, or blue), white, or black.
Difference blend mode subtracts either the top layer color from the bottom layer color, or the reverse, depending on which has the greater brightness value. Top layer values that are black produce no change; white inverts the bottom layer color values.
Exclusion blend mode produces a lower-contrast version of the difference blend mode. Top layer values that are black do not produce a change; white inverts the bottom layer color values.
This mode looks at the color information in each channel and subtracts the top layer color from the bottom layer color.
Divide looks at the color information in each channel and divides the top layer color from the bottom layer color.
Hue blend mode uses the luminance and saturation values of the bottom layer with the hue of the top layer.
Saturation blend mode uses the luminance and hue values of the bottom layer with the saturation of the top layer. Pure gray areas do not produce a change.
Color blend mode uses the luminance values of the bottom layer with the hue and saturation values of the top layer. This mode preserves the gray levels in the image.
Luminosity blend mode uses the hue and saturation of the bottom layer with the luminance of the top layer to create an effect that is inverse to the effect created by the color blend mode.
Mask blend mode works under the same principles as a layer mask. White in the layer will expose pixels in the layer below, where as black hides them.
Porter Duff Compositing
The area of the source (top image) which overlaps the destination (bottom image) replaces the destination, with the remaining destination retained.
The destination is placed over the source.
The area of the destination that overlaps the source is retained.
The area of the destination that falls outside the source is retained.
The non-overlapping regions of the source and destination are combined, eliminating the area that was overlapping.
Note: Descriptions taken from Apple's Quartz 2D Programming Guide