当我使用bitmapdata阈值时,未通过阈值测试的像素会发生什么? 根据我的观察,他们仍然存在,所以有没有办法删除它们?
答案 0 :(得分:1)
最好的方法是为此操作使用临时(静态,可重用)透明BitmapData。你用0x0填充它,然后将threshold()
设置源设置为你的BitmapData,并将copySource
标志设置为false,然后你copyPixels()
将mergeAlpha
设置为false。
var tbd:BitmapData=yourBitmapData.clone(); // this makes a new BitmapData, so be warned
var p0:Point=new Point();
tbd.fillRect(tbd.rect,0);
tbd.threshold(yourBitmapData,yourBitmapData.rect,p0,yourOperation,
yourThreshold,yourColor,yourMask,false);
yourBitmapData.copyPixels(tbd,tbd.rect,p0);
tbd.dispose();