无法将jpg / jpeg图像转换为Cordova 4.0 ios中的Base64

时间:2015-04-07 05:37:22

标签: javascript ios cordova html5-canvas

我正在开发一个cordova 4.0.0 ios项目,该项目涉及将图像从电话库转换为Base64图像并将其上传到服务器。

我正在使用html5 canvas方法获取base64数据,如下所示:

   var img = new Image();
   img.src = URL;
   img.onload = function () {
   var canvas = document.createElement("canvas");
   canvas.width = this.width;
   canvas.height = this.height;         
   var ctx = canvas.getContext("2d");
   ctx.drawImage(this, 0, 0);
   var dataURL = canvas.toDataURL("image/jpeg",0.5);
   alert("dataURL:" + dataURL);

以上代码适用于png图像,但是当我选择jpg图像进行转换时,我会从警报中获取输出,如下所示:

“dataURL:data:”

有人可以帮帮我吗。

1 个答案:

答案 0 :(得分:0)

您可以尝试使用canvas.toDataURL();直接进行无转换并将PNG作为输出

var jpegUrl = canvas.toDataURL("image/jpeg"); //for JPEG output
var pngUrl = canvas.toDataURL(); // for PNG output