我有三个BitmapData对象,都有alpha通道。
bitmapData 1& 2具有相同的RGB内容,但不同的alpha通道:
bitmapData1.rgb == bitmapData2.rgb
bitmapData1.a != bitmapData2.a
bitmapData 3具有完全不同的数据。
我想要实现的目标如下:
targetBitmapData.rgb = bitmapData1.rgb;
targetBitmapData.a = bitmapData1.a * bitmapData3.a + bitmapData2.a*(1-bitmapData3.a);
所以,我想混合bitmapData 1&的alpha通道。 2基于bitmapData 3的alpha通道
我是否需要迭代所有像素来执行此操作,还是有更快的方法?尝试使用copyPixels,但没有得到理想的结果。
答案 0 :(得分:1)
您应该可以使用draw
通过多个BlendMode
操作实现此目的。它可能需要太多操作才能比迭代更有效。
如果您最终迭代像素(并且不是针对iOS),请考虑PixelBender。