【问题标题】:Actionscript: image to base64 string possible?Actionscript:图像到 base64 字符串可能吗?
【发布时间】:2011-09-29 14:15:47
【问题描述】:

是否可以将选定的图像转换为base64编码的字符串?

对于图像上传器来说,这将是一个不错且简单的解决方案。 :)

谢谢 ;)

【问题讨论】:

    标签: flash actionscript


    【解决方案1】:

    您可以将图像保存为 Base64 字符串,但我不建议这样做。我已经尝试过这样做,但它会大大降低您的应用程序的速度。

    如果你仍然想这样做,你应该在这个链接下载 Base64 类:http://garry-lachman.com/2010/04/21/base64-encoding-class-in-actionscript-3/

    如果您随后从图像中获取 bitmapData,则可以调用 .getPixels() 方法,该方法返回一个字节数组。可以使用链接中的类将此字节数组转换为 Base64 字符串。

    如果您想从 Base64 字符串加载图像,您可以创建一个 Loader 对象并使用 loadBytes() 方法加载通过解码 Base64 字符串获得的 byteArray。

    希望这会有所帮助:)

    【讨论】:

      【解决方案2】:

      如果您想对加载图像的 byteArray 进行编码,可以使用 mx.utils Base64Encoder 中的 Base64Encoder 类。

      类似:

      var loader:Loader = new Loader();
      loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
      loader.load(new URLRequest("img.jpg"));
      
      function loadComplete(e:Event):void {
          loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, loadComplete);
          var bmd:BitmapData = Bitmap(e.target.content).bitmapData;
          var ba:ByteArray = bmd.getPixels(new Rectangle(0,0,bmd.width,bmd.height));
          var b64:Base64Encoder = new Base64Encoder();
          b64.encodeBytes(ba);
          trace(b64.toString());
      }
      

      我必须追踪班级here

      另外,我发现了另一个 Base64 类,但尚未测试 here...但看起来它的工作原理类似。

      希望对您有所帮助。

      【讨论】:

        猜你喜欢
        • 2019-01-27
        • 1970-01-01
        • 1970-01-01
        • 2013-09-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-04-11
        • 1970-01-01
        相关资源
        最近更新 更多