Angularjs 在Phonegap应用程序中下载Highchart图像
我们正在使用Phonegap+Ionic开发一个移动应用程序。我们在应用程序中使用了Highcarts。我们想提供一个功能,在facebook、Whatsapp或Twitter上分享highchart。phonegap不存在共享问题,因为有一个插件可用于此 问题是,当我们想要使用phonegap插件共享任何图像时,我们需要给出图像的路径,Highchart使用SVG显示图表 我尝试过将SVG转换成画布,然后使用phonegap的org.devgeeks.Canvas2ImagePlugin将画布导出,但没有任何效果 如果有人取得了这样的成就,请帮助或分享一些代码Angularjs 在Phonegap应用程序中下载Highchart图像,angularjs,cordova,ionic-framework,phonegap-plugins,hybrid-mobile-app,Angularjs,Cordova,Ionic Framework,Phonegap Plugins,Hybrid Mobile App,我们正在使用Phonegap+Ionic开发一个移动应用程序。我们在应用程序中使用了Highcarts。我们想提供一个功能,在facebook、Whatsapp或Twitter上分享highchart。phonegap不存在共享问题,因为有一个插件可用于此 问题是,当我们想要使用phonegap插件共享任何图像时,我们需要给出图像的路径,Highchart使用SVG显示图表 我尝试过将SVG转换成画布,然后使用phonegap的org.devgeeks.Canvas2ImagePlugin将画布
提前感谢。花费数小时后,我们有了解决方案。希望这也能帮助其他人 (1) 安装Cordova插件“org.devgeeks.Canvas2ImagePlugin” (2) 获取highchart的SVG html
var svg = document.getElementById('chart1').children[0].innerHTML;
(3) 创建一个canvasHTML元素并将该Canvas元素附加到页面的div中
var canvas = document.createElement('canvas');
canvas.width = $window.innerWidth;
canvas.height = 500;
document.getElementById('divID').innerHTML = '';
document.getElementById('divID').appendChild(canvas);
(4) Canvg将把图像添加到画布中
canvg(canvas, svg, { log: true, ignoreMouse: true, ignoreAnimation: true });
(5) 在Cordova插件的帮助下,您可以像这样下载图像
window.canvas2ImagePlugin.saveImageDataToLibrary(
function(path) {
console.log(path);
},
function(err) {
console.log(err);
},
document.getElementById('canvas').getElementsByTagName("canvas")[0]
);
我收到错误“error:Element'html'尚未实现”。请让我知道如何解决这个问题