1

我正在尝试使用

chart.exportChart({
  type: 'application/pdf',
  filename: 'my-pdf'
});

在 Phonegap 应用程序中没有成功,尽管在浏览器中一切正常。

我的问题:

我想在 iOS 电子邮件客户端中将呈现的图表附加为 pdf/png/jpeg。如何使用chart.exportChart或任何其他方式将下载的内容保存到 iOS 应用程序沙箱?filename我应该在方法的键中给出 App Sandbox 路径chart.exportChart吗?

这是我试过的:(我在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' is not a function

PS:我尝试的方式是一种绝望的行为:(

4

1 回答 1

1

可以这样——

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转换为图像并将二进制文件保存在App Sandbox 中。

canvg脚本可在此处获得,此处也应包含在标记中。

于 2013-02-21T11:23:24.690 回答