我在获取html2pdf.js以便正确给我回调函数以便将其转换为base64字符串方面遇到麻烦。
我已经尝试过了:
html2pdf().from(el).then(function(pdf) {
//pdf is null when I log this...
console.log(pdf);
}).save();
使用从output()
到此的所有其他变体形式:
var pdf = new jsPDF();
html2pdf().from(element).set({ pdf: pdf }).toPdf().save();
无济于事。
我目前在v.0.9.0
上。我真正需要获得的只是base64,因此我可以将其发送回服务器并将其附加到电子邮件中-对我而言,如何完成此操作并不重要,但是我在确定如何使用此功能方面遇到了问题正确回调。
我在github上搜索了文档和issues。
答案 0 :(得分:1)
缺少的是对outputPdf()
方法的调用。您还应该确保已升级到html2pdf插件的最新版本,因为较旧的版本不支持此功能。
您的新代码应如下所示:
html2pdf().from(el).outputPdf().then(function(pdf) {
//This logs the right base64
console.log(btoa(pdf));
});
[outputPdf]将类型和选项发送到jsPDF对象的输出方法,然后 以Promise的形式返回结果(使用.then访问)
仅使用output()
不会返回承诺,必须使用outputPdf()
。