zoukankan      html  css  js  c++  java
  • 将url转化成file文件

     

            let img = "https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=508387608,2848974022&fm=26&gp=0.jpg"; //imgurl 就是你的图片路径
            let image = new Image();
            image.src = img;
            let self = this;
            image.setAttribute("crossOrigin", "Anonymous");
            image.onload = function () {
              var base64 = self.getBase64Image(image);
              // document.getElementById("img")['src'] = base64;
              var formData = new FormData();
              //转换base64到file
              var file = self.btof(base64, "test");
              console.log(file);
              file.url = self.initForm["coverUrl"];
              self.fileList.push(file);
              console.log(file)
              formData.append("imageName", file);
            };
     /** url 转换成img */
      getBase64Image(img): any {
        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);
        var ext = img.src.substring(img.src.lastIndexOf(".") + 1).toLowerCase();
        var dataURL = canvas.toDataURL("image/" + ext);

        return dataURL;
      }
      btof(data, fileName) {
        const dataArr = data.split(",");
        const byteString = atob(dataArr[1]);

        const options = {
          type: "image/jpeg",
          endings: "native"
        };
        const u8Arr = new Uint8Array(byteString.length);
        for (let i = 0; i < byteString.length; i++) {
          u8Arr[i] = byteString.charCodeAt(i);
        }
        return new File([u8Arr], fileName + ".jpg", options);
      }
    亲测有效,但是你的服务器地址得设置可以跨域,否则toDataUrl不能使用
  • 相关阅读:
    PHP chop() 函数
    PHP bin2hex() 函数
    多个表关联或者有视图套视图,快速检查SQL语句中所有的表统计信息是否过期
    洛谷P3628 [APIO2010]特别行动队 斜率优化
    洛谷P3195 [HNOI2008]玩具装箱TOY 斜率优化
    bzoj4282 慎二的随机数列 树状数组求LIS + 构造
    校园网 入读统计 + 性质分析
    HAOI2006 受欢迎的牛 缩点
    普通平衡树 Treap
    洛谷P1563 玩具谜题 简单模拟
  • 原文地址:https://www.cnblogs.com/qingcui277/p/12409559.html
Copyright © 2011-2022 走看看