• 根据网络url地址,拿到网络图片的base64


    根据网络url地址,拿到网络图片的base64.

    网上找的那些玩意儿,base64不能解析为图片,还是下面这个靠谱

    <html>
    <head>
        <script src="jquery-3.3.1.js"></script>
        <script src="http://html2canvas.hertzen.com/dist/html2canvas.js" type="text/javascript"></script>
    </head>
    <body>
      <script>
          window.onload=function(){
              var fileName = "https://res.study.itaojin.cn/2020-04/eb1f330aab9b4fada4f8d6602dea251b.png"
              getBase64(fileName);
          }
    
          //    var imgSrc = "img/1.jpg";
          function getBase64(img){//传入图片路径,返回base64
              var image = new Image();
              image.crossOrigin = '';
              image.src = img;
              var deferred=$.Deferred();
              if(img){
                  image.onload =function (){
                      var data = getBase64Image(image);
                      console.log(data);
                      document.getElementById("ID").src = data;
                      deferred.resolve(data);//将base64传给done上传处理
                  }
                  return deferred.promise();//问题要让onload完成后再return sessionStorage['imgTest']
              }
          }
    
          function getBase64Image(img,width,height) {//width、height调用时传入具体像素值,控制大小 ,不传则默认图像大小
              var canvas = document.createElement("canvas");
              canvas.width = width ? width : img.width;
              canvas.height = height ? height : img.height;
    
              var ctx = canvas.getContext("2d");
              ctx.drawImage(img, 0, 0, canvas.width, canvas.height);
              var dataURL = canvas.toDataURL();
              return dataURL;
          }
    
      </script>
    
        <img id="ID" src=""/>
    
    </body>
    </html>

    下面这个用于:js下载图片

    function downloadForJS(){
              var ele = document.getElementById("ID");
              var fileName = "https://res.study.itaojin.cn/2020-04/eb1f330aab9b4fada4f8d6602dea251b.png"
    
              //使用html2canvas 转换html为canvas
              html2canvas(ele).then(function(canvas) {
                if(false){ //判断IE下保存方法
                    var blob = canvas.msToBlob();
                    window.navigator.msSaveBlob(blob, fileName);
                }else{//其他浏览器保存方法
                    var saveLink = document.createElement( 'a');
                    saveLink.href = imgData;
                    saveLink.download = img;
                    saveLink.click();
                }
            });
     }

    以上俩代码合二为一:

    <html>
    <head>
        <script src="jquery-3.5.1.js"></script>
        <script src="http://html2canvas.hertzen.com/dist/html2canvas.js" type="text/javascript"></script>
    </head>
    <body>
      <script>
          window.onload=function(){
              var fileName = "https://res.study.itaojin.cn/2020-04/eb1f330aab9b4fada4f8d6602dea251b.png"
              getBase64(fileName);
          }
    
          //    var imgSrc = "img/1.jpg";
          function getBase64(img){//传入图片路径,返回base64
              var image = new Image();
              image.crossOrigin = '';
              image.src = img;
              var deferred=$.Deferred();
              if(img){
                  image.onload =function (){
                      var data = getBase64Image(image);
                      console.log(data);
                      document.getElementById("ID").src = data;
                      deferred.resolve(data);//将base64传给done上传处理
    
                      var ele = document.getElementById("ID");
                      var fileName = "https://res.study.itaojin.cn/2020-04/eb1f330aab9b4fada4f8d6602dea251b.png"
                      debugger
                      //使用html2canvas 转换html为canvas
                      html2canvas(ele).then(function(canvas) {
                          debugger
                          if(false){ //判断IE下保存方法
                              var blob = canvas.msToBlob();
                              window.navigator.msSaveBlob(blob, fileName);
                          }else{//其他浏览器保存方法
                              var saveLink = document.createElement( 'a');
                              saveLink.href = data;
                              saveLink.download = data;
                              saveLink.click();
                          }
                      });
    
                  }
                  return deferred.promise();//问题要让onload完成后再return sessionStorage['imgTest']
              }
          }
    
          function getBase64Image(img,width,height) {//width、height调用时传入具体像素值,控制大小 ,不传则默认图像大小
              var canvas = document.createElement("canvas");
              canvas.width = width ? width : img.width;
              canvas.height = height ? height : img.height;
    
              var ctx = canvas.getContext("2d");
              ctx.drawImage(img, 0, 0, canvas.width, canvas.height);
              var dataURL = canvas.toDataURL();
              return dataURL;
          }
    
      </script>
    
        <img id="ID" src=""/>
    
    </body>
    </html>
  • 相关阅读:
    How to Use the UTL_MAIL Package
    ORA-32001: 已请求写入 SPFILE, 但是在启动时未指定 SPFILE
    2.4 批量下达车间任务平台
    2.3 改装及返修任务管理
    2.2 生产外协管理
    2.1 车间排产与生产备料
    1.15 计划分析-订单与预测差异比较
    1.14 计划分析-两周订单变更比较
    1.13 生产计划的调整与维护
    1.12 售后配件需求与计划生产衔接
  • 原文地址:https://www.cnblogs.com/xiaoliu66007/p/14375716.html
Copyright © 2020-2023  润新知