我有一个像137,80,78,71,13,10,26,10,0这样的图像二进制数据作为字符串。 我想在html中显示它作为blob URL。 如何将二进制文件转换为blob URL。 我试过做这些,但我没有得到图像。
javascript代码
var binary = "137, 80, 78, 71, 13, 10, 26, 10, 0";
var blob = new Blob([binary], { type: 'image/png' });
var blobUrl = URL.createObjectURL(blob);
console.log(blobUrl);
document.getElementById("image").src = blobUrl;
HTML
<img id="image" />
你必须:
的src
属性中。var numbers = binary.trim().split(/\s*,\s*/g).map(x => x/1);
var binstr = String.fromCharCode(...numbers);
var b64str = btoa(binstr);
var src = 'data:image/jpeg;base64,' + b64str;
document.getElementById("image").src = src;
请记住,您必须使用正确的图像类型,例如jpeg,png等。
当你想要展示图像时,你必须做这样的事情:
var binary = "137, 80, 78, 71, 13, 10, 26, 10, 0";
document.getElementById("image").src = 'data:image/jpeg;base64,' + btoa(binary)
但我不确定你的二进制是否正确。