嘿我正在使用Phonegap开发一个可以使用地理位置和时间戳标记图像的应用程序。我已经能够通过将图像编辑为画布来标记图像。现在我需要将已编辑的图像作为新图像保存到设备照片库/库中,或者替换选择要标记的图像。使用phonegap的目的是应用程序必须跨平台运行。有什么办法可以实现吗?
以下代码将图像编辑为画布,并将图像转换回数据URI。
var canvas = document.getElementById("canvasPnl");
var context = canvas.getContext("2d");
var imageObj = new Image();
imageObj.onload = function(){
context.drawImage(imageObj,0,0,300,300 );
context.fillStyle="#FFFFFF";
context.fillText('Latitude: '+ lat.toString()+' Longitude: '+ lon.toString(), 0, 10);
context.fillText(new Date(), 0, 20);
};
imageObj.src=imageURI;
dataURI= canvas.toDataURL();
可以将其转换为图像对象并保存到手机库???
答案 0 :(得分:2)
答案 1 :(得分:1)
我认为您不能仅使用JavaScript将图像保存在图库中,但您可以将用户发送到图像或显示图像,用户可以手动保存图像。
答案 2 :(得分:0)
也许你可以尝试我为IOS编写的插件(如果你想将canvas元素保存到photogallery,你可以使用下面的downloadWithUrl方法获得画布的dataURI)。希望它适合你。
这是git链接:https://github.com/Nomia/ImgDownloader
简短示例:
document.addEventListener("deviceready",onDeviceReady);
//google logo url
url = 'https://www.google.com/images/srpr/logo11w.png';
onDeviceReady = function(){
cordova.plugins.imgDownloader.downloadWithUrl(url,function(){
alert("success");
},function(){
alert("error");
});
}
//also you can try dataUri like: 1px gif
//url = 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7'
您还可以使用下载方法
将本地文件保存到图库