JS 图片转Base64

JS 图片转Base64

有时候需要向HTML中插入一张图片,可苦于上线后找不到一个合适的网盘来存储这些图片,有没有一种办法能将图片转换成文字,然后直接插入HTML中呢,通过Base64编码就可以解决这个问题。

废话不多说直接上代码。不知道什么是Base64的请自行百度



图片转Base64 示例代码
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>JS 图片转Base64</title>
  6. <script src="//cdn.bootcss.com/jquery/2.2.0/jquery.min.js"></script>
  7. <script>
  8. function run(input_file,get_data){
  9. /*input_file:文件按钮对象*/
  10. /*get_data: 转换成功后执行的方法*/
  11. if ( typeof(FileReader) === ‘undefined‘ ){
  12. alert("抱歉,你的浏览器不支持 FileReader,不能将图片转换为Base64,请使用现代浏览器操作!");
  13. } else {
  14. try{
  15. /*图片转Base64 核心代码*/
  16. var file = input_file.files[0];
  17. //这里我们判断下类型如果不是图片就返回 去掉就可以上传任意文件
  18. if(!/image\/\w+/.test(file.type)){
  19. alert("请确保文件为图像类型");
  20. return false;
  21. }
  22. var reader = new FileReader();
  23. reader.onload = function(){
  24. get_data(this.result);
  25. }
  26. reader.readAsDataURL(file);
  27. }catch (e){
  28. alert(‘图片转Base64出错啦!‘+ e.toString())
  29. }
  30. }
  31. }
  32. $(function () {
  33. $("input").change(function () {
  34. run(this, function (data) {
  35. $(‘img‘).attr(‘src‘,data);
  36. $(‘textarea‘).val(data);
  37. });
  38. });
  39. });
  40. </script>
  41. </head>
  42. <body>
  43. <input type="file">
  44. <hr>
  45. <img style="max-height: 300px; height: 8em; min-width:8em;">
  46. <hr>
  47. <textarea style="display: block; width: 100%;height: 30em;"></textarea>
  48. </body>
  49. </html>

Base64图片的使用

Base64格式
data:[][;charset=][;base64],
Base64 在CSS中的使用
.demoImg{ background-image: url("data:image/jpg;base64,/9j/4QMZRXhpZgAASUkqAAgAAAAL...."); }
Base64 在HTML中的使用
<img width="40" height="30" src="data:image/jpg;base64,/9j/4QMZRXhpZgAASUkqAAgAAAAL...." />
时间: 2024-10-23 01:50:55

JS 图片转Base64的相关文章

js 图片转换为base64

<input id="file" type="file"> <img id="img" style="max-height: 300px;"> <textarea id="textarea" style="width: 100%;height: 300px;"></textarea> <script> $("#file

js 图片转换base64 base64转换为file对象

function getImgToBase64(url,callback){//将图片转换为Base64 var canvas = document.createElement('canvas'), ctx = canvas.getContext('2d'), img = new Image; img.crossOrigin = 'Anonymous'; img.onload = function(){ canvas.height = img.height; canvas.width = img

js图片转base64

/** * 将图片转换为Base64 */ function image2Base64(img) { var canvas = document.createElement("canvas"); canvas.width = img.width; canvas.height = img.height; var ctx = canvas.getContext("2d"); ctx.drawImage(img, 0, 0, img.width, img.height);

使用JS将图片转为Base64

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>JS 图片转Base64</title> <script src="//cdn.bootcss.com/jquery/2.2.0/jquery.min.js"></script> <script> function run(input_fil

JS上传图片-通过FileReader获取图片的base64

下面文章,我想要的是: FileReader这个对象,可以借助FileReader来获取上传图片的base64,就可以在客户端显示该图片了.同时,还可以把该图片的base64发送到服务端,保存起来. 在XMLHttpRequest Level2出台之前,大多数的异步上传图片都是利用iframe去实现的. 至于具体的实现细节,我就不在这边啰嗦的,Google一下就有文章谈这个东西. 这次主要说说,怎么用新的API去实现图片上传. 原标题:JavaScript怎么上传图片 首先,少不了的自然是XML

js,JQ 图片转换base64 base64转换为file对象

//将图片转换为Base64 function getImgToBase64(url,callback){ var canvas = document.createElement('canvas'), ctx = canvas.getContext('2d'), img = new Image; img.crossOrigin = 'Anonymous'; img.onload = function(){ canvas.height = img.height; canvas.width = im

JS获取图片的base64编码

获取图片的base64编码 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <input accept="image/*" name="upimage" id="upload_file" type="

js压缩上传图片base64长度

im发送图片,现将图片压缩再上传 1) 调用 FileReader 的 reader.readAsDataURL(img); 方法, 在其onload事件中, 将用户选择的图片读入 Image对象. 2) 在image对象的 onload 事件中, 通过 canvas 的 canvas.getContext('2d') 的 drawImage 方法, 将Image 改变大小绘制到canvas上. 3) 通过 canvas.toDataURL("image/jpeg", 1); 方法,

node 图片转base64

抓取网络图片需要加载http模块 //假定这是index.js文件 var http = require('http'); var url = 'http://p0.meituan.net/tuanpic/3df525af5a3f7fe04077567d2a6caf794904.png';  //一张网络图片 http.get(url,function(res){ var chunks = []; //用于保存网络请求不断加载传输的缓冲数据 var size = 0; //保存缓冲数据的总长度