从相机胶卷检索后将图像加载到画布(cordova)

时间:2017-01-12 22:10:58

标签: javascript cordova

我从iOS相机胶卷中取出一个文件,该文件以这种形式返回一个uri:

file:///var/mobile/Containers/Data/Application/90849385-6FC7-4C4E-8220-7585312C3DFB/tmp/filename.jpg

我从这个函数收到了这个uri:

function openFilePicker(selection) {

    var srcType = Camera.PictureSourceType.SAVEDPHOTOALBUM;
    var options = setOptions(srcType);
    var func = createNewFileEntry;

    navigator.camera.getPicture(function cameraSuccess(imageUri) {

    loadToCanvas(imageUri);

    }, function cameraError(error) {
    console.debug("Unable to obtain picture: " + error, "app");

    }, options);
}

并将其传递给此函数:

function loadToCanvas(path) {
    console.log(path);

    var ctx = document.getElementById('image');
    ctx = ctx.getContext('2d');
    var hero = new Image();   

    hero.onload = function () {
        ctx.drawImage(hero, 0, 0);
    }; 

    hero.src = path;
}

图片未在画布中显示,但在evothings控制台中没有错误。我错过了什么?当然,如果cordova有办法将这个uri归还给我,那么我应该可以访问该文件,是吗?谢谢!

0 个答案:

没有答案