擦除算法使用AS3实现

时间:2011-06-10 08:33:55

标签: flash flex actionscript-3

是否有任何算法在位图中执行擦除操作?我想创建类似于photoshop或其他图形应用程序执行擦除的功能。擦除操作是如此困难,以至于没有太多帮助(对于位图)?我甚至可以使用算法的名称,我可以从那里开始。

2 个答案:

答案 0 :(得分:5)

答案 1 :(得分:0)

如果要使用矩形橡皮擦擦除,可以尝试访问bitmapData并获取一些像素。然后,您可以将其alpha更改为0,如下面的代码所示。

var myBitmap:Bitmap = //YourBitmap;
var myBitmapData:BitmapData = myBitmap.bitmapData;
var myEraser:Rectangle = new Rectangle(0, 0, 20, 20);//Or some other values, depending on the x, y, width and height of your eraser.

for(var i:uint = 0; i < myEraser.width; i++)
{
    for(var j:uint = 0; j < myEraser.height; j++)
    {
        myBitmapData.setPixel32(i + myEraser.x, j + myEraser.y, 0x00000000);
    }
}