2013-05-27

Starling Texture 的限制

Starling framework 的 Texture 有 2048*2048 的大小限制,製作 Sprite sheet 記得不要超出這個大小。

Camera roll 裡的照片大多超出這個大小,載入後要先縮小。

   var bitmap:Bitmap = _loader.content as Bitmap;
   var bitmapData:BitmapData;
   var matrix:Matrix;
   var myScale:Number = 1;
   if(bitmap.width > 2048 || bitmap.height > 2048) {
    myScale = Math.min(2000/bitmap.width, 2000/bitmap.height);
    bitmapData = new BitmapData( int(bitmap.width*myScale), int(bitmap.height*myScale) );
    matrix = new Matrix;
    matrix.scale(myScale, myScale);
    bitmapData.draw(bitmap, matrix);
   } else {
    bitmapData = bitmap.bitmapData;
   }
   _texture = Texture.fromBitmapData(bitmapData);

沒有留言:

FB 留言