Try setting the mergeAlpha parameter of copyPixels to true.
From the ASDoc:
() method Language Version: ActionScript 3.0 Runtime Versions: Flash Player 9, AIR 1.0
Provides a fast routine to perform pixel manipulation between images with no stretching, rotation, or color effects. This method copies a rectangular area of a source image to a rectangular area of the same size at the destination point of the destination BitmapData object.
If you include the
alphaPointparameters, you can use a secondary image as an alpha source for the source image. If the source image has alpha data, both sets of alpha data are used to composite pixels from the source image to the destination image. The
alphaPointparameter is the point in the alpha image that corresponds to the upper-left corner of the source rectangle. Any pixels outside the intersection of the source image and alpha image are not copied to the destination image.
mergeAlphaproperty controls whether or not the alpha channel is used when a transparent image is copied onto another transparent image. To copy pixels with the alpha channel data, set the
true. By default, the
sourceBitmapData:BitmapData— The input bitmap image from which to copy pixels. The source image can be a different BitmapData instance, or it can refer to the current BitmapData instance.
sourceRect:Rectangle— A rectangle that defines the area of the source image to use as input.
destPoint:Point— The destination point that represents the upper-left corner of the rectangular area where the new pixels are placed.
— A secondary, alpha BitmapData object source.
— The point in the alpha BitmapData object source that corresponds to the upper-left corner of the
— To use the alpha channel, set the value to
true. To copy pixels with no alpha channel, set the value to