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 清空file域示例(兼容个浏览器)
Oct 11 Javascript
Checbox的操作含已选、未选及判断代码
Nov 07 Javascript
js实现简单计算器
Nov 22 Javascript
详解Javascript模板引擎mustache.js
Jan 20 Javascript
基于javascript实现简单的抽奖系统
Apr 15 Javascript
原生js实现网易轮播图效果
Apr 10 Javascript
Bootstrap CSS组件之按钮组(btn-group)
Dec 17 Javascript
简单理解js的冒泡排序
Dec 19 Javascript
js正则相关知识点专题
May 10 Javascript
GOJS+VUE实现流程图效果
Dec 01 Javascript
Vue 实现简易多行滚动&quot;弹幕&quot;效果
Jan 02 Javascript
Vue仿百度搜索功能
Dec 28 Vue.js
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
PHP命名空间(Namespace)简明教程
2014/06/11 PHP
kohana框架上传文件验证规则写法示例
2014/07/14 PHP
PDO防注入原理分析以及使用PDO的注意事项总结
2014/10/23 PHP
php实现图片文件与下载文件防盗链的方法
2014/11/03 PHP
php封装的page分页类完整实例
2016/10/18 PHP
laravel框架中控制器的创建和使用方法分析
2019/11/23 PHP
两个select之间option的互相添加操作(jquery实现)
2009/11/12 Javascript
AngularJS轻松实现双击排序的功能
2016/08/30 Javascript
HTML5 canvas 9绘制图片实例详解
2016/09/06 Javascript
vue.js利用defineProperty实现数据的双向绑定
2017/04/28 Javascript
angularjs2中父子组件的数据传递的实例代码
2017/07/05 Javascript
vue src动态加载请求获取图片的方法
2018/10/17 Javascript
Element Table的row-class-name无效与动态高亮显示选中行背景色
2018/11/30 Javascript
JavaScript常见事件对象与操作实例总结
2019/01/05 Javascript
Vue proxyTable配置多个接口地址,解决跨域的问题
2020/09/11 Javascript
浅析微信小程序自定义日历组件及flex布局最后一行对齐问题
2020/10/29 Javascript
python时间整形转标准格式的示例分享
2014/02/14 Python
Python使用multiprocessing实现一个最简单的分布式作业调度系统
2016/03/14 Python
Django查询数据库的性能优化示例代码
2017/09/24 Python
Python处理中文标点符号大集合
2018/05/14 Python
Python操作mongodb数据库的方法详解
2018/12/08 Python
Python 20行简单实现有道在线翻译的详解
2019/05/15 Python
python 根据列表批量下载网易云音乐的免费音乐
2020/12/03 Python
pycharm 复制代码出现空格的解决方式
2021/01/15 Python
CPB肌肤之钥美国官网:Clé de Peau Beauté
2017/09/05 全球购物
英国领先的豪华时尚家居网上商店:Amara
2019/08/12 全球购物
正宗的日本零食和糖果订阅盒:Bokksu
2019/11/21 全球购物
食品营养与检测应届生求职信
2013/11/08 职场文书
酒店销售经理岗位职责
2014/01/31 职场文书
六年级数学教学反思
2014/02/03 职场文书
物业保安员岗位职责
2014/03/14 职场文书
慈善捐赠倡议书
2014/08/30 职场文书
给女朋友的道歉短信
2015/05/12 职场文书
大学毕业论文致谢词
2015/05/14 职场文书
使用qt quick-ListView仿微信好友列表和聊天列表的示例代码
2021/06/13 Python
Win10此设备不支持接收Miracast无法投影的解决方法
2022/07/07 数码科技