我正在尝试使用
chart.exportChart({
type: 'application/pdf',
filename: 'my-pdf'
});
在Phonegap应用程序中没有成功,尽管在浏览器中一切都很好。
我的问题:
我想在iOS电子邮件客户端中将渲染的图表附加为pdf/png/jpeg。如何使用chart.exportChart
或任何其他方式将下载的内容保存到iOS应用程序沙盒?我应该在chart.exportChart
方法的filename
密钥中给出应用程序沙盒路径吗?
这是我尝试过的:(我在cordova-1.6.1.js上)
window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFileSys, fail);
function fail() {
}
function gotFileSys(fileSystem) {
chart.exportChart({
type: 'application/pdf',
filename: fileSystem.root.fullPath+"/my-pdf"
});
}
上面的不起作用,控制台说-
[INFO]成功回调时出错:File1=TypeError:"undefined"为不是功能
PS:我尝试的方式是绝望的行为:(
可以这样做-
canvg(document.getElementById('canvas'), chart.getSVG());
var canvas = document.getElementById("canvas") ;
var img = canvas.toDataURL("image/png").replace("data:image/png;base64,", ""); //img is base64 encoded and can be persisted in the App Sandbox.
需要编写一个PhoneGap插件,并使用Matt的Category将base64编码的img
转换为图像,并将二进制文件保存在应用程序沙盒中。
canvg脚本在此处可用,此处也应包含在标记中。