使用PhoneGap,如何获取从iPhone中的照片库中选择的照片的base64图像数据

Rev*_*jan 7 base64 camera photolibrary cordova

使用PhoneGap(Cordova),我试图获取从照片库中选择的照片的base64图像数据.

我可以这样做..当从相机拍摄照片时,使用下面的Cordova代码片段.

    navigator.camera.getPicture(onSuccess, onFail, { quality: 50,
    destinationType: Camera.DestinationType.DATA_URL
 }); 

function onSuccess(imageData) {
    var image = document.getElementById('myImage');
    image.src = "data:image/jpeg;base64," + imageData;
}

function onFail(message) {
    alert('Failed because: ' + message);
}
Run Code Online (Sandbox Code Playgroud)

但是,当从库中选择照片时,我该怎么做才能获得base64图像数据?

Rev*_*jan 14

function encodeImageUri(imageUri)
{
     var c=document.createElement('canvas');
     var ctx=c.getContext("2d");
     var img=new Image();
     img.onload = function(){
       c.width=this.width;
       c.height=this.height;
       ctx.drawImage(img, 0,0);
     };
     img.src=imageUri;
     var dataURL = c.toDataURL("image/jpeg");
     return dataURL;
}
Run Code Online (Sandbox Code Playgroud)

我在PhoneGap中没有解决方案.所以我需要的是用户从他们的照片库中选择的图像的base64格式.所以我把那个图像放在画布上,toDataUrl()给了我非常的格式:-)