var xhr = new XMLHttpRequest();
xhr.open('GET', 'http://static.reddit.com/reddit.com.header.png', true);
xhr.responseType = 'arraybuffer';
xhr.onload = function(e) {
if (this.status == 200) {
var uInt8Array = new Uint8Array(this.response);
var byte3 = uInt8Array[4];
var bb = new WebKitBlobBuilder();
bb.append(xhr.response);
var blob = bb.getBlob('image/png');
var base64 = window.btoa(blob);
alert(base64);
}
};
xhr.send();
基本上,我在这里尝试做的是检索图像,并将其转换为base64。
通过阅读这里的评论,它说“当然。在将资源作为ArrayBuffer获取后,从中创建一个blob。一旦你有了,你可以直接对文件/ blob进行base64编码(window.btoa())或FileReader。 readAsDataURL()“。
然而,blob只是[对象blob],而我需要从图像中获取二进制文件,以便我可以将其转换为base64并使用数据将其显示在img标记中:
谁知道如何实现这一目标?
先感谢您!
眼眸繁星
相关分类