zoukankan      html  css  js  c++  java
  • 图片与二进制及字符相互换化(转)

    把图片转化为二进制或字符串,用于在网络中发送与存储数据.

    一:图片转字符

    过程:DisplayObject>bitmapData>ByteArray>Base64>String

    把图片转化为二进制或字符,使用AS3自带的JPEGEncoder和PNGEncoder,其中JPEG格式就算使用100%的品质在还原时还是失真得比较严重.

    下面是把位图的bitmapData数据转化为二进制数据,再输出成字符串形式.

    As代码
    ar bitmapData:BitmapData = new BitmapData(image.width,image.height);              
    bitmapData.draw(image);
    //转化为BitmapData数据         
    var encoder:PNGEncoder = new PNGEncoder();//也可以使用JPEG格式 new JPEGEncoder(100)       
    var bytes:ByteArray=encoder.encode(bitmapData);//转化为二进制数据         
    var Base64:Base64Encoder=new Base64Encoder;//将字符串或 ByteArray 编码为 Base64 编码的字符串。       
    var imageStr:String=Base64.toString();//输出为字符串 

    二:字符转图片

    过程:String>Base64>ByteArray>Bitmap>DisplayObject

    还原时,先使用Base64Decoder转为Base64编码的ByteArray,再用Loader对象来读取为Bitmap,完成还原过程.

    As代码
    var spr:Sprite=new Sprite;    
    var Base64:Base64Decoder=new Base64Decoder;    
    Base64.decode(imageStr);
    //读取字符串    
    var bytes:ByteArray=Base64.toByteArray();//转化为ByteArray数据    
    var load:Loader=new Loader();    
    load.loadBytes(bytes);
    //读取ByteArray    
    load.contentLoaderInfo.addEventListener(Event.COMPLETE, complete);    
    function complete(event:Event):void {    
        var bitMap:Bitmap=event.target.content as Bitmap;//读取Bitmap    
        spr.addChild(bitMap);    
    }  
  • 相关阅读:
    python网页内容提取神器lxml
    tf–idf算法解释及其python代码
    刷搜索刷下拉框原理
    python爬取全站壁纸代码
    刷百度相关搜索发包参数详解
    Python3 if 变量variable SQL where 语句拼接
    python抓取网站提示错误ssl.SSLCertVerificationError处理
    Windows中的txt文件到Mac打开是乱码 解决办法
    python移动目录下所有子目录文件到新的总目录
    Spring Boot
  • 原文地址:https://www.cnblogs.com/taobataoma/p/1588577.html
Copyright © 2011-2022 走看看