使用javascript从服务器加载到图像的二进制图像

前端之家收集整理的这篇文章主要介绍了使用javascript从服务器加载到图像的二进制图像前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我通过 XMLHttpRequest以二进制格式从我的服务器加载jpeg图像(我需要这样).它不是base64编码.

有可能把它变成一个img对象与javascript?

谢谢

解决方法

如果XMLHttpRequest的字符编码已设置为 something that won’t change the binary data,或者您已经有 set the response type,则可以通过btoa(将其放在base64中,并将其分配为数据URI)或访问.response作为二进制数据,然后运行.responseText,分别.

假设你的实例被命名为xhr,而你正在使用xhr.send之前但在xhr.open之后的charset方法

xhr.overrideMimeType("text/plain; charset=x-user-defined");

那么当你200的时候

var dataURI = 'data:image/jpeg;base64,' + btoa(xhr.responseText);

然后您可以将其设置为< img>的src.

再次假设xhr,这个时候.response方法;在.open和.send之间

xhr.responseType = "arraybuffer";

然后在200 OK

var arrayBufferView = new Uint8Array(xhr.response),// can choose 8,16 or 32 depending on how you save your images
    blob = new Blob([arrayBufferView],{'type': 'image\/jpeg'}),objectURL = window.URL.createObjectURL(blob);

然后您可以将其设置为< img>的src. Example

原文链接:https://www.f2er.com/js/151920.html

猜你在找的JavaScript相关文章