Actionscript 3 AS3在绘制后调整位图数据大小丢失alpha通道()
我正在使用矩阵以通常的方式调整位图数据的大小。bitmapData有一个alpha通道(它来自PNG),而alpha通道被忽略Actionscript 3 AS3在绘制后调整位图数据大小丢失alpha通道(),actionscript-3,bitmap,image-resizing,Actionscript 3,Bitmap,Image Resizing,我正在使用矩阵以通常的方式调整位图数据的大小。bitmapData有一个alpha通道(它来自PNG),而alpha通道被忽略 var m:Matrix = new Matrix(); m.scale(.5, .5); var bmp:BitmapData = new BitmapData(bitmapData.width * .5, bitmapData.height * .5,true); bmp.draw(bitmapData,m); var resizedBitmap = new B
var m:Matrix = new Matrix();
m.scale(.5, .5);
var bmp:BitmapData = new BitmapData(bitmapData.width * .5, bitmapData.height * .5,true);
bmp.draw(bitmapData,m);
var resizedBitmap = new Bitmap(bmp);
我在BitmapData()构造函数中添加了第三个参数true,以支持alpha通道,但在调用draw()之后,我仍然失去了所有透明度。
出什么问题了?这个问题的解决方案是向BitmapData构造函数添加第四个参数(fillColor)
var bmp:BitmapData = new BitmapData(bitmapData.width * .5, bitmapData.height * .5,true,0x00000000);
从文件中:
要创建完全透明的位图,请将transparent参数的值设置为true,将fillColor参数的值设置为0x00000000(或设置为0)
这个问题的解决方案是向BitmapData构造函数添加第四个参数(fillColor)
var bmp:BitmapData = new BitmapData(bitmapData.width * .5, bitmapData.height * .5,true,0x00000000);
从文件中:
要创建完全透明的位图,请将transparent参数的值设置为true,将fillColor参数的值设置为0x00000000(或设置为0)