我正在进行一个cordova 4.0.0 ios项目,该项目涉及将手机图库中的图像转换为Base64图像并上传到服务器。
我使用html5画布方法获得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:数据:"
有人能帮我吗?
您可以尝试使用canvas.toDataURL();直接进行转换,并将PNG作为输出
var jpegUrl = canvas.toDataURL("image/jpeg"); //for JPEG output
var pngUrl = canvas.toDataURL(); // for PNG output