2016-09-15 6 views
1

この機能を使用して、私の電話ギャラリーから画像のURIを取得できます。cordova-plugin-cameraを使用してURI画像をbase64形式に変換する

function getPhoto() { 
     navigator.camera.getPicture(onPhotoSuccess, onFail, 
     {quality: 50, 
     sourceType: pictureSource.SAVEDPHOTOALBUM, 
     destinationType: destinationType.FILE_URI, 
     }); 
    } 

function onPhotoSuccess(imageUri) { 
     var smallImage = document.getElementById('smallImage'); 
     smallImage.style.display = 'block'; 
     smallImage.src = imageUri; 

     console.log(imageUri); 
    } 

コンソール出力は次のようなURIを示している。 content://com.android.providers.media.documents/document/image%3A76755

はそれが<canvas>を使用してBase64形式としないようにimageUriを変換することは可能ですか? 私はAndriod電話を使用しています。これはコードバアプリです。

+0

にあなたのイメージを与えるだけDATA_URLFILE_URIを変更、またはFILE_URI NATIVE_URIを使用してください。それはカメラで動作します。 data_uriを使用しても問題は解決されません – vbharath

答えて

2

使用destinationType: Camera.DestinationType.DATA_URL

docsから:

戻りbase64でエンコードされた文字列。 DATA_URLは大量のメモリを必要とするため、アプリがクラッシュしたり、メモリ不足が発生する可能性があります。

1

はい、可能な場合これはsavedPhotoAlbumから写真にアクセスしているときに、同じ問題を観察したbase64形式

+0

文書自体には、メモリの問題のために悪い習慣があります。 – andreszs

関連する問題