首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取ImageUri的文件内容

获取ImageUri的文件内容
EN

Stack Overflow用户
提问于 2013-05-15 15:31:57
回答 2查看 1.3K关注 0票数 2

我想更新一个图片从我的手机到解析,我们正在努力与这个简单的功能,因为我们不能转换我们的ImageUri到一个真正的文件与Phonegap (为了上传到我们的解析服务器),我们正在使用波纹来模拟手机的行为。

我们已经尝试了这段代码:

代码语言:javascript
复制
var reader = new FileReader();


reader.onloadend = function(evt) {

console.log("read success");
console.log(evt.target.result);
evt.target.result;
};
reader.readAsText(user.myPicture);

但是我得到了这个错误:TypeError: Object #<Console> has no method 'warning'

似乎phonegap的FileReader不喜欢我从navigator.camera.getPicture()获得的那种URI。

代码语言:javascript
复制
$scope.getPicture = function(){

            navigator.camera.getPicture(onSuccess, onFail,
                //Options => http://docs.phonegap.com/en/2.6.0/cordova_camera_camera.md.html#Camera
                { quality: 50,
                    destinationType:Camera.DestinationType.FILE_URI,
                    encodingType: Camera.EncodingType.JPEG,
                    sourceType : Camera.PictureSourceType.PHOTOLIBRARY ,//CAMERA,
                    targetWidth: 100,
                    targetHeight: 100
                });
            function onSuccess(imageURI) {
                var image = document.getElementById('preview');
                image.src = imageURI;
                $scope.myPicture = image.src;

//                $scope.$apply(function() {
//                    ctrl.$setViewValue(image.src);
//                });
            }

            function onFail(message) {
                alert('Failed because: ' + message);
                ctrl.$setValidity('Failed because: ' + message, false);
            }

        };

有没有其他方法可以在不使用JQuery $.get()的情况下获取文件?

有一个类似的帖子here也有同样的问题

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-11 22:33:31

我想你会喜欢我在你链接的问题上得到的同样的答案。

with the info in this post。。非常感谢Raymond Camden!

代码语言:javascript
复制
function gotPic(data) {

window.resolveLocalFileSystemURI(data, function(entry) {

var reader = new FileReader();

reader.onloadend = function(evt) {
    var byteArray = new Uint8Array(evt.target.result);
    var output = new Array( byteArray.length );
    var i = 0;
    var n = output.length;
    while( i < n ) {
        output[i] = byteArray[i];
        i++;
    }                
    var parseFile = new Parse.File("mypic.jpg", output);

    parseFile.save().then(function(ob) {
            navigator.notification.alert("Got it!", null);
            console.log(JSON.stringify(ob));
        }, function(error) {
            console.log("Error");
            console.log(error);
        });

}

reader.onerror = function(evt) {
      console.log('read error');
      console.log(JSON.stringify(evt));
  }

entry.file(function(s) {
    reader.readAsArrayBuffer(s);
}, function(e) {
    console.log('ee');
});

});
}
票数 3
EN

Stack Overflow用户

发布于 2013-05-15 23:22:24

我不确定能不能理解。您想要保存图片,还是只显示它,或者其他什么?

  • 为了保存图片,有人写了一个插件。你可以在这里找到:base64ToPNG
  • To显示图片:

image.src = "data:image/jpeg;base64,“+ imageURI

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16559254

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档