Javascript将图片字节转换为十六进制

Posted

技术标签:

【中文标题】Javascript将图片字节转换为十六进制【英文标题】:Javascript convert picture bytes to hex 【发布时间】:2012-10-11 08:58:35 【问题描述】:

我尝试通过画布将本地图像文件转换为字符串

imgData = canvas.toDataURL("image/jpeg");

但它只返回一个 Base64 编码的字符串。

有没有办法将图像二进制转换为十六进制字符串之类的

0x310000700008000400efbeee3a851a54...

然而就像 unpack('H*') 在 perl/ruby 中所做的那样。

【问题讨论】:

b64 字符串有什么问题?如果你解码它会发生什么?那不会给你二进制文件吗? 我想他可能的意思是他想要像pack/unpack这样的函数在perl之类的。 【参考方案1】:

http://phpjs.org/functions/base64_decode/ ... 一个类似于 base64_decodejavascript 函数 ... http://hpyer.cn/codes/jquery-plugin-base64-encode-and-decode 有一个 jQuery 插件

【讨论】:

【参考方案2】:

这是来自https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding

在JavaScript中有两个函数分别用于base64字符串的解码和编码:

atob()

btoa()

var encodedData = window.btoa("Hello, world"); // encode a string

var decodedData = window.atob(encodedData); // decode the string

encodedData = window.btoa("011110000100101"); //RESULT is "MDExMTEwMDAwMTAwMTAx"

OR(在 node.js 中)

fs = require('fs');
imgBuffer = fs.readFileSync('public/images/my_image_location.gif');
imgHex = imgBuffer.toString('hex');
console.log(imgHex)

【讨论】:

以上是关于Javascript将图片字节转换为十六进制的主要内容,如果未能解决你的问题,请参考以下文章

Java将字节数组转换为十六进制字节数组[重复]

如何通过SQL函数将7个字节的十六进制数据转换为十进制,找了一个函数转换四个字节的可以,7个就不行了

excel表格如何将十六进制转换成浮点数

如何将十六进制字符串转换为字节数组,以及十六进制字符串中的字节数组?

c语言中如何将十六进制转换成2个字节输出

C# 将字符转换为字节(十六进制表示)