二进制地图加载

我把一个 最初jpg图片 二进制数据的头取下固定字节存到我的flash程序里,  然后把这个图片剩下的部分二进制数据存放到数据库里面,当我需要这张图片时,我就从数据库里把这张图片 以二进制方式 下载到程序里,然后再加上程序里存放的固定头部,得到最初图片的二进制字节数组,然后我怎么把这个字节数组转换成最原先的图片呢?附代码如下:

//发出请求
           var url;
        url = “请求文件的网络路径,对不起不能公开,请谅解”;
        trace(url);
                                
        var loader:URLLoader = new URLLoader();
        loader.dataFormat = URLLoaderDataFormat.BINARY;
        loader.addEventListener(Event.COMPLETE,loadBackComplete);
        loader.addEventListener(IOErrorEvent.IO_ERROR, backIoErrorHandler);
        loader.load(new URLRequest(url));
        trace("back request is over");


//请求得到数据
private function loadBackComplete( evt:Event ) {
         //1 能得到数据,并且是对的                
        var imgbyte:ByteArray = URLLoader(evt.target).data as ByteArray;

        var backimgbyte = A.creatImg(imgbyte,jpghead0);     
               //2 把头部(jpghead0 这个是固定头部字节数组)和身体拼起来,这是我自己写的拼字节的函数
           trace(backimgbyte ); //到这里也是对的
        
                 backimgbyte.position = 0; 
                 //3 把字节数组的指针位置归零

        var bmd:BitmapData = new BitmapData(20,30,true,0); 
                // 4  宽高是固定的,32位支持alpha通道的位图,
        bmd.setPixels(bmd.rect, backimgbyte); // 5

        var bm:Bitmap = new Bitmap(bmd); //6

        backImg.bitmapData = bm.bitmapData;    //7    backImg 是我最终需要的东西                        
}


从 得到二进制数据后 到我 转换 的过程中,哪里出错了? 请大侠不吝赐教,先感谢下一来看我问题的会友们。。。
Loader有个loadBytes方法,作用就是讲二进制数据转为bitmap(前提是那二进制数据是图片)
你把你的图片头和其余部分先拼接起来,然后用这个方法转成图片。

转载于:https://www.cnblogs.com/chenhongyu/p/3296365.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值