比较位图差异

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;

  

原文地址:https://www.cnblogs.com/dt1991/p/12524601.html