Nativescript TypeScript jsPDF

时间:2018-10-13 03:02:25

标签: nativescript jspdf nativescript-plugin

我当前正在使用nativescript / typescript中的jsPDF创建pdf文件,

我需要有关如何在内部存储中保存生成的pdf文件的帮助。

保存doc.save('filename.pdf')这行代码让我很困惑,我尝试搜索文件但没有发现。

这是我的代码:

    var doc = new jsPDF('p','pt');
    var fontSize = 16;
    var offsetY = 10;//4.797777777777778;
    var lineHeight = 20;//6.49111111111111;

    doc.setFontSize(fontSize);
    doc.setFontType("bold");
    doc.text(20, 10 + lineHeight * 0 + offsetY, 'My Details ');
    doc.setFontSize(14);
    doc.setFontType("bold");
    doc.text(20, 30 + lineHeight * 1 + offsetY, 'Profiles');
    doc.text(20, 30 + lineHeight * 2 + offsetY, '------------------------------');
    doc.setFontType("normal");
    doc.setFontSize(12);
    doc.text(20, 30 + lineHeight * 3 + offsetY, ' First Name :');
    doc.text(20, 30 + lineHeight * 4 + offsetY, 'Last Name:');

    doc.save('fileName.pdf');
  1. 如何自动执行电子邮件服务,而无需使用电子邮件应用程序(安装在手机中)手动发送电子邮件给收件人。为此,我正在使用nativescript-email。

非常感谢您的帮助

预先感谢

1 个答案:

答案 0 :(得分:0)

  1. JSPdf旨在在Web浏览器中工作。 save方法将尝试打开一个新的浏览器窗口并加载base64 PDF字符串,该字符串在NativeScript环境中不起作用,因为它不是浏览器,而是您的本机应用程序。因此,您将不得不使用文件系统模块将返回的JSPdf库返回的数据手动写入文件。

  2. 根本无法做到这一点。没有电子邮件应用程序允许您在没有用户注意的情况下在后台发送电子邮件。如果要在后台发送电子邮件,则必须点击服务器,然后让服务器将电子邮件发送给收件人。