我正在尝试将 BitmapData 的内容绘制到另一个尚未创建的内容中。
但在绘制之前,我需要缩放和旋转图像,然后绘制它。
我的问题是我不知道转换后 BitmapData 的大小,所以我无法创建新的来绘制它。
这个方法说明了我的意思:
public function getTransformedBitmapData(origin:BitmapData):BitmapData
{
var matrix:Matrix = new Matrix();
// ajusting the anchor point and rotating
matrix.translate(-origin.width / 2, -origin.height / 2);
matrix.rotate(Math.PI / 4); // 45 deg
matrix.translate(origin.width / 2, origin.height / 2);
// scaling
matrix.scale(1.5, 1.5);
// Calculating the size of the new BitmapData
var width:Number = 0; // I don't know this value!
var height:Number = 0; // I don't know this value!
// Creating and drawing (with transformation)
var result:BitmapData = new BitmapData(width, height, true, 0);
result.draw(origin, matrix);
return result;
}
有人知道我应该怎么做才能在转换后找出(计算)这个图像的大小?
这张图片说明了旋转的作用,以及我想知道的内容: