javascript - 如何将二进制数据显示为图像 - extjs 4

标签 javascript ajax extjs extjs4

这是有效 .JPEG 图像的二进制文件。
http://pastebin.ca/raw/2314500

我尝试使用Python将此二进制数据保存到图像中。

如何使用 extjs 4 将此数据转换为可查看的 .JPEG 图像?

我试过了,但没用。

data:image/jpeg;base64,+ binary data

最佳答案

需要将其转换为base64。

JS 有 btoa() 函数。

例如:

var img = document.createElement('img');
img.src = 'data:image/jpeg;base64,' + btoa('your-binary-data');
document.body.appendChild(img);

但我认为您在pastebin中的二进制数据无效 - jpeg数据必须以“ffd9”结束。

更新:

需要编写简单的十六进制到base64转换器:

function hexToBase64(str) {
    return btoa(String.fromCharCode.apply(null, str.replace(/\r|\n/g, "").replace(/([\da-fA-F]{2}) ?/g, "0x$1 ").replace(/ +$/, "").split(" ")));
}

并使用它:

img.src = 'data:image/jpeg;base64,' + hexToBase64('your-binary-data');

请参阅 jsfiddle 上的十六进制数据的工作示例

关于javascript - 如何将二进制数据显示为图像 - extjs 4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14915058/

相关文章:

javascript - 在 html div 中呈现 ExtJS 4+ MVC 应用程序 - 如何做?

php - JavaScript 和 PHP 中的 Web 服务之间的安全通信

ajax - Ajax 调用的 IBM Commerce SEO URL 问题

javascript - Node 需要目录而不是特定文件

php - 在命令运行时从 shell_exec 命令获取输出

c# - 将数据从 C# 返回到 jQuery UI 自动完成

javascript - 如果加载失败,是否有更好的方法在 app.js 脚本标记上添加 onerror 回调?

php - 如何设计用于跟踪具有设置最大项目的订单的数据库

javascript - Angular http GET 循环使用新的 URL 作为响应

javascript - JS/jQuery 适合 div 内的所有图像(无空格)