从bytearray中加载图像

Javascript: loading image from bytearray

本文关键字:图像 加载 bytearray      更新时间:2023-09-26

在Javascript中,你有ByteArray类型和一些视图,如下所述:https://developer.mozilla.org/en-US/docs/JavaScript/Typed_arrays

是否可以将图像数据存储在这样的字节中,如果是,我如何显示这样的图像?PNG还是jpg?

是的,您可以使用类型化数组存储图像。

我不确定你到底想要什么。如果你想从ByteArray中创建一个HTMLImageElement,你可以做类似于这里和这里引用的事情。

如果您想从Image中获取字节,那就比较棘手了。您可以将ImageElement绘制到HTML画布上,然后使用toDataURL获取URI。

我只是试着用画布获取数据,它工作了。

var myCanvas = document.getElementById('my_canvas_id');
var ctx = myCanvas.getContext('2d');
var img = new Image;
img.onload = function(){
    myCanvas.width = img.width;
    myCanvas.height = img.height;
    ctx.drawImage(img,0,0); // Or at whatever offset you like
    alert(myCanvas.toDataURL());
};
img.src = "logo4w.png";

虽然,方法toDataURL()不允许您执行此操作,如果您在画布上绘制的图像来自网站域之外。