我试图将我的页面转换为PDF。
我有两个页面被转换成base64编码图像,然后使用jsPDF添加到PDF中。它工作正常。
我的问题是我想下面的代码等待domtoimage函数在保存之前进行处理。
var doc = new jsPDF();
//First
domtoimage.toPng(document.getElementById('page'))
.then(function (dataUrl) {
doc.addImage(dataUrl, 'png', 15, 10, 180, 280);
doc.addPage();
});
//Second
domtoimage.toPng(document.getElementById('page2'))
.then(function (dataUrl) {
doc.addImage(dataUrl, 'png', 15, 10, 180, 280); });
//Third
doc.save("file.pdf");
我发现这个解决方案:https://api.jquery.com/jquery.when/但我不熟悉的诺言,我不知道如何使它发挥作用。
谢谢你的帮助。
也许'.delay(ms)'可以提供帮助。否则,你可以使用'setTimeout()'函数。有关延迟的更多信息,请访问https://api.jquery.com/delay/ – Jer
'.delay'仅适用于效果队列(例如fadeIn/slideDown)。这不是一般的“等待特定的时间”。 –