婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > html5中如何將圖片的絕對路徑轉換成文件對象

html5中如何將圖片的絕對路徑轉換成文件對象

熱門標簽:鄭州電銷外呼系統違法嗎 中紳電銷智能機器人 跟電銷機器人做同事 漳州人工外呼系統排名 濟南辦理400電話 鶴壁手機自動外呼系統怎么安裝 農村住宅地圖標注 ai電銷機器人連接網關 威海營銷外呼系統招商

本文介紹了html5中將圖片的絕對路徑轉換成文件對象,分享給大家,具體如下:

將圖片的絕對路徑轉換成base64編碼,請看這篇文章

我們先來理解基本知識點:

1. 理解HTML5中的FileList對象與file對象。

在HTML5中,FileList對象表示用戶選擇的文件列表。通過添加multipe屬性,file控件內允許一次選擇多個文件。控件內的每一個用戶選擇的文件都是一個file對象,而FileList對象則是file對象的列表。代表用戶選擇的所有文件。我們先來看一個簡單的demo,看下file文件對象有哪些屬性。如下代碼:

<!DOCTYPE html>
<html>
  <head>
    <title>filesystem:URL</title>
  </head>
  <body>
    <div>
      <label>選擇:</label>
      <input type='file' multiple id="file" />
      <input type="button" value="文件上傳" onClick="showFile()" />
    </div>
    <script>
      function showFile() {
        var files = document.getElementById('file').files;  // 返回所有被選擇的文件
        for (var i = 0, ilen = files.length; i < ilen; i++) {
          // 打印出單個文件對象的信息
          console.log(files[i]);
          /*  
           * 打印的信息如下:
           File {
            lastModified: 1457946612000
            lastModifiedDate: Mon Mar 14 2016 17:10:12 GMT+0800 (CST) {}
            name: "test.html"
            size: 796
            type: "text/html"
            webkitRelativePath: "" 
          */
          /*  如果上傳的是一張圖片的話,會返回如下信息的
            File {
              lastModified: 1466907500000
              lastModifiedDate: Sun Jun 26 2016 10:18:20 GMT+0800 (CST) {}
              name: "a.jpg"
              size: 23684
              type: "image/jpeg"
              webkitRelativePath: ""
            }
          */
          /*
           因此 如果需要判斷該上傳的文件是不是圖像文件的話,可以根據type類型來判斷如下:
           var file = files[i];
           if (!/image\/\w+/.test(file.type)) {
              console.log('該文件不是圖像文件');
           } else {
              console.log('該文件是圖像文件');
           }

           但是如果只讓傳圖片的話,可以在image控件添加一個屬性 accept="image/*" 即可;我們可以如下寫代碼:
           <input type='file' multiple accept = 'image/gif,image/jpeg,image/jpg,image/png' />
           */
        }
      }
    </script>
  </body>
</html>

2. 理解Blob對象

要點:在HTML5中,新增一個Blob對象,代表原始二進制數據,其實file對象也是繼承了Blob對象。

Blob對象有兩個屬性,size屬性表示一個Blob對象的字節長度,type屬性表示Blob的MIME類型,如果是未知類型,則返回一個空字符串。

請看如下代碼:

<!DOCTYPE html>
<html>
  <head>
    <title>filesystem:URL</title>
  </head>
  <body>
    <div>
      <label>選擇文件:</label>
      <input type="file" id="file" />
      <input type="button" value="顯示文件信息" onClick="showFileType()" />
      <p>文件字節長度: <span id="size"></span></p>
      <p>文件類型:<span id="type"></span></p>
    </div>
    <script>
      function showFileType() {
        var file;
        // 獲取用戶選擇的第一個文件
        file = document.getElementById('file').files[0];
        var size = document.getElementById('size');
        var type = document.getElementById('type');
        // 顯示文件字節的長度
        size.innerHTML = file.size;
        // 顯示文件的類型
        type.innerHTML = file.type;

        // 打開控制臺 查看返回的file對象
        console.log(file);
      }
    </script>
    
  </body>
</html>

注意:Blob和File是可以同時使用的,可以使用FileReader從Blob中讀取數據。

下面是一段絕對路徑的圖片地址轉換為base64編碼的圖片,然后將base64編碼的圖片轉換成blob對象。代碼如下:

<!DOCTYPE html>
<html>
  <head>
    <title>將以base64的圖片url數據轉換為Blob</title>
  </head>
  <body>
    <script>
      /**  
       * 將以base64的圖片url數據轉換為Blob  
       * @param urlData  
       * 用url方式表示的base64圖片數據  
       */  
      function convertBase64UrlToBlob(base64){ 
        var urlData =  base64.dataURL;
        var type = base64.type;
        var bytes = window.atob(urlData.split(',')[1]); //去掉url的頭,并轉換為byte
        //處理異常,將ascii碼小于0的轉換為大于0  
        var ab = new ArrayBuffer(bytes.length);  
        var ia = new Uint8Array(ab);  
        for (var i = 0; i < bytes.length; i++) {  
            ia[i] = bytes.charCodeAt(i);  
        }  
        return new Blob( [ab] , {type : type});  
      }
      /* 
       * 圖片的絕對路徑地址 轉換成base64編碼 如下代碼: 
       */
      function getBase64Image(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);
        var ext = img.src.substring(img.src.lastIndexOf(".")+1).toLowerCase();
        var dataURL = canvas.toDataURL("image/"+ext);
        return {
          dataURL: dataURL,
          type: "image/"+ext
        };
      }
      var img = "https://img.alicdn.com/bao/uploaded/TB1qimQIpXXXXXbXFXXSutbFXXX.jpg";
      var image = new Image();
      image.crossOrigin = '';
      image.src = img;
      image.onload = function(){
        var base64 = getBase64Image(image);
        console.log(base64);
        /*
         打印信息如下:
         {
          dataURL: "data:image/png;base64,xxx"
          type: "image/jpg"
         }
         */
        var img2 = convertBase64UrlToBlob(base64);
        console.log(img2);
        /*
         打印信息如下:
         Blob {size: 9585, type: "image/jpg"}
         */
      } 
    </script>
  </body>
</html>

注意:在HTML5中,新增一個Blob對象,代表原始二進制數據,其實file對象也是繼承了Blob對象。因此我們可以使用圖片的絕對地址轉換成文件對象。

因此我們可以使用絕對地址的圖片轉換成file文件對象,詳細的demo可以看我git上圖片上傳控件,該插件先是圖片上傳支持,然后突然發現到編輯頁面的時候,需要顯示默認的圖片,也可以同時支持在默認顯示圖片的情況下繼續上傳新圖片,或者刪除所有的圖片,但是開發人員給我的只有圖片的絕對地址,所以就一直想通過圖片的絕對地址如何轉換成file對象,如果不轉成file對象的話,使用這句代碼的時候 var reader = new FileReader(); 會報錯,因此可以使用我們上面講的blob對象先轉換成blob對象,然后就可以使用文件操作對象 fileReader。

詳細的代碼,請看我git上的 圖片上傳控件(https://github.com/tugenhua0707/html5UploadImage) , 效果查看 https://tugenhua0707.github.io/html5UploadImage/index.html

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:營口 萍鄉 蘇州 咸陽 文山 惠州 甘南 紅河

巨人網絡通訊聲明:本文標題《html5中如何將圖片的絕對路徑轉換成文件對象》,本文關鍵詞  html5,中,如何,將,圖片,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《html5中如何將圖片的絕對路徑轉換成文件對象》相關的同類信息!
  • 本頁收集關于html5中如何將圖片的絕對路徑轉換成文件對象的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    一区二区三区日本| 国产精品乱码一区二三区小蝌蚪| av成人动漫在线观看| 国产成人综合亚洲网站| 国产精品12区| 91亚洲精华国产精华精华液| 91麻豆国产在线观看| 91精品办公室少妇高潮对白| 在线观看av一区二区| 欧美精品三级在线观看| 91精品福利在线一区二区三区| 日韩手机在线导航| 精品国产3级a| 综合欧美亚洲日本| 亚洲成人精品在线观看| 日韩精品电影在线观看| 久久 天天综合| www.欧美亚洲| 欧美日韩精品免费观看视频| 日韩一级高清毛片| 中文字幕的久久| 亚洲综合在线视频| 欧美a级理论片| 国产成人精品免费一区二区| 一本一道综合狠狠老| 91精品欧美久久久久久动漫| 2017欧美狠狠色| 亚洲乱码国产乱码精品精98午夜 | 一区二区三区不卡视频| 日韩黄色免费电影| 丁香婷婷综合网| 欧美日韩成人综合| 欧美国产精品一区二区三区| 亚洲国产欧美在线人成| 高清国产一区二区三区| 欧美性xxxxx极品少妇| 久久精品视频一区二区| 一区二区在线观看av| 国产一区欧美二区| 欧美三级在线看| 中文一区在线播放| 免费成人在线观看视频| 欧美亚洲一区三区| 国产精品久久久久aaaa| 免费高清不卡av| 欧美日韩五月天| 亚洲欧美欧美一区二区三区| 老司机精品视频线观看86| 色又黄又爽网站www久久| 久久综合色综合88| 日本成人超碰在线观看| 91久久精品一区二区三区| 久久久噜噜噜久久中文字幕色伊伊| 亚洲电影视频在线| 91蜜桃免费观看视频| 国产日韩欧美一区二区三区综合| 日本大胆欧美人术艺术动态| 欧美性色欧美a在线播放| 中文子幕无线码一区tr| 国产很黄免费观看久久| 久久久久久久免费视频了| 欧美aaaaaa午夜精品| 欧美精品99久久久**| 亚洲444eee在线观看| 欧美日韩一区三区四区| 亚洲图片欧美综合| 欧美日韩你懂得| 五月激情六月综合| 欧美日本韩国一区| 秋霞电影一区二区| 日韩欧美精品在线| 国产一区二区三区久久久| 久久日韩粉嫩一区二区三区| 激情综合网激情| 亚洲精品一区二区三区99| 久久aⅴ国产欧美74aaa| 精品第一国产综合精品aⅴ| 狠狠久久亚洲欧美| 久久久影视传媒| eeuss国产一区二区三区| 国产精品白丝在线| 在线观看免费成人| 天天影视涩香欲综合网| 日韩免费高清av| 国产九色sp调教91| 国产精品美女久久久久久久久| 99久久精品国产导航| 亚洲午夜三级在线| 欧美一二三在线| 成人午夜免费电影| 亚洲人精品一区| 91精品国产麻豆| 国产成人aaa| 亚洲国产裸拍裸体视频在线观看乱了| 欧美日韩国产区一| 精品一区二区三区不卡| 中文字幕一区不卡| 制服丝袜一区二区三区| 国产精品一区二区久久精品爱涩| ...xxx性欧美| 日韩一区二区高清| 丁香婷婷综合五月| 日韩美女精品在线| 色香色香欲天天天影视综合网| 偷拍日韩校园综合在线| 国产欧美中文在线| 91精品一区二区三区在线观看| 国产精品性做久久久久久| 一区二区三区不卡视频在线观看| 日韩精品在线一区| 一本大道综合伊人精品热热| 奇米777欧美一区二区| 国产日韩欧美精品电影三级在线| 欧美日韩国产首页在线观看| 国产suv精品一区二区6| 无码av中文一区二区三区桃花岛| 久久嫩草精品久久久精品一| 色综合久久综合| 成人精品国产福利| 免费在线成人网| 一区二区三区欧美亚洲| 国产日韩亚洲欧美综合| 91麻豆精品91久久久久同性| 91影视在线播放| 国产伦精一区二区三区| 午夜精品福利久久久| 国产精品超碰97尤物18| 国产欧美日韩在线看| 精品国产一二三| 欧美日韩不卡一区二区| 日本高清无吗v一区| 成人久久视频在线观看| 韩日av一区二区| 免费在线观看视频一区| 日韩在线观看一区二区| 亚洲成人动漫精品| 亚洲另类中文字| 亚洲欧美成aⅴ人在线观看| 国产午夜精品久久| 久久综合给合久久狠狠狠97色69| 4438x亚洲最大成人网| 欧美狂野另类xxxxoooo| 欧美优质美女网站| 欧美三级在线播放| 欧美性猛片aaaaaaa做受| 在线观看不卡视频| 欧美亚洲国产一卡| 在线观看日韩精品| 欧美日韩电影一区| 日韩亚洲欧美在线| 欧美精品一区二区在线观看| 日韩欧美二区三区| 久久综合资源网| 国产精品日产欧美久久久久| 欧美激情综合五月色丁香| 亚洲国产成人在线| 亚洲欧美日韩久久| 亚洲国产精品久久艾草纯爱| 午夜一区二区三区在线观看| 日本午夜一本久久久综合| 看电视剧不卡顿的网站| 国产福利一区二区| 99免费精品视频| 欧美日韩在线播| 久久久久国产免费免费| 国产精品国产自产拍高清av王其| 亚洲精品一二三| 麻豆精品一二三| 99vv1com这只有精品| 欧美婷婷六月丁香综合色| 精品黑人一区二区三区久久| 国产欧美日韩另类视频免费观看| 中文字幕字幕中文在线中不卡视频| 亚洲国产欧美在线| 久久国产精品一区二区| av一区二区三区黑人| 在线电影院国产精品| 国产亚洲女人久久久久毛片| 亚洲男女毛片无遮挡| 美女国产一区二区| av一本久道久久综合久久鬼色| 欧美日本乱大交xxxxx| 国产欧美精品在线观看| 日韩在线卡一卡二| 成人爱爱电影网址| 日韩欧美一级片| 亚洲精品欧美二区三区中文字幕| 久久99久久99小草精品免视看| 成人黄色免费短视频| 日韩色视频在线观看| 亚洲激情图片小说视频| 国产乱色国产精品免费视频| 欧美日本一区二区在线观看| 国产精品国产三级国产普通话三级| 日韩不卡一二三区| 色综合久久久久网| 国产精品国产自产拍高清av | 成人免费看视频| 日韩一区二区视频| 亚洲成人在线免费|