2012-06-20 60 views
0

忽略矩陣我創建了一個應用程序,我正在用截圖上的BitmapData.draw AIR iphone

var bitmapData:BitmapData = new BitmapData(blah, blah) bitmapData.draw(blah, matrix);

它的工作原理,當我在我的電腦運行良好,但是當我將其導出把它放在我的iphone上bitmapData是完全錯誤的,奇怪的是不合適的位置,通過我所有的測試,有時是不同的大小。

我想要做的事情非常簡單和容易,我只是不知道爲什麼它不在iPhone上工作。幫幫我!

回答

0

你如何創建矩陣?

試試這個:我已經找到了前一段時間......和改進有點...

/** create a bitmap from a displayObject */ 
    public static function toBitmap(value:DisplayObject, inverse:Boolean = true):Bitmap 
    { 
     // help: http://darylteo.com/blog/2006/12/17/bitmapdatadraw/ 

     var defaultMartix:Matrix = value.transform.matrix; 

     //Find occupied region 
     var region:Rectangle = new Rectangle(); 
     region = value.getBounds(value); 

     //Build Matrix Transform 
     var matrix:Matrix = new Matrix(1, 0, 0, 1, -region.x, -region.y); 

     value.transform.matrix = matrix; 

     var bmpData:BitmapData = new BitmapData(value.width, value.height, true, undefined); 
     bmpData.draw(value, matrix, null, null, null, true); 

     var bmp:Bitmap = new Bitmap(bmpData, "auto", true); 

     if (inverse) 
     { 
      //Re apply an Inverse Matrix 
      matrix = new Matrix(1, 0, 0, 1, region.x, region.y); 
      bmp.transform.matrix = matrix; 
     } 

     value.transform.matrix = defaultMartix; 

     return bmp; 
    }