在javascript中转换base64字符串中的图像?

时间:2012-10-23 15:40:21

标签: javascript html base64

我有带有ENCTYPE =“multipart / form-data”的html表单。它只包含“file”类型的文本框,它从本地浏览文件 box.Here是文本框代码段

<td>
    <input name="fileNameAttr" id="filePath" size="52" type="file" value="">
</td>

我从本地框中浏览文件一些图像文件。在我选择文件的那一刻,filePath会在文本框中填充。 现在点击某个按钮,我想在javascript中将图像转换为base64字符串。 我没有使用HTML5。我可以在javascript中实现吗?

我可以使用HTML5在网上看到一些解决方案,但这并不能解决我的目的。如果我需要使用某些第三方实用程序,我可以这样做。

编辑: - 看起来像jquery可以帮助$ .base64.encode(“这是一个测试”);但如何使用type =“file”?

2 个答案:

答案 0 :(得分:3)

这可以通过HTML5 <canvas>为它完成

如果您有node.js作为选项 然后  在img中尝试类似的东西

<img src="data:image/png;base64,jkasfhsdjkhsadf" />

例如

var fs = require('fs');
var base64_data = new Buffer(fs.readFileSync('sample.png')).toString('base64');
console.log('<img alt="sample" src="data:image/png;base64,' + base64_data + '">');

检查这个(也是示例来源)

Data URI scheme

好读

  1. How can you encode to Base64 using Javascript? // for for image

答案 1 :(得分:1)

如果您可以通过javascript访问本地文件系统,那么什么会阻止您阅读密码文件或其他私人数据?

这是你无法做到的,并且由于显而易见的原因,它将来不会也不会被允许!