2016-05-12 23 views
0

イメージを一部のオンラインサービスに文字列としてアップロードするアプリを作成しています。デバイスのイメージのURIのみがあります。イメージをロードして変換するにはどうすればよいですかbase64文字列に変換し、後でそれをアプリケーションで表示しますか?イメージをBase64からエンコードしてデコードする

答えて

0

使用FileReader

FileReaderのオブジェクトは、Webアプリケーションが非同期ファイル(または生データ・バッファ)の内容を読み取ることができます読み取るために、ファイルやデータを指定し、ファイルまたはBLOBオブジェクトを使用して、ユーザーのコンピュータに保存されています。

function convertFileToDataURLviaFileReader(url, callback){ 
    var xhr = new XMLHttpRequest(); 
    xhr.responseType = 'blob'; 
    xhr.onload = function() { 
     var reader = new FileReader(); 
     reader.onloadend = function() { 
      callback(reader.result); 
     } 
     reader.readAsDataURL(xhr.response); 
    }; 
    xhr.open('GET', url); 
    xhr.send(); 
} 

その後base64データを取得し、それを呼び出す:マークアップ

convertFileToDataURLviaFileReader('yourUrlHere',function(base64Data){ 
    //do something with base64Date 

    //show image 
    $scope.imageSrc=base64Data; 
}); 

functionを作成することにより

<image ng-src="imageSrc" /> 
+0

をそれは完全に働いたありがとう –

関連する問題