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