图片切割类

        flash工作大部分的时间都跟如何显示图片打交道,flash8已经有了BitmapData类,通过这个类我们可以用程序动态的切割倒入的图片,非常实用的一个类库。
  1. package org.geom { 
  2. import flash.display.BitmapData; 
  3. import flash.display.Bitmap 
  4. import flash.display.MovieClip; 
  5. import flash.geom.Rectangle; 
  6. import flash.utils.ByteArray; 
  7. public class BitmapDataFormat extends MovieClip {
  8.  public function BitmapDataFormat() { } 
  9. //切割图片 
  10. public static function format(bitmapData:BitmapData, pieceW:Number, pieceH:Number):Array { 
  11.       var _w:Number = bitmapData.width 
  12.       var _h:Number = bitmapData.height 
  13.       var pieceBox:Array = [] 
  14.      for (var i:Number = pieceW; i<= _w; i+=pieceW) {
  15.          for (var j:Number = pieceH; j<=_h ; j+=pieceH) {
  16.               var tempRec:Rectangle = new Rectangle(i-pieceW,j-pieceH,pieceW,pieceH); 
  17.            bitmapData.lock(); 
  18.            var tempColor:ByteArray = bitmapData.getPixels(tempRec);
  19.            var bmd:BitmapData = new BitmapData(pieceW, pieceH, true, 0x00FFFF); 
  20.            tempColor.position = 0; 
  21.            bmd.setPixels(new Rectangle(0, 0, pieceW, pieceH), tempColor); 
  22.            var bm:Bitmap =new Bitmap(bmd);
  23.            bm.x = i-pieceW; 
  24.            bm.y = j-pieceH; 
  25.            pieceBox.push(bm) } } 
  26.            return pieceBox } 
  27.        /*//ByteArray * 实例,注意这个地方pieceW和pieceH跟长和宽的倍数关系      
  28.           function symbol(){ 
  29.                 var _w:Number = bitmapData.width 
  30.                 var _h:Number = bitmapData.height 
  31.                 var pieceW:Number=_w/10 
  32.                 var pieceH:Number=_h/10 
  33.                 BitmapDataFormat.format(bitmapData, pieceW, pieceH) 
  34.         }  */
  35.  } }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值