我有一个带alpha通道的BitmapData对象。我想知道在ActionScript3(FlashPlayer10)中偏移alpha通道的紧固方式。通过偏移我的意思是在一个方向上移动该通道的所有像素(环绕图像边界),同时保留颜色通道。
有没有一种方法可以将这种转换仅应用于一个通道?
答案 0 :(得分:0)
您可以使用Adobe PixelBender进行此类操作,也可以在ActionScript中手动编写(使用getVector / setVector)。但是,移动Alpha通道听起来不错,因为所有颜色都存储有预乘alpha。
这意味着你的精确度会不断下降。
答案 1 :(得分:0)
我认为我要解决的问题是创建原始bitmapData对象的clone()。保持原始原封不动。使用克隆,按照您想要的方式移动所有像素。没有内置的“随身携带卷轴”,但它并不太难。这里有一些代码,但如果只做一个方向,你可以简化它:
http://www.actionscript.org/forums/showthread.php3?p=767722
滚动后,使用copyChannel()将滚动克隆中的Alpha通道复制回原始。