编程语言
首页 > 编程语言> > Javascript ActionScript:如何将从Actionscript返回的字节数组转换为Javascript中的图像

Javascript ActionScript:如何将从Actionscript返回的字节数组转换为Javascript中的图像

作者:互联网

我有通过外部接口调用从ActionScript返回到Javascript的字节数组.现在,我必须将此byteaarray转换为Javascript代码中的图像.请帮助…任何示例代码…

提前致谢…

解决方法:

我看到了针对此问题的两种可能的解决方案,但我都没有测试过,因此请尝试一下:

HTML5画布

首先,使用ActionScript将字节数组转换为整数数组.您将需要四个值用于:

>红色
>绿色
>蓝色
>阿尔法

使用字符串表示或纯数字将其传输到Javascript,然后将这些数字加载到画布中:

var canvasData = ; // data from actionscript
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
var imgData=ctx.createImageData(100,100);
for (var i=0;i<imgData.width*imgData.height*4;i+=4)
{
  imgData.data[i+0]=canvasData[i][0]; // red
  imgData.data[i+1]=canvasData[i][1]; // green
  imgData.data[i+2]=canvasData[i][2]; // blue
  imgData.data[i+3]=canvasData[i][3]; // alpha
}
ctx.putImageData(imgData,10,10);

通过CSS进行Base64编码

如果您不想依赖HTML5,请使用ActionScript将字节数组转换为base64字符串,然后使用以下css规则插入图像:

background-image: url(data:image/png;base64,__base64_data__);

并将__base64_data__替换为生成的字符串.这可以使用JQuery动态完成:

$('#img').css("background-image", "url(data:image/png;base64,__base64_data__)"); 

尽管实际性能将取决于图像大小,但这似乎比HTML5 Canvas更为有效.

标签:actionscript-3,javascript
来源: https://codeday.me/bug/20191101/1979995.html