js获取图片的base64编码并压缩


Posted in Javascript onDecember 05, 2020

获取图片的base64编码

<!DOCTYPE html>
<html>
  <head>
    <meta charset="gbk">
    <title></title>
  </head>
  <body>
    <input accept="image/*" name="upimage" id="upload_file" type="file" onchange="gen_base64()">

 <br/>
    <textarea id="base64_output" name="Word" style=" width:820px"></textarea>


 <br/>


 <img src="" id="myImg" />
    <script type="text/javascript">
      function $_(id) {
          return document.getElementById(id);
      }
      function gen_base64() {
        var file = $_('upload_file').files[0];
        r = new FileReader(); //本地预览
        r.onload = function(){
          $_('base64_output').value = r.result;






 $_('myImg').src= r.result;
        }
        r.readAsDataURL(file);  //Base64
      }
    </script>
  </body>
</html>

案例2:js压缩图片

<html>
 <body>
 <script>
 function getUrl(fil) {
      var Cnv = document.getElementById('myCanvas');
      var Cntx = Cnv.getContext('2d');//获取2d编辑容器
      var imgss =  new Image();//创建一个图片
      var agoimg=document.getElementById("ago");
    
      for (var intI = 0; intI < fil.length; intI++) {//图片回显
        var tmpFile = fil[intI];
        var reader = new FileReader();
        reader.readAsDataURL(tmpFile);
        reader.onload = function (e) {
          url = e.target.result;
          imgss.src = url;
          agoimg.src=url;
          agoimg.onload = function () {
            //等比缩放
            var m = imgss.height / imgss.width;
             Cnv.width = 300 ;//该值影响缩放后图片的大小
             Cnv.height =300*m;
             
            //img放入画布中
            Cntx.drawImage(agoimg, 0, 0,300,300*m);
                     
//把画布中的数据,写出到某img的src里
            var Pic = document.getElementById("myCanvas").toDataURL("image/png");
            var imgs =document.getElementById("press");
            imgs.src =Pic ;
          }
        }
      }
    }
    
</script>
<input type="file" id="fileId" name="fileId" value="上传图片" hidefocus="true" onchange="getUrl(this.files);"/>   <br/>
<canvas id="myCanvas"   style="display: block" ></canvas>
old img::<img src="" alt="" id="ago" style="width: 500px;"/>
new img::<img src="" alt="" id="press"/>
</body>
</html>

效果图

js获取图片的base64编码并压缩

以上就是js获取图片的base64编码并压缩的详细内容,更多关于js 图片base64编码的资料请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
Jquery Ajax学习实例5 向WebService发出请求,返回泛型集合数据的异步调用
Mar 17 Javascript
重构Javascript代码示例(重构前后对比)
Jan 23 Javascript
JS检测输入字符是否包含非法字符的示例代码
Feb 11 Javascript
js实现键盘操作实现div的移动或改变的原理及代码
Jun 23 Javascript
jQuery可见性过滤器:hidden和:visibility用法实例
Jun 24 Javascript
Three.js学习之正交投影照相机
Aug 01 Javascript
json的结构与遍历方法实例分析
Apr 25 Javascript
JS实现快速比较两个字符串中包含有相同数字的方法
Sep 11 Javascript
解决vue中post方式提交数据后台无法接收的问题
Aug 11 Javascript
Vue.js 事件修饰符的使用教程
Nov 01 Javascript
bootstrap table列和表头对不齐的解决方法
Jul 19 Javascript
Vuex实现数据共享的方法
Dec 20 Javascript
js重写alert事件(避免alert弹框标题出现网址)
Dec 04 #Javascript
可拖拽组件slider.js使用方法详解
Dec 04 #Javascript
js实现复制粘贴的两种方法
Dec 04 #Javascript
echarts浮动显示单位的实现方法示例
Dec 04 #Javascript
JavaScript中条件语句的优化技巧总结
Dec 04 #Javascript
三剑客:offset、client和scroll还傻傻分不清?
Dec 04 #Javascript
简单谈谈offsetleft、offsetTop和offsetParent
Dec 04 #Javascript
You might like
基于mysql的论坛(6)
2006/10/09 PHP
PHP中的MYSQL常用函数(php下操作数据库必备)
2010/09/12 PHP
解析百度搜索结果link?url=参数分析 (全)
2012/10/09 PHP
PHP中使用foreach()遍历二维数组的简单实例
2016/06/13 PHP
PHP控制前台弹出对话框的实现方法
2016/08/21 PHP
php 实现一个字符串加密解密的函数实例代码
2016/11/01 PHP
浅析PHP中的闭包和匿名函数
2017/12/25 PHP
对采用动态原型方式无法展示继承机制得思考
2009/12/04 Javascript
JS数学函数Exp使用说明
2012/08/09 Javascript
jquery实现标签支持图文排列带上下箭头按钮的选项卡
2015/03/14 Javascript
jQuery中 delegate使用的问题
2015/07/03 Javascript
Hallo.js基于jQuery UI所见即所得的Web编辑器
2016/01/26 Javascript
微信小程序 网络API 上传、下载详解
2016/11/09 Javascript
Vue项目中quill-editor带样式编辑器的使用方法
2017/08/08 Javascript
Webpack 服务器端代码打包的示例代码
2017/09/19 Javascript
jQuery 防止相同的事件快速重复触发方法
2018/02/08 jQuery
Bootstrap Table列宽拖动的方法
2018/08/15 Javascript
vue 实现websocket发送消息并实时接收消息
2019/12/09 Javascript
es6 super关键字的理解与应用实例分析
2020/02/15 Javascript
JavaScript使用setTimeout实现倒计时效果
2021/02/19 Javascript
[35:44]2014 DOTA2华西杯精英邀请赛 5 24 iG VS VG
2014/05/26 DOTA
[07:06]2018DOTA2国际邀请赛寻真——卫冕冠军Team Liquid
2018/08/10 DOTA
Python进程通信之匿名管道实例讲解
2015/04/11 Python
python配置grpc环境
2019/01/01 Python
opencv resize图片为正方形尺寸的实现方法
2019/12/26 Python
CSS3 绘制BMW logo实的现代码
2013/04/25 HTML / CSS
英国在线滑雪板和冲浪商店:The Board Basement
2020/01/11 全球购物
如何查询Oracle数据库中已经创建的索引
2013/10/11 面试题
质检部部长职责
2013/12/16 职场文书
中西医专业毕业生职业规划书
2014/02/24 职场文书
难忘的一课教学反思
2014/04/30 职场文书
乡镇党委书记第三阶段个人整改措施
2014/09/16 职场文书
房产授权委托书范本
2014/09/22 职场文书
如何有效防止sql注入的方法
2021/05/25 SQL Server
使用tensorflow 实现反向传播求导
2021/05/26 Python
TV动画《间谍过家家》公开PV
2022/03/20 日漫