在AS3.0中存储混合图像的结果

时间:2016-07-28 21:04:40

标签: actionscript-3 actionscript

我正在制作一个交互式动画,背景图像被相机中捕获的形状遮挡。在每一帧中,相机将图像转换为黑白图像,然后用于遮盖背景图像。

在代码中,“now”是相机拍摄的图像,“P1”是背景图像。

通过使用混合模式进行蒙版后,我希望存储被遮罩的结果图像并用于其他事物。 我不明白何时使用blendmode函数,结果如何定义得很好。 我可以捕获,复制或存储结果图像吗?

var P1:MovieClip = new p1();
var mskimg:MovieClip = new maskimage();

var bitmap_obj:Bitmap = new Bitmap(now);

addChild(P1);
P1.blendMode = BlendMode.LAYER;
addChild(bitmap_obj);
bitmap_obj.blendMode = BlendMode.MULTIPLY;

enter image description here

1 个答案:

答案 0 :(得分:0)

如果将要绘制的所有内容放入容器中,则可以绘制蒙版对象,然后调用BitmapData.draw()将完整的分层对象绘制到某个BitmapData。然后,您可以使用该位图数据执行任何操作,Graphics.beginBitmapFill()FileReference.save(),等等。然而,操作很昂贵,因此如果通过响应用户操作触发绘图会更好,并且默认情况下不会每帧都这样做,除非应用程序的逻辑需要。