var bmd1: BitmapData = new BitmapData(50, 50, true, 0xFFFFAA00); var bmd2: BitmapData = new BitmapData(50, 50, true, 0xCCFFAA00); var diffBmpData: BitmapData = BitmapData(bmd1.compare(bmd2)); var diffValue: String = diffBmpData.getPixel32(1, 1).toString(16); //解释:当二个位置尺寸大小相同,且仅alpha分量不同时,compare的值为 zzFFFFFF,其中 zz为 bmd1与 bmd2的 alpha分量差 trace(diffValue); // 33ffffff var bm1: Bitmap = new Bitmap(bmd1); addChild(bm1); bm1.x = bm1.y = 5; var bm2: Bitmap = new Bitmap(bmd2); addChild(bm2); bm2.x = 60; bm2.y = 5; var bmDiff = new Bitmap(diffBmpData); addChild(bmDiff); bmDiff.x = 115; bmDiff.y = 5; var bmd1: BitmapData = new BitmapData(50, 50, true, 0xFF00FF99); var bmd2: BitmapData = new BitmapData(50, 50, true, 0x99AA3366); var diffBmpData: BitmapData = BitmapData(bmd1.compare(bmd2)); var diffValue: String = diffBmpData.getPixel32(1, 1).toString(16); //解释:当二个位置尺寸大小相同,但RGB分量不同时,compare的值为 //FFxxyyzz,其中 xx, yy, zz分别为 bm1与 bm2的 RGB分量差,同时 alpha分量差将被忽略 trace(diffValue); // ff56cc33 var bm1: Bitmap = new Bitmap(bmd1); addChild(bm1); bm1.x = bm1.y = 5; var bm2: Bitmap = new Bitmap(bmd2); addChild(bm2); bm2.x = 60; bm2.y = 5; var bmDiff = new Bitmap(diffBmpData); addChild(bmDiff); bmDiff.x = 115; bmDiff.y = 5;