2014-10-03 131 views
0

我想用的FileReader概念這樣圖像轉換爲base64而不上傳

function loadImageFileAsURL() 
{ 
    var filesSelected = document.getElementById("inputFileToLoad").files; 

    if (filesSelected.length > 0) 
    { 
     var fileToLoad = filesSelected[0]; 


     var fileReader = new FileReader(); 

     fileReader.onload = function(fileLoadedEvent) 
     { 
     alert(fileLoadedEvent); 

      document.getElementById("textAreaFileContents").innerHTML = fileLoadedEvent.target.result; 
     }; 

     fileReader.readAsDataURL(fileToLoad); 
    } 
} 

在localStorage的保存圖像在基地64個format.I知道,但問題是,我不想上傳的任何文件。我只想對現有的圖像轉換成base64.Hope有人能幫助它

+0

替換「的document.getElementById( 「textAreaFileContents」)。在nerHTML ='with'localStorage.myImg =' – dandavis 2014-10-03 18:04:12

+0

在畫布上繪製圖像,然後將畫布數據作爲base64。有很多關於它的文章在互聯網 – Regent 2014-10-03 18:05:08

+0

@dandavis謝謝,但如何將其轉換爲base64字符串,而無需上傳圖像 – 2014-10-03 18:42:35

回答

2

沒錯這就是一種關閉可能;)

  1. 創建canvas元素
  2. 載入圖片到它
  3. 運行canvas.toDataURL()的(Base64編碼圖像)
  4. 其保存在本地或任何你想要