as3转换为标准可控宽高的BitmapData对象

/**
 *@authorxuechong
 *@version0.1
 *@date2011.05.24
*/
/**
 * 转换为标准可控宽高的Bitmap对象,可确保不失真
 * 初始化指定的宽高值要大些,之后bm对象再指定宽高值小于等于此w和h值时才不模糊
 * @param bm 要处理的Bitmap对象
 * @param w 期望达到的Bitmap对象的宽度
 * @param h 期望达到的Bitmap对象的高度
 * */
public static function scalePic(bm:Bitmap, w:Number, h:Number):Bitmap{
 var pw:Number = w / bm.width;    //percentWidth
 var ph:Number = h / bm.height;    //percentHeight
 var bmd:BitmapData = new BitmapData(w, h, bm.bitmapData.transparent);
 var sm:Matrix = new Matrix();    //scaleMatrix
 sm.scale(pw, ph);
 bmd.draw(bm, sm);
 return new Bitmap(bmd);
}
 

你可能感兴趣的:(bitmap)