我有一个类创建一个带有bitmapData的类,它合并了2个IBitmapDrawable。 其中一个是24 * 20而另一个是16 * 16。 我想在bitmapData对象中绘制较小的第一个,其宽度和高度为24 * 20 但我想把它画在大边界的中心。
有谁知道怎么做? 感谢...
if (baseIcon) {
var result:BitmapData = new BitmapData(baseIconWidth,baseIconHeigt,true, 0x00FFFFFF);
result.draw(baseIcon,new Matrix(1, 0, 0, 1, 0, 0));
if (indicatorIcon) {
result.draw(indicatorIcon,new Matrix(1, 0, 0, 1, 0, 0));
}
bitmapData = result;
baseIcon = null;
}
答案 0 :(得分:1)
试试这个:
if (baseIcon) {
var result:BitmapData = new BitmapData(baseIconWidth,baseIconHeigt,true, 0x00FFFFFF);
var m:Matrix = new Matrix();
m.translate(baseIconWidth/2 - baseIcon.width/2,baseIconHeight/2 - baseIcon.height/2);
result.draw(baseIcon,m);
if (indicatorIcon) {
result.draw(indicatorIcon,new Matrix(1, 0, 0, 1, 0, 0));
}
bitmapData = result;
baseIcon = null;
}
答案 1 :(得分:0)
查看BitmapData.draw中的matrix
参数,使用已翻译的矩阵。